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/v3beta1"
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/v3beta1"
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:v3beta1"
81const apiName = "dialogflow"
82const apiVersion = "v3beta1"
83const basePath = "https://dialogflow.googleapis.com/"
84const mtlsBasePath = "https://dialogflow.mtls.googleapis.com/"
85
86// OAuth2 scopes used by this API.
87const (
88	// See, edit, configure, and delete your Google Cloud data and see the
89	// email address for your Google Account.
90	CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
91
92	// View, manage and query your Dialogflow agents
93	DialogflowScope = "https://www.googleapis.com/auth/dialogflow"
94)
95
96// NewService creates a new Service.
97func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
98	scopesOption := option.WithScopes(
99		"https://www.googleapis.com/auth/cloud-platform",
100		"https://www.googleapis.com/auth/dialogflow",
101	)
102	// NOTE: prepend, so we don't override user-specified scopes.
103	opts = append([]option.ClientOption{scopesOption}, opts...)
104	opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
105	opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
106	client, endpoint, err := htransport.NewClient(ctx, opts...)
107	if err != nil {
108		return nil, err
109	}
110	s, err := New(client)
111	if err != nil {
112		return nil, err
113	}
114	if endpoint != "" {
115		s.BasePath = endpoint
116	}
117	return s, nil
118}
119
120// New creates a new Service. It uses the provided http.Client for requests.
121//
122// Deprecated: please use NewService instead.
123// To provide a custom HTTP client, use option.WithHTTPClient.
124// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
125func New(client *http.Client) (*Service, error) {
126	if client == nil {
127		return nil, errors.New("client is nil")
128	}
129	s := &Service{client: client, BasePath: basePath}
130	s.Projects = NewProjectsService(s)
131	return s, nil
132}
133
134type Service struct {
135	client    *http.Client
136	BasePath  string // API endpoint base URL
137	UserAgent string // optional additional User-Agent fragment
138
139	Projects *ProjectsService
140}
141
142func (s *Service) userAgent() string {
143	if s.UserAgent == "" {
144		return googleapi.UserAgent
145	}
146	return googleapi.UserAgent + " " + s.UserAgent
147}
148
149func NewProjectsService(s *Service) *ProjectsService {
150	rs := &ProjectsService{s: s}
151	rs.Locations = NewProjectsLocationsService(s)
152	rs.Operations = NewProjectsOperationsService(s)
153	return rs
154}
155
156type ProjectsService struct {
157	s *Service
158
159	Locations *ProjectsLocationsService
160
161	Operations *ProjectsOperationsService
162}
163
164func NewProjectsLocationsService(s *Service) *ProjectsLocationsService {
165	rs := &ProjectsLocationsService{s: s}
166	rs.Agents = NewProjectsLocationsAgentsService(s)
167	rs.Operations = NewProjectsLocationsOperationsService(s)
168	rs.SecuritySettings = NewProjectsLocationsSecuritySettingsService(s)
169	return rs
170}
171
172type ProjectsLocationsService struct {
173	s *Service
174
175	Agents *ProjectsLocationsAgentsService
176
177	Operations *ProjectsLocationsOperationsService
178
179	SecuritySettings *ProjectsLocationsSecuritySettingsService
180}
181
182func NewProjectsLocationsAgentsService(s *Service) *ProjectsLocationsAgentsService {
183	rs := &ProjectsLocationsAgentsService{s: s}
184	rs.EntityTypes = NewProjectsLocationsAgentsEntityTypesService(s)
185	rs.Environments = NewProjectsLocationsAgentsEnvironmentsService(s)
186	rs.Flows = NewProjectsLocationsAgentsFlowsService(s)
187	rs.Intents = NewProjectsLocationsAgentsIntentsService(s)
188	rs.Sessions = NewProjectsLocationsAgentsSessionsService(s)
189	rs.TestCases = NewProjectsLocationsAgentsTestCasesService(s)
190	rs.Webhooks = NewProjectsLocationsAgentsWebhooksService(s)
191	return rs
192}
193
194type ProjectsLocationsAgentsService struct {
195	s *Service
196
197	EntityTypes *ProjectsLocationsAgentsEntityTypesService
198
199	Environments *ProjectsLocationsAgentsEnvironmentsService
200
201	Flows *ProjectsLocationsAgentsFlowsService
202
203	Intents *ProjectsLocationsAgentsIntentsService
204
205	Sessions *ProjectsLocationsAgentsSessionsService
206
207	TestCases *ProjectsLocationsAgentsTestCasesService
208
209	Webhooks *ProjectsLocationsAgentsWebhooksService
210}
211
212func NewProjectsLocationsAgentsEntityTypesService(s *Service) *ProjectsLocationsAgentsEntityTypesService {
213	rs := &ProjectsLocationsAgentsEntityTypesService{s: s}
214	return rs
215}
216
217type ProjectsLocationsAgentsEntityTypesService struct {
218	s *Service
219}
220
221func NewProjectsLocationsAgentsEnvironmentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsService {
222	rs := &ProjectsLocationsAgentsEnvironmentsService{s: s}
223	rs.ContinuousTestResults = NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s)
224	rs.Experiments = NewProjectsLocationsAgentsEnvironmentsExperimentsService(s)
225	rs.Sessions = NewProjectsLocationsAgentsEnvironmentsSessionsService(s)
226	return rs
227}
228
229type ProjectsLocationsAgentsEnvironmentsService struct {
230	s *Service
231
232	ContinuousTestResults *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService
233
234	Experiments *ProjectsLocationsAgentsEnvironmentsExperimentsService
235
236	Sessions *ProjectsLocationsAgentsEnvironmentsSessionsService
237}
238
239func NewProjectsLocationsAgentsEnvironmentsContinuousTestResultsService(s *Service) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService {
240	rs := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService{s: s}
241	return rs
242}
243
244type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService struct {
245	s *Service
246}
247
248func NewProjectsLocationsAgentsEnvironmentsExperimentsService(s *Service) *ProjectsLocationsAgentsEnvironmentsExperimentsService {
249	rs := &ProjectsLocationsAgentsEnvironmentsExperimentsService{s: s}
250	return rs
251}
252
253type ProjectsLocationsAgentsEnvironmentsExperimentsService struct {
254	s *Service
255}
256
257func NewProjectsLocationsAgentsEnvironmentsSessionsService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsService {
258	rs := &ProjectsLocationsAgentsEnvironmentsSessionsService{s: s}
259	rs.EntityTypes = NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s)
260	return rs
261}
262
263type ProjectsLocationsAgentsEnvironmentsSessionsService struct {
264	s *Service
265
266	EntityTypes *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService
267}
268
269func NewProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService {
270	rs := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService{s: s}
271	return rs
272}
273
274type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService struct {
275	s *Service
276}
277
278func NewProjectsLocationsAgentsFlowsService(s *Service) *ProjectsLocationsAgentsFlowsService {
279	rs := &ProjectsLocationsAgentsFlowsService{s: s}
280	rs.Pages = NewProjectsLocationsAgentsFlowsPagesService(s)
281	rs.TransitionRouteGroups = NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s)
282	rs.Versions = NewProjectsLocationsAgentsFlowsVersionsService(s)
283	return rs
284}
285
286type ProjectsLocationsAgentsFlowsService struct {
287	s *Service
288
289	Pages *ProjectsLocationsAgentsFlowsPagesService
290
291	TransitionRouteGroups *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService
292
293	Versions *ProjectsLocationsAgentsFlowsVersionsService
294}
295
296func NewProjectsLocationsAgentsFlowsPagesService(s *Service) *ProjectsLocationsAgentsFlowsPagesService {
297	rs := &ProjectsLocationsAgentsFlowsPagesService{s: s}
298	return rs
299}
300
301type ProjectsLocationsAgentsFlowsPagesService struct {
302	s *Service
303}
304
305func NewProjectsLocationsAgentsFlowsTransitionRouteGroupsService(s *Service) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService {
306	rs := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsService{s: s}
307	return rs
308}
309
310type ProjectsLocationsAgentsFlowsTransitionRouteGroupsService struct {
311	s *Service
312}
313
314func NewProjectsLocationsAgentsFlowsVersionsService(s *Service) *ProjectsLocationsAgentsFlowsVersionsService {
315	rs := &ProjectsLocationsAgentsFlowsVersionsService{s: s}
316	return rs
317}
318
319type ProjectsLocationsAgentsFlowsVersionsService struct {
320	s *Service
321}
322
323func NewProjectsLocationsAgentsIntentsService(s *Service) *ProjectsLocationsAgentsIntentsService {
324	rs := &ProjectsLocationsAgentsIntentsService{s: s}
325	return rs
326}
327
328type ProjectsLocationsAgentsIntentsService struct {
329	s *Service
330}
331
332func NewProjectsLocationsAgentsSessionsService(s *Service) *ProjectsLocationsAgentsSessionsService {
333	rs := &ProjectsLocationsAgentsSessionsService{s: s}
334	rs.EntityTypes = NewProjectsLocationsAgentsSessionsEntityTypesService(s)
335	return rs
336}
337
338type ProjectsLocationsAgentsSessionsService struct {
339	s *Service
340
341	EntityTypes *ProjectsLocationsAgentsSessionsEntityTypesService
342}
343
344func NewProjectsLocationsAgentsSessionsEntityTypesService(s *Service) *ProjectsLocationsAgentsSessionsEntityTypesService {
345	rs := &ProjectsLocationsAgentsSessionsEntityTypesService{s: s}
346	return rs
347}
348
349type ProjectsLocationsAgentsSessionsEntityTypesService struct {
350	s *Service
351}
352
353func NewProjectsLocationsAgentsTestCasesService(s *Service) *ProjectsLocationsAgentsTestCasesService {
354	rs := &ProjectsLocationsAgentsTestCasesService{s: s}
355	rs.Results = NewProjectsLocationsAgentsTestCasesResultsService(s)
356	return rs
357}
358
359type ProjectsLocationsAgentsTestCasesService struct {
360	s *Service
361
362	Results *ProjectsLocationsAgentsTestCasesResultsService
363}
364
365func NewProjectsLocationsAgentsTestCasesResultsService(s *Service) *ProjectsLocationsAgentsTestCasesResultsService {
366	rs := &ProjectsLocationsAgentsTestCasesResultsService{s: s}
367	return rs
368}
369
370type ProjectsLocationsAgentsTestCasesResultsService struct {
371	s *Service
372}
373
374func NewProjectsLocationsAgentsWebhooksService(s *Service) *ProjectsLocationsAgentsWebhooksService {
375	rs := &ProjectsLocationsAgentsWebhooksService{s: s}
376	return rs
377}
378
379type ProjectsLocationsAgentsWebhooksService struct {
380	s *Service
381}
382
383func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService {
384	rs := &ProjectsLocationsOperationsService{s: s}
385	return rs
386}
387
388type ProjectsLocationsOperationsService struct {
389	s *Service
390}
391
392func NewProjectsLocationsSecuritySettingsService(s *Service) *ProjectsLocationsSecuritySettingsService {
393	rs := &ProjectsLocationsSecuritySettingsService{s: s}
394	return rs
395}
396
397type ProjectsLocationsSecuritySettingsService struct {
398	s *Service
399}
400
401func NewProjectsOperationsService(s *Service) *ProjectsOperationsService {
402	rs := &ProjectsOperationsService{s: s}
403	return rs
404}
405
406type ProjectsOperationsService struct {
407	s *Service
408}
409
410// GoogleCloudDialogflowCxV3AudioInput: Represents the natural speech
411// audio to be processed.
412type GoogleCloudDialogflowCxV3AudioInput struct {
413	// Audio: The natural language speech audio to be processed. A single
414	// request can contain up to 1 minute of speech audio data. The
415	// transcribed text cannot contain more than 256 bytes. For
416	// non-streaming audio detect intent, both `config` and `audio` must be
417	// provided. For streaming audio detect intent, `config` must be
418	// provided in the first request and `audio` must be provided in all
419	// following requests.
420	Audio string `json:"audio,omitempty"`
421
422	// Config: Required. Instructs the speech recognizer how to process the
423	// speech audio.
424	Config *GoogleCloudDialogflowCxV3InputAudioConfig `json:"config,omitempty"`
425
426	// ForceSendFields is a list of field names (e.g. "Audio") to
427	// unconditionally include in API requests. By default, fields with
428	// empty or default values are omitted from API requests. However, any
429	// non-pointer, non-interface field appearing in ForceSendFields will be
430	// sent to the server regardless of whether the field is empty or not.
431	// This may be used to include empty fields in Patch requests.
432	ForceSendFields []string `json:"-"`
433
434	// NullFields is a list of field names (e.g. "Audio") to include in API
435	// requests with the JSON null value. By default, fields with empty
436	// values are omitted from API requests. However, any field with an
437	// empty value appearing in NullFields will be sent to the server as
438	// null. It is an error if a field in this list has a non-empty value.
439	// This may be used to include null fields in Patch requests.
440	NullFields []string `json:"-"`
441}
442
443func (s *GoogleCloudDialogflowCxV3AudioInput) MarshalJSON() ([]byte, error) {
444	type NoMethod GoogleCloudDialogflowCxV3AudioInput
445	raw := NoMethod(*s)
446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
447}
448
449// GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata: Metadata returned
450// for the TestCases.BatchRunTestCases long running operation.
451type GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata struct {
452	// Errors: The test errors.
453	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
454
455	// ForceSendFields is a list of field names (e.g. "Errors") to
456	// unconditionally include in API requests. By default, fields with
457	// empty or default values are omitted from API requests. However, any
458	// non-pointer, non-interface field appearing in ForceSendFields will be
459	// sent to the server regardless of whether the field is empty or not.
460	// This may be used to include empty fields in Patch requests.
461	ForceSendFields []string `json:"-"`
462
463	// NullFields is a list of field names (e.g. "Errors") to include in API
464	// requests with the JSON null value. By default, fields with empty
465	// values are omitted from API requests. However, any field with an
466	// empty value appearing in NullFields will be sent to the server as
467	// null. It is an error if a field in this list has a non-empty value.
468	// This may be used to include null fields in Patch requests.
469	NullFields []string `json:"-"`
470}
471
472func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
473	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesMetadata
474	raw := NoMethod(*s)
475	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
476}
477
478// GoogleCloudDialogflowCxV3BatchRunTestCasesResponse: The response
479// message for TestCases.BatchRunTestCases.
480type GoogleCloudDialogflowCxV3BatchRunTestCasesResponse struct {
481	// Results: The test case results. The detailed conversation turns are
482	// empty in this response.
483	Results []*GoogleCloudDialogflowCxV3TestCaseResult `json:"results,omitempty"`
484
485	// ForceSendFields is a list of field names (e.g. "Results") to
486	// unconditionally include in API requests. By default, fields with
487	// empty or default values are omitted from API requests. However, any
488	// non-pointer, non-interface field appearing in ForceSendFields will be
489	// sent to the server regardless of whether the field is empty or not.
490	// This may be used to include empty fields in Patch requests.
491	ForceSendFields []string `json:"-"`
492
493	// NullFields is a list of field names (e.g. "Results") to include in
494	// API requests with the JSON null value. By default, fields with empty
495	// values are omitted from API requests. However, any field with an
496	// empty value appearing in NullFields will be sent to the server as
497	// null. It is an error if a field in this list has a non-empty value.
498	// This may be used to include null fields in Patch requests.
499	NullFields []string `json:"-"`
500}
501
502func (s *GoogleCloudDialogflowCxV3BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
503	type NoMethod GoogleCloudDialogflowCxV3BatchRunTestCasesResponse
504	raw := NoMethod(*s)
505	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
506}
507
508// GoogleCloudDialogflowCxV3ContinuousTestResult: Represents a result
509// from running a test case in an agent environment.
510type GoogleCloudDialogflowCxV3ContinuousTestResult struct {
511	// Name: The resource name for the continuous test result. Format:
512	// `projects//locations//agents//environments//continuousTestResults/`.
513	Name string `json:"name,omitempty"`
514
515	// Result: The result of this continuous test run, i.e. whether all the
516	// tests in this continuous test run pass or not.
517	//
518	// Possible values:
519	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
520	// be used.
521	//   "PASSED" - All the tests passed.
522	//   "FAILED" - At least one test did not pass.
523	Result string `json:"result,omitempty"`
524
525	// RunTime: Time when the continuous testing run starts.
526	RunTime string `json:"runTime,omitempty"`
527
528	// TestCaseResults: A list of individual test case results names in this
529	// continuous test run.
530	TestCaseResults []string `json:"testCaseResults,omitempty"`
531
532	// ForceSendFields is a list of field names (e.g. "Name") to
533	// unconditionally include in API requests. By default, fields with
534	// empty or default values are omitted from API requests. However, any
535	// non-pointer, non-interface field appearing in ForceSendFields will be
536	// sent to the server regardless of whether the field is empty or not.
537	// This may be used to include empty fields in Patch requests.
538	ForceSendFields []string `json:"-"`
539
540	// NullFields is a list of field names (e.g. "Name") to include in API
541	// requests with the JSON null value. By default, fields with empty
542	// values are omitted from API requests. However, any field with an
543	// empty value appearing in NullFields will be sent to the server as
544	// null. It is an error if a field in this list has a non-empty value.
545	// This may be used to include null fields in Patch requests.
546	NullFields []string `json:"-"`
547}
548
549func (s *GoogleCloudDialogflowCxV3ContinuousTestResult) MarshalJSON() ([]byte, error) {
550	type NoMethod GoogleCloudDialogflowCxV3ContinuousTestResult
551	raw := NoMethod(*s)
552	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
553}
554
555// GoogleCloudDialogflowCxV3ConversationTurn: One interaction between a
556// human and virtual agent. The human provides some input and the
557// virtual agent provides a response.
558type GoogleCloudDialogflowCxV3ConversationTurn struct {
559	// UserInput: The user input.
560	UserInput *GoogleCloudDialogflowCxV3ConversationTurnUserInput `json:"userInput,omitempty"`
561
562	// VirtualAgentOutput: The virtual agent output.
563	VirtualAgentOutput *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
564
565	// ForceSendFields is a list of field names (e.g. "UserInput") to
566	// unconditionally include in API requests. By default, fields with
567	// empty or default values are omitted from API requests. However, any
568	// non-pointer, non-interface field appearing in ForceSendFields will be
569	// sent to the server regardless of whether the field is empty or not.
570	// This may be used to include empty fields in Patch requests.
571	ForceSendFields []string `json:"-"`
572
573	// NullFields is a list of field names (e.g. "UserInput") to include in
574	// API requests with the JSON null value. By default, fields with empty
575	// values are omitted from API requests. However, any field with an
576	// empty value appearing in NullFields will be sent to the server as
577	// null. It is an error if a field in this list has a non-empty value.
578	// This may be used to include null fields in Patch requests.
579	NullFields []string `json:"-"`
580}
581
582func (s *GoogleCloudDialogflowCxV3ConversationTurn) MarshalJSON() ([]byte, error) {
583	type NoMethod GoogleCloudDialogflowCxV3ConversationTurn
584	raw := NoMethod(*s)
585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
586}
587
588// GoogleCloudDialogflowCxV3ConversationTurnUserInput: The input from
589// the human user.
590type GoogleCloudDialogflowCxV3ConversationTurnUserInput struct {
591	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
592	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
593
594	// InjectedParameters: Parameters that need to be injected into the
595	// conversation during intent detection.
596	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
597
598	// Input: Supports text input, event input, dtmf input in the test case.
599	Input *GoogleCloudDialogflowCxV3QueryInput `json:"input,omitempty"`
600
601	// IsWebhookEnabled: If webhooks should be allowed to trigger in
602	// response to the user utterance. Often if parameters are injected,
603	// webhooks should not be enabled.
604	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
605
606	// ForceSendFields is a list of field names (e.g.
607	// "EnableSentimentAnalysis") to unconditionally include in API
608	// requests. By default, fields with empty or default values are omitted
609	// from API requests. However, any non-pointer, non-interface field
610	// appearing in ForceSendFields will be sent to the server regardless of
611	// whether the field is empty or not. This may be used to include empty
612	// fields in Patch requests.
613	ForceSendFields []string `json:"-"`
614
615	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
616	// to include in API requests with the JSON null value. By default,
617	// fields with empty values are omitted from API requests. However, any
618	// field with an empty value appearing in NullFields will be sent to the
619	// server as null. It is an error if a field in this list has a
620	// non-empty value. This may be used to include null fields in Patch
621	// requests.
622	NullFields []string `json:"-"`
623}
624
625func (s *GoogleCloudDialogflowCxV3ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
626	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnUserInput
627	raw := NoMethod(*s)
628	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
629}
630
631// GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput: The
632// output from the virtual agent.
633type GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput struct {
634	// CurrentPage: The Page on which the utterance was spoken. Only name
635	// and displayName will be set.
636	CurrentPage *GoogleCloudDialogflowCxV3Page `json:"currentPage,omitempty"`
637
638	// DiagnosticInfo: Required. Input only. The diagnostic info output for
639	// the turn. Required to calculate the testing coverage.
640	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
641
642	// Differences: Output only. If this is part of a result conversation
643	// turn, the list of differences between the original run and the replay
644	// for this output, if any.
645	Differences []*GoogleCloudDialogflowCxV3TestRunDifference `json:"differences,omitempty"`
646
647	// SessionParameters: The session parameters available to the bot at
648	// this point.
649	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
650
651	// Status: Response error from the agent in the test result. If set,
652	// other output is empty.
653	Status *GoogleRpcStatus `json:"status,omitempty"`
654
655	// TextResponses: The text responses from the agent for the turn.
656	TextResponses []*GoogleCloudDialogflowCxV3ResponseMessageText `json:"textResponses,omitempty"`
657
658	// TriggeredIntent: The Intent that triggered the response. Only name
659	// and displayName will be set.
660	TriggeredIntent *GoogleCloudDialogflowCxV3Intent `json:"triggeredIntent,omitempty"`
661
662	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
663	// unconditionally include in API requests. By default, fields with
664	// empty or default values are omitted from API requests. However, any
665	// non-pointer, non-interface field appearing in ForceSendFields will be
666	// sent to the server regardless of whether the field is empty or not.
667	// This may be used to include empty fields in Patch requests.
668	ForceSendFields []string `json:"-"`
669
670	// NullFields is a list of field names (e.g. "CurrentPage") to include
671	// in API requests with the JSON null value. By default, fields with
672	// empty values are omitted from API requests. However, any field with
673	// an empty value appearing in NullFields will be sent to the server as
674	// null. It is an error if a field in this list has a non-empty value.
675	// This may be used to include null fields in Patch requests.
676	NullFields []string `json:"-"`
677}
678
679func (s *GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
680	type NoMethod GoogleCloudDialogflowCxV3ConversationTurnVirtualAgentOutput
681	raw := NoMethod(*s)
682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
683}
684
685// GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata: Metadata
686// for CreateDocument operation.
687type GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata struct {
688	// GenericMetadata: The generic information of the operation.
689	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
690
691	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
692	// unconditionally include in API requests. By default, fields with
693	// empty or default values are omitted from API requests. However, any
694	// non-pointer, non-interface field appearing in ForceSendFields will be
695	// sent to the server regardless of whether the field is empty or not.
696	// This may be used to include empty fields in Patch requests.
697	ForceSendFields []string `json:"-"`
698
699	// NullFields is a list of field names (e.g. "GenericMetadata") to
700	// include in API requests with the JSON null value. By default, fields
701	// with empty values are omitted from API requests. However, any field
702	// with an empty value appearing in NullFields will be sent to the
703	// server as null. It is an error if a field in this list has a
704	// non-empty value. This may be used to include null fields in Patch
705	// requests.
706	NullFields []string `json:"-"`
707}
708
709func (s *GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
710	type NoMethod GoogleCloudDialogflowCxV3CreateDocumentOperationMetadata
711	raw := NoMethod(*s)
712	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
713}
714
715// GoogleCloudDialogflowCxV3CreateVersionOperationMetadata: Metadata
716// associated with the long running operation for
717// Versions.CreateVersion.
718type GoogleCloudDialogflowCxV3CreateVersionOperationMetadata struct {
719	// Version: Name of the created version. Format:
720	// `projects//locations//agents//flows//versions/`.
721	Version string `json:"version,omitempty"`
722
723	// ForceSendFields is a list of field names (e.g. "Version") to
724	// unconditionally include in API requests. By default, fields with
725	// empty or default values are omitted from API requests. However, any
726	// non-pointer, non-interface field appearing in ForceSendFields will be
727	// sent to the server regardless of whether the field is empty or not.
728	// This may be used to include empty fields in Patch requests.
729	ForceSendFields []string `json:"-"`
730
731	// NullFields is a list of field names (e.g. "Version") to include in
732	// API requests with the JSON null value. By default, fields with empty
733	// values are omitted from API requests. However, any field with an
734	// empty value appearing in NullFields will be sent to the server as
735	// null. It is an error if a field in this list has a non-empty value.
736	// This may be used to include null fields in Patch requests.
737	NullFields []string `json:"-"`
738}
739
740func (s *GoogleCloudDialogflowCxV3CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
741	type NoMethod GoogleCloudDialogflowCxV3CreateVersionOperationMetadata
742	raw := NoMethod(*s)
743	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
744}
745
746// GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata: Metadata
747// for DeleteDocument operation.
748type GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata struct {
749	// GenericMetadata: The generic information of the operation.
750	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
751
752	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
753	// unconditionally include in API requests. By default, fields with
754	// empty or default values are omitted from API requests. However, any
755	// non-pointer, non-interface field appearing in ForceSendFields will be
756	// sent to the server regardless of whether the field is empty or not.
757	// This may be used to include empty fields in Patch requests.
758	ForceSendFields []string `json:"-"`
759
760	// NullFields is a list of field names (e.g. "GenericMetadata") to
761	// include in API requests with the JSON null value. By default, fields
762	// with empty values are omitted from API requests. However, any field
763	// with an empty value appearing in NullFields will be sent to the
764	// server as null. It is an error if a field in this list has a
765	// non-empty value. This may be used to include null fields in Patch
766	// requests.
767	NullFields []string `json:"-"`
768}
769
770func (s *GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
771	type NoMethod GoogleCloudDialogflowCxV3DeleteDocumentOperationMetadata
772	raw := NoMethod(*s)
773	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
774}
775
776// GoogleCloudDialogflowCxV3DtmfInput: Represents the input for dtmf
777// event.
778type GoogleCloudDialogflowCxV3DtmfInput struct {
779	// Digits: The dtmf digits.
780	Digits string `json:"digits,omitempty"`
781
782	// FinishDigit: The finish digit (if any).
783	FinishDigit string `json:"finishDigit,omitempty"`
784
785	// ForceSendFields is a list of field names (e.g. "Digits") to
786	// unconditionally include in API requests. By default, fields with
787	// empty or default values are omitted from API requests. However, any
788	// non-pointer, non-interface field appearing in ForceSendFields will be
789	// sent to the server regardless of whether the field is empty or not.
790	// This may be used to include empty fields in Patch requests.
791	ForceSendFields []string `json:"-"`
792
793	// NullFields is a list of field names (e.g. "Digits") to include in API
794	// requests with the JSON null value. By default, fields with empty
795	// values are omitted from API requests. However, any field with an
796	// empty value appearing in NullFields will be sent to the server as
797	// null. It is an error if a field in this list has a non-empty value.
798	// This may be used to include null fields in Patch requests.
799	NullFields []string `json:"-"`
800}
801
802func (s *GoogleCloudDialogflowCxV3DtmfInput) MarshalJSON() ([]byte, error) {
803	type NoMethod GoogleCloudDialogflowCxV3DtmfInput
804	raw := NoMethod(*s)
805	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
806}
807
808// GoogleCloudDialogflowCxV3EventHandler: An event handler specifies an
809// event that can be handled during a session. When the specified event
810// happens, the following actions are taken in order: * If there is a
811// `trigger_fulfillment` associated with the event, it will be called. *
812// If there is a `target_page` associated with the event, the session
813// will transition into the specified page. * If there is a
814// `target_flow` associated with the event, the session will transition
815// into the specified flow.
816type GoogleCloudDialogflowCxV3EventHandler struct {
817	// Event: Required. The name of the event to handle.
818	Event string `json:"event,omitempty"`
819
820	// Name: Output only. The unique identifier of this event handler.
821	Name string `json:"name,omitempty"`
822
823	// TargetFlow: The target flow to transition to. Format:
824	// `projects//locations//agents//flows/`.
825	TargetFlow string `json:"targetFlow,omitempty"`
826
827	// TargetPage: The target page to transition to. Format:
828	// `projects//locations//agents//flows//pages/`.
829	TargetPage string `json:"targetPage,omitempty"`
830
831	// TriggerFulfillment: The fulfillment to call when the event occurs.
832	// Handling webhook errors with a fulfillment enabled with webhook could
833	// cause infinite loop. It is invalid to specify such fulfillment for a
834	// handler handling webhooks.
835	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
836
837	// ForceSendFields is a list of field names (e.g. "Event") to
838	// unconditionally include in API requests. By default, fields with
839	// empty or default values are omitted from API requests. However, any
840	// non-pointer, non-interface field appearing in ForceSendFields will be
841	// sent to the server regardless of whether the field is empty or not.
842	// This may be used to include empty fields in Patch requests.
843	ForceSendFields []string `json:"-"`
844
845	// NullFields is a list of field names (e.g. "Event") to include in API
846	// requests with the JSON null value. By default, fields with empty
847	// values are omitted from API requests. However, any field with an
848	// empty value appearing in NullFields will be sent to the server as
849	// null. It is an error if a field in this list has a non-empty value.
850	// This may be used to include null fields in Patch requests.
851	NullFields []string `json:"-"`
852}
853
854func (s *GoogleCloudDialogflowCxV3EventHandler) MarshalJSON() ([]byte, error) {
855	type NoMethod GoogleCloudDialogflowCxV3EventHandler
856	raw := NoMethod(*s)
857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
858}
859
860// GoogleCloudDialogflowCxV3EventInput: Represents the event to trigger.
861type GoogleCloudDialogflowCxV3EventInput struct {
862	// Event: Name of the event.
863	Event string `json:"event,omitempty"`
864
865	// ForceSendFields is a list of field names (e.g. "Event") to
866	// unconditionally include in API requests. By default, fields with
867	// empty or default values are omitted from API requests. However, any
868	// non-pointer, non-interface field appearing in ForceSendFields will be
869	// sent to the server regardless of whether the field is empty or not.
870	// This may be used to include empty fields in Patch requests.
871	ForceSendFields []string `json:"-"`
872
873	// NullFields is a list of field names (e.g. "Event") to include in API
874	// requests with the JSON null value. By default, fields with empty
875	// values are omitted from API requests. However, any field with an
876	// empty value appearing in NullFields will be sent to the server as
877	// null. It is an error if a field in this list has a non-empty value.
878	// This may be used to include null fields in Patch requests.
879	NullFields []string `json:"-"`
880}
881
882func (s *GoogleCloudDialogflowCxV3EventInput) MarshalJSON() ([]byte, error) {
883	type NoMethod GoogleCloudDialogflowCxV3EventInput
884	raw := NoMethod(*s)
885	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
886}
887
888// GoogleCloudDialogflowCxV3ExportAgentResponse: The response message
889// for Agents.ExportAgent.
890type GoogleCloudDialogflowCxV3ExportAgentResponse struct {
891	// AgentContent: Uncompressed raw byte content for agent.
892	AgentContent string `json:"agentContent,omitempty"`
893
894	// AgentUri: The URI to a file containing the exported agent. This field
895	// is populated only if `agent_uri` is specified in ExportAgentRequest.
896	AgentUri string `json:"agentUri,omitempty"`
897
898	// ForceSendFields is a list of field names (e.g. "AgentContent") to
899	// unconditionally include in API requests. By default, fields with
900	// empty or default values are omitted from API requests. However, any
901	// non-pointer, non-interface field appearing in ForceSendFields will be
902	// sent to the server regardless of whether the field is empty or not.
903	// This may be used to include empty fields in Patch requests.
904	ForceSendFields []string `json:"-"`
905
906	// NullFields is a list of field names (e.g. "AgentContent") to include
907	// in API requests with the JSON null value. By default, fields with
908	// empty values are omitted from API requests. However, any field with
909	// an empty value appearing in NullFields will be sent to the server as
910	// null. It is an error if a field in this list has a non-empty value.
911	// This may be used to include null fields in Patch requests.
912	NullFields []string `json:"-"`
913}
914
915func (s *GoogleCloudDialogflowCxV3ExportAgentResponse) MarshalJSON() ([]byte, error) {
916	type NoMethod GoogleCloudDialogflowCxV3ExportAgentResponse
917	raw := NoMethod(*s)
918	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
919}
920
921// GoogleCloudDialogflowCxV3ExportFlowResponse: The response message for
922// Flows.ExportFlow.
923type GoogleCloudDialogflowCxV3ExportFlowResponse struct {
924	// FlowContent: Uncompressed raw byte content for flow.
925	FlowContent string `json:"flowContent,omitempty"`
926
927	// FlowUri: The URI to a file containing the exported flow. This field
928	// is populated only if `flow_uri` is specified in ExportFlowRequest.
929	FlowUri string `json:"flowUri,omitempty"`
930
931	// ForceSendFields is a list of field names (e.g. "FlowContent") to
932	// unconditionally include in API requests. By default, fields with
933	// empty or default values are omitted from API requests. However, any
934	// non-pointer, non-interface field appearing in ForceSendFields will be
935	// sent to the server regardless of whether the field is empty or not.
936	// This may be used to include empty fields in Patch requests.
937	ForceSendFields []string `json:"-"`
938
939	// NullFields is a list of field names (e.g. "FlowContent") to include
940	// in API requests with the JSON null value. By default, fields with
941	// empty values are omitted from API requests. However, any field with
942	// an empty value appearing in NullFields will be sent to the server as
943	// null. It is an error if a field in this list has a non-empty value.
944	// This may be used to include null fields in Patch requests.
945	NullFields []string `json:"-"`
946}
947
948func (s *GoogleCloudDialogflowCxV3ExportFlowResponse) MarshalJSON() ([]byte, error) {
949	type NoMethod GoogleCloudDialogflowCxV3ExportFlowResponse
950	raw := NoMethod(*s)
951	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
952}
953
954// GoogleCloudDialogflowCxV3ExportTestCasesMetadata: Metadata returned
955// for the TestCases.ExportTestCases long running operation. This
956// message currently has no fields.
957type GoogleCloudDialogflowCxV3ExportTestCasesMetadata struct {
958}
959
960// GoogleCloudDialogflowCxV3ExportTestCasesResponse: The response
961// message for TestCases.ExportTestCases.
962type GoogleCloudDialogflowCxV3ExportTestCasesResponse struct {
963	// Content: Uncompressed raw byte content for test cases.
964	Content string `json:"content,omitempty"`
965
966	// GcsUri: The URI to a file containing the exported test cases. This
967	// field is populated only if `gcs_uri` is specified in
968	// ExportTestCasesRequest.
969	GcsUri string `json:"gcsUri,omitempty"`
970
971	// ForceSendFields is a list of field names (e.g. "Content") to
972	// unconditionally include in API requests. By default, fields with
973	// empty or default values are omitted from API requests. However, any
974	// non-pointer, non-interface field appearing in ForceSendFields will be
975	// sent to the server regardless of whether the field is empty or not.
976	// This may be used to include empty fields in Patch requests.
977	ForceSendFields []string `json:"-"`
978
979	// NullFields is a list of field names (e.g. "Content") to include in
980	// API requests with the JSON null value. By default, fields with empty
981	// values are omitted from API requests. However, any field with an
982	// empty value appearing in NullFields will be sent to the server as
983	// null. It is an error if a field in this list has a non-empty value.
984	// This may be used to include null fields in Patch requests.
985	NullFields []string `json:"-"`
986}
987
988func (s *GoogleCloudDialogflowCxV3ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
989	type NoMethod GoogleCloudDialogflowCxV3ExportTestCasesResponse
990	raw := NoMethod(*s)
991	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
992}
993
994// GoogleCloudDialogflowCxV3Form: A form is a data model that groups
995// related parameters that can be collected from the user. The process
996// in which the agent prompts the user and collects parameter values
997// from the user is called form filling. A form can be added to a page.
998// When form filling is done, the filled parameters will be written to
999// the session.
1000type GoogleCloudDialogflowCxV3Form struct {
1001	// Parameters: Parameters to collect from the user.
1002	Parameters []*GoogleCloudDialogflowCxV3FormParameter `json:"parameters,omitempty"`
1003
1004	// ForceSendFields is a list of field names (e.g. "Parameters") to
1005	// unconditionally include in API requests. By default, fields with
1006	// empty or default values are omitted from API requests. However, any
1007	// non-pointer, non-interface field appearing in ForceSendFields will be
1008	// sent to the server regardless of whether the field is empty or not.
1009	// This may be used to include empty fields in Patch requests.
1010	ForceSendFields []string `json:"-"`
1011
1012	// NullFields is a list of field names (e.g. "Parameters") to include in
1013	// API requests with the JSON null value. By default, fields with empty
1014	// values are omitted from API requests. However, any field with an
1015	// empty value appearing in NullFields will be sent to the server as
1016	// null. It is an error if a field in this list has a non-empty value.
1017	// This may be used to include null fields in Patch requests.
1018	NullFields []string `json:"-"`
1019}
1020
1021func (s *GoogleCloudDialogflowCxV3Form) MarshalJSON() ([]byte, error) {
1022	type NoMethod GoogleCloudDialogflowCxV3Form
1023	raw := NoMethod(*s)
1024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1025}
1026
1027// GoogleCloudDialogflowCxV3FormParameter: Represents a form parameter.
1028type GoogleCloudDialogflowCxV3FormParameter struct {
1029	// DefaultValue: The default value of an optional parameter. If the
1030	// parameter is required, the default value will be ignored.
1031	DefaultValue interface{} `json:"defaultValue,omitempty"`
1032
1033	// DisplayName: Required. The human-readable name of the parameter,
1034	// unique within the form.
1035	DisplayName string `json:"displayName,omitempty"`
1036
1037	// EntityType: Required. The entity type of the parameter. Format:
1038	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
1039	// types (for example,
1040	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
1041	// `projects//locations//agents//entityTypes/` for developer entity
1042	// types.
1043	EntityType string `json:"entityType,omitempty"`
1044
1045	// FillBehavior: Required. Defines fill behavior for the parameter.
1046	FillBehavior *GoogleCloudDialogflowCxV3FormParameterFillBehavior `json:"fillBehavior,omitempty"`
1047
1048	// IsList: Indicates whether the parameter represents a list of values.
1049	IsList bool `json:"isList,omitempty"`
1050
1051	// Redact: Indicates whether the parameter content should be redacted in
1052	// log. If redaction is enabled, the parameter content will be replaced
1053	// by parameter name during logging. Note: the parameter content is
1054	// subject to redaction if either parameter level redaction or entity
1055	// type level redaction is enabled.
1056	Redact bool `json:"redact,omitempty"`
1057
1058	// Required: Indicates whether the parameter is required. Optional
1059	// parameters will not trigger prompts; however, they are filled if the
1060	// user specifies them. Required parameters must be filled before form
1061	// filling concludes.
1062	Required bool `json:"required,omitempty"`
1063
1064	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
1065	// unconditionally include in API requests. By default, fields with
1066	// empty or default values are omitted from API requests. However, any
1067	// non-pointer, non-interface field appearing in ForceSendFields will be
1068	// sent to the server regardless of whether the field is empty or not.
1069	// This may be used to include empty fields in Patch requests.
1070	ForceSendFields []string `json:"-"`
1071
1072	// NullFields is a list of field names (e.g. "DefaultValue") to include
1073	// in API requests with the JSON null value. By default, fields with
1074	// empty values are omitted from API requests. However, any field with
1075	// an empty value appearing in NullFields will be sent to the server as
1076	// null. It is an error if a field in this list has a non-empty value.
1077	// This may be used to include null fields in Patch requests.
1078	NullFields []string `json:"-"`
1079}
1080
1081func (s *GoogleCloudDialogflowCxV3FormParameter) MarshalJSON() ([]byte, error) {
1082	type NoMethod GoogleCloudDialogflowCxV3FormParameter
1083	raw := NoMethod(*s)
1084	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1085}
1086
1087// GoogleCloudDialogflowCxV3FormParameterFillBehavior: Configuration for
1088// how the filling of a parameter should be handled.
1089type GoogleCloudDialogflowCxV3FormParameterFillBehavior struct {
1090	// InitialPromptFulfillment: Required. The fulfillment to provide the
1091	// initial prompt that the agent can present to the user in order to
1092	// fill the parameter.
1093	InitialPromptFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"initialPromptFulfillment,omitempty"`
1094
1095	// RepromptEventHandlers: The handlers for parameter-level events, used
1096	// to provide reprompt for the parameter or transition to a different
1097	// page/flow. The supported events are: * `sys.no-match-`, where N can
1098	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
1099	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
1100	// `initial_prompt_fulfillment` provides the first prompt for the
1101	// parameter. If the user's response does not fill the parameter, a
1102	// no-match/no-input event will be triggered, and the fulfillment
1103	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
1104	// defined) will be called to provide a prompt. The
1105	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
1106	// to the next no-match/no-input event, and so on. A
1107	// `sys.no-match-default` or `sys.no-input-default` handler will be used
1108	// to handle all following no-match/no-input events after all numbered
1109	// no-match/no-input handlers for the parameter are consumed. A
1110	// `sys.invalid-parameter` handler can be defined to handle the case
1111	// where the parameter values have been `invalidated` by webhook. For
1112	// example, if the user's response fill the parameter, however the
1113	// parameter was invalidated by webhook, the fulfillment associated with
1114	// the `sys.invalid-parameter` handler (if defined) will be called to
1115	// provide a prompt. If the event handler for the corresponding event
1116	// can't be found on the parameter, `initial_prompt_fulfillment` will be
1117	// re-prompted.
1118	RepromptEventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"repromptEventHandlers,omitempty"`
1119
1120	// ForceSendFields is a list of field names (e.g.
1121	// "InitialPromptFulfillment") to unconditionally include in API
1122	// requests. By default, fields with empty or default values are omitted
1123	// from API requests. However, any non-pointer, non-interface field
1124	// appearing in ForceSendFields will be sent to the server regardless of
1125	// whether the field is empty or not. This may be used to include empty
1126	// fields in Patch requests.
1127	ForceSendFields []string `json:"-"`
1128
1129	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
1130	// to include in API requests with the JSON null value. By default,
1131	// fields with empty values are omitted from API requests. However, any
1132	// field with an empty value appearing in NullFields will be sent to the
1133	// server as null. It is an error if a field in this list has a
1134	// non-empty value. This may be used to include null fields in Patch
1135	// requests.
1136	NullFields []string `json:"-"`
1137}
1138
1139func (s *GoogleCloudDialogflowCxV3FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
1140	type NoMethod GoogleCloudDialogflowCxV3FormParameterFillBehavior
1141	raw := NoMethod(*s)
1142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1143}
1144
1145// GoogleCloudDialogflowCxV3Fulfillment: A fulfillment can do one or
1146// more of the following actions at the same time: * Generate rich
1147// message responses. * Set parameter values. * Call the webhook.
1148// Fulfillments can be called at various stages in the Page or Form
1149// lifecycle. For example, when a DetectIntentRequest drives a session
1150// to enter a new page, the page's entry fulfillment can add a static
1151// response to the QueryResult in the returning DetectIntentResponse,
1152// call the webhook (for example, to load user data from a database), or
1153// both.
1154type GoogleCloudDialogflowCxV3Fulfillment struct {
1155	// ConditionalCases: Conditional cases for this fulfillment.
1156	ConditionalCases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
1157
1158	// Messages: The list of rich message responses to present to the user.
1159	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
1160
1161	// ReturnPartialResponses: Whether Dialogflow should return currently
1162	// queued fulfillment response messages in streaming APIs. If a webhook
1163	// is specified, it happens before Dialogflow invokes webhook. Warning:
1164	// 1) This flag only affects streaming API. Responses are still queued
1165	// and returned once in non-streaming API. 2) The flag can be enabled in
1166	// any fulfillment but only the first 3 partial responses will be
1167	// returned. You may only want to apply it to fulfillments that have
1168	// slow webhooks.
1169	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
1170
1171	// SetParameterActions: Set parameter values before executing the
1172	// webhook.
1173	SetParameterActions []*GoogleCloudDialogflowCxV3FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
1174
1175	// Tag: The tag used by the webhook to identify which fulfillment is
1176	// being called. This field is required if `webhook` is specified.
1177	Tag string `json:"tag,omitempty"`
1178
1179	// Webhook: The webhook to call. Format:
1180	// `projects//locations//agents//webhooks/`.
1181	Webhook string `json:"webhook,omitempty"`
1182
1183	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
1184	// unconditionally include in API requests. By default, fields with
1185	// empty or default values are omitted from API requests. However, any
1186	// non-pointer, non-interface field appearing in ForceSendFields will be
1187	// sent to the server regardless of whether the field is empty or not.
1188	// This may be used to include empty fields in Patch requests.
1189	ForceSendFields []string `json:"-"`
1190
1191	// NullFields is a list of field names (e.g. "ConditionalCases") to
1192	// include in API requests with the JSON null value. By default, fields
1193	// with empty values are omitted from API requests. However, any field
1194	// with an empty value appearing in NullFields will be sent to the
1195	// server as null. It is an error if a field in this list has a
1196	// non-empty value. This may be used to include null fields in Patch
1197	// requests.
1198	NullFields []string `json:"-"`
1199}
1200
1201func (s *GoogleCloudDialogflowCxV3Fulfillment) MarshalJSON() ([]byte, error) {
1202	type NoMethod GoogleCloudDialogflowCxV3Fulfillment
1203	raw := NoMethod(*s)
1204	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1205}
1206
1207// GoogleCloudDialogflowCxV3FulfillmentConditionalCases: A list of
1208// cascading if-else conditions. Cases are mutually exclusive. The first
1209// one with a matching condition is selected, all the rest ignored.
1210type GoogleCloudDialogflowCxV3FulfillmentConditionalCases struct {
1211	// Cases: A list of cascading if-else conditions.
1212	Cases []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase `json:"cases,omitempty"`
1213
1214	// ForceSendFields is a list of field names (e.g. "Cases") to
1215	// unconditionally include in API requests. By default, fields with
1216	// empty or default values are omitted from API requests. However, any
1217	// non-pointer, non-interface field appearing in ForceSendFields will be
1218	// sent to the server regardless of whether the field is empty or not.
1219	// This may be used to include empty fields in Patch requests.
1220	ForceSendFields []string `json:"-"`
1221
1222	// NullFields is a list of field names (e.g. "Cases") to include in API
1223	// requests with the JSON null value. By default, fields with empty
1224	// values are omitted from API requests. However, any field with an
1225	// empty value appearing in NullFields will be sent to the server as
1226	// null. It is an error if a field in this list has a non-empty value.
1227	// This may be used to include null fields in Patch requests.
1228	NullFields []string `json:"-"`
1229}
1230
1231func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
1232	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCases
1233	raw := NoMethod(*s)
1234	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1235}
1236
1237// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase: Each case
1238// has a Boolean condition. When it is evaluated to be True, the
1239// corresponding messages will be selected and evaluated recursively.
1240type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase struct {
1241	// CaseContent: A list of case content.
1242	CaseContent []*GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
1243
1244	// Condition: The condition to activate and select this case. Empty
1245	// means the condition is always true. The condition is evaluated
1246	// against form parameters or session parameters. See the conditions
1247	// reference
1248	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
1249	Condition string `json:"condition,omitempty"`
1250
1251	// ForceSendFields is a list of field names (e.g. "CaseContent") to
1252	// unconditionally include in API requests. By default, fields with
1253	// empty or default values are omitted from API requests. However, any
1254	// non-pointer, non-interface field appearing in ForceSendFields will be
1255	// sent to the server regardless of whether the field is empty or not.
1256	// This may be used to include empty fields in Patch requests.
1257	ForceSendFields []string `json:"-"`
1258
1259	// NullFields is a list of field names (e.g. "CaseContent") to include
1260	// in API requests with the JSON null value. By default, fields with
1261	// empty values are omitted from API requests. However, any field with
1262	// an empty value appearing in NullFields will be sent to the server as
1263	// null. It is an error if a field in this list has a non-empty value.
1264	// This may be used to include null fields in Patch requests.
1265	NullFields []string `json:"-"`
1266}
1267
1268func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
1269	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCase
1270	raw := NoMethod(*s)
1271	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1272}
1273
1274// GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent:
1275// The list of messages or conditional cases to activate for this case.
1276type GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent struct {
1277	// AdditionalCases: Additional cases to be evaluated.
1278	AdditionalCases *GoogleCloudDialogflowCxV3FulfillmentConditionalCases `json:"additionalCases,omitempty"`
1279
1280	// Message: Returned message.
1281	Message *GoogleCloudDialogflowCxV3ResponseMessage `json:"message,omitempty"`
1282
1283	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
1284	// unconditionally include in API requests. By default, fields with
1285	// empty or default values are omitted from API requests. However, any
1286	// non-pointer, non-interface field appearing in ForceSendFields will be
1287	// sent to the server regardless of whether the field is empty or not.
1288	// This may be used to include empty fields in Patch requests.
1289	ForceSendFields []string `json:"-"`
1290
1291	// NullFields is a list of field names (e.g. "AdditionalCases") to
1292	// include in API requests with the JSON null value. By default, fields
1293	// with empty values are omitted from API requests. However, any field
1294	// with an empty value appearing in NullFields will be sent to the
1295	// server as null. It is an error if a field in this list has a
1296	// non-empty value. This may be used to include null fields in Patch
1297	// requests.
1298	NullFields []string `json:"-"`
1299}
1300
1301func (s *GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
1302	type NoMethod GoogleCloudDialogflowCxV3FulfillmentConditionalCasesCaseCaseContent
1303	raw := NoMethod(*s)
1304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1305}
1306
1307// GoogleCloudDialogflowCxV3FulfillmentSetParameterAction: Setting a
1308// parameter value.
1309type GoogleCloudDialogflowCxV3FulfillmentSetParameterAction struct {
1310	// Parameter: Display name of the parameter.
1311	Parameter string `json:"parameter,omitempty"`
1312
1313	// Value: The new value of the parameter. A null value clears the
1314	// parameter.
1315	Value interface{} `json:"value,omitempty"`
1316
1317	// ForceSendFields is a list of field names (e.g. "Parameter") to
1318	// unconditionally include in API requests. By default, fields with
1319	// empty or default values are omitted from API requests. However, any
1320	// non-pointer, non-interface field appearing in ForceSendFields will be
1321	// sent to the server regardless of whether the field is empty or not.
1322	// This may be used to include empty fields in Patch requests.
1323	ForceSendFields []string `json:"-"`
1324
1325	// NullFields is a list of field names (e.g. "Parameter") to include in
1326	// API requests with the JSON null value. By default, fields with empty
1327	// values are omitted from API requests. However, any field with an
1328	// empty value appearing in NullFields will be sent to the server as
1329	// null. It is an error if a field in this list has a non-empty value.
1330	// This may be used to include null fields in Patch requests.
1331	NullFields []string `json:"-"`
1332}
1333
1334func (s *GoogleCloudDialogflowCxV3FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
1335	type NoMethod GoogleCloudDialogflowCxV3FulfillmentSetParameterAction
1336	raw := NoMethod(*s)
1337	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1338}
1339
1340// GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata: Metadata
1341// in google::longrunning::Operation for Knowledge operations.
1342type GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata struct {
1343	// State: Required. Output only. The current state of this operation.
1344	//
1345	// Possible values:
1346	//   "STATE_UNSPECIFIED" - State unspecified.
1347	//   "PENDING" - The operation has been created.
1348	//   "RUNNING" - The operation is currently running.
1349	//   "DONE" - The operation is done, either cancelled or completed.
1350	State string `json:"state,omitempty"`
1351
1352	// ForceSendFields is a list of field names (e.g. "State") to
1353	// unconditionally include in API requests. By default, fields with
1354	// empty or default values are omitted from API requests. However, any
1355	// non-pointer, non-interface field appearing in ForceSendFields will be
1356	// sent to the server regardless of whether the field is empty or not.
1357	// This may be used to include empty fields in Patch requests.
1358	ForceSendFields []string `json:"-"`
1359
1360	// NullFields is a list of field names (e.g. "State") to include in API
1361	// requests with the JSON null value. By default, fields with empty
1362	// values are omitted from API requests. However, any field with an
1363	// empty value appearing in NullFields will be sent to the server as
1364	// null. It is an error if a field in this list has a non-empty value.
1365	// This may be used to include null fields in Patch requests.
1366	NullFields []string `json:"-"`
1367}
1368
1369func (s *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
1370	type NoMethod GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata
1371	raw := NoMethod(*s)
1372	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1373}
1374
1375// GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata: Metadata
1376// for ImportDocuments operation.
1377type GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata struct {
1378	// GenericMetadata: The generic information of the operation.
1379	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
1380
1381	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
1382	// unconditionally include in API requests. By default, fields with
1383	// empty or default values are omitted from API requests. However, any
1384	// non-pointer, non-interface field appearing in ForceSendFields will be
1385	// sent to the server regardless of whether the field is empty or not.
1386	// This may be used to include empty fields in Patch requests.
1387	ForceSendFields []string `json:"-"`
1388
1389	// NullFields is a list of field names (e.g. "GenericMetadata") to
1390	// include in API requests with the JSON null value. By default, fields
1391	// with empty values are omitted from API requests. However, any field
1392	// with an empty value appearing in NullFields will be sent to the
1393	// server as null. It is an error if a field in this list has a
1394	// non-empty value. This may be used to include null fields in Patch
1395	// requests.
1396	NullFields []string `json:"-"`
1397}
1398
1399func (s *GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
1400	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsOperationMetadata
1401	raw := NoMethod(*s)
1402	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1403}
1404
1405// GoogleCloudDialogflowCxV3ImportDocumentsResponse: Response message
1406// for Documents.ImportDocuments.
1407type GoogleCloudDialogflowCxV3ImportDocumentsResponse struct {
1408	// Warnings: Includes details about skipped documents or any other
1409	// warnings.
1410	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
1411
1412	// ForceSendFields is a list of field names (e.g. "Warnings") to
1413	// unconditionally include in API requests. By default, fields with
1414	// empty or default values are omitted from API requests. However, any
1415	// non-pointer, non-interface field appearing in ForceSendFields will be
1416	// sent to the server regardless of whether the field is empty or not.
1417	// This may be used to include empty fields in Patch requests.
1418	ForceSendFields []string `json:"-"`
1419
1420	// NullFields is a list of field names (e.g. "Warnings") to include in
1421	// API requests with the JSON null value. By default, fields with empty
1422	// values are omitted from API requests. However, any field with an
1423	// empty value appearing in NullFields will be sent to the server as
1424	// null. It is an error if a field in this list has a non-empty value.
1425	// This may be used to include null fields in Patch requests.
1426	NullFields []string `json:"-"`
1427}
1428
1429func (s *GoogleCloudDialogflowCxV3ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
1430	type NoMethod GoogleCloudDialogflowCxV3ImportDocumentsResponse
1431	raw := NoMethod(*s)
1432	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1433}
1434
1435// GoogleCloudDialogflowCxV3ImportFlowResponse: The response message for
1436// Flows.ImportFlow.
1437type GoogleCloudDialogflowCxV3ImportFlowResponse struct {
1438	// Flow: The unique identifier of the new flow. Format:
1439	// `projects//locations//agents//flows/`.
1440	Flow string `json:"flow,omitempty"`
1441
1442	// ForceSendFields is a list of field names (e.g. "Flow") to
1443	// unconditionally include in API requests. By default, fields with
1444	// empty or default values are omitted from API requests. However, any
1445	// non-pointer, non-interface field appearing in ForceSendFields will be
1446	// sent to the server regardless of whether the field is empty or not.
1447	// This may be used to include empty fields in Patch requests.
1448	ForceSendFields []string `json:"-"`
1449
1450	// NullFields is a list of field names (e.g. "Flow") to include in API
1451	// requests with the JSON null value. By default, fields with empty
1452	// values are omitted from API requests. However, any field with an
1453	// empty value appearing in NullFields will be sent to the server as
1454	// null. It is an error if a field in this list has a non-empty value.
1455	// This may be used to include null fields in Patch requests.
1456	NullFields []string `json:"-"`
1457}
1458
1459func (s *GoogleCloudDialogflowCxV3ImportFlowResponse) MarshalJSON() ([]byte, error) {
1460	type NoMethod GoogleCloudDialogflowCxV3ImportFlowResponse
1461	raw := NoMethod(*s)
1462	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1463}
1464
1465// GoogleCloudDialogflowCxV3ImportTestCasesMetadata: Metadata returned
1466// for the TestCases.ImportTestCases long running operation.
1467type GoogleCloudDialogflowCxV3ImportTestCasesMetadata struct {
1468	// Errors: Errors for failed test cases.
1469	Errors []*GoogleCloudDialogflowCxV3TestCaseError `json:"errors,omitempty"`
1470
1471	// ForceSendFields is a list of field names (e.g. "Errors") to
1472	// unconditionally include in API requests. By default, fields with
1473	// empty or default values are omitted from API requests. However, any
1474	// non-pointer, non-interface field appearing in ForceSendFields will be
1475	// sent to the server regardless of whether the field is empty or not.
1476	// This may be used to include empty fields in Patch requests.
1477	ForceSendFields []string `json:"-"`
1478
1479	// NullFields is a list of field names (e.g. "Errors") to include in API
1480	// requests with the JSON null value. By default, fields with empty
1481	// values are omitted from API requests. However, any field with an
1482	// empty value appearing in NullFields will be sent to the server as
1483	// null. It is an error if a field in this list has a non-empty value.
1484	// This may be used to include null fields in Patch requests.
1485	NullFields []string `json:"-"`
1486}
1487
1488func (s *GoogleCloudDialogflowCxV3ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
1489	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesMetadata
1490	raw := NoMethod(*s)
1491	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1492}
1493
1494// GoogleCloudDialogflowCxV3ImportTestCasesResponse: The response
1495// message for TestCases.ImportTestCases.
1496type GoogleCloudDialogflowCxV3ImportTestCasesResponse struct {
1497	// Names: The unique identifiers of the new test cases. Format:
1498	// `projects//locations//agents//testCases/`.
1499	Names []string `json:"names,omitempty"`
1500
1501	// ForceSendFields is a list of field names (e.g. "Names") to
1502	// unconditionally include in API requests. By default, fields with
1503	// empty or default values are omitted from API requests. However, any
1504	// non-pointer, non-interface field appearing in ForceSendFields will be
1505	// sent to the server regardless of whether the field is empty or not.
1506	// This may be used to include empty fields in Patch requests.
1507	ForceSendFields []string `json:"-"`
1508
1509	// NullFields is a list of field names (e.g. "Names") to include in API
1510	// requests with the JSON null value. By default, fields with empty
1511	// values are omitted from API requests. However, any field with an
1512	// empty value appearing in NullFields will be sent to the server as
1513	// null. It is an error if a field in this list has a non-empty value.
1514	// This may be used to include null fields in Patch requests.
1515	NullFields []string `json:"-"`
1516}
1517
1518func (s *GoogleCloudDialogflowCxV3ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
1519	type NoMethod GoogleCloudDialogflowCxV3ImportTestCasesResponse
1520	raw := NoMethod(*s)
1521	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1522}
1523
1524// GoogleCloudDialogflowCxV3InputAudioConfig: Instructs the speech
1525// recognizer on how to process the audio content.
1526type GoogleCloudDialogflowCxV3InputAudioConfig struct {
1527	// AudioEncoding: Required. Audio encoding of the audio content to
1528	// process.
1529	//
1530	// Possible values:
1531	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
1532	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
1533	// little-endian samples (Linear PCM).
1534	//   "AUDIO_ENCODING_FLAC" -
1535	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
1536	// Audio Codec) is the recommended encoding because it is lossless
1537	// (therefore recognition is not compromised) and requires only about
1538	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
1539	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
1540	// are supported.
1541	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
1542	// samples using G.711 PCMU/mu-law.
1543	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
1544	// `sample_rate_hertz` must be 8000.
1545	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
1546	// `sample_rate_hertz` must be 16000.
1547	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
1548	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
1549	// `sample_rate_hertz` must be 16000.
1550	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
1551	// encodings is not recommended, if a very low bitrate encoding is
1552	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
1553	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
1554	// a header byte in each block, as in MIME type
1555	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
1556	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
1557	// The stream is a sequence of blocks, one block per RTP packet. Each
1558	// block starts with a byte containing the length of the block, in
1559	// bytes, followed by one or more frames of Speex data, padded to an
1560	// integral number of bytes (octets) as specified in RFC 5574. In other
1561	// words, each RTP header is replaced with a single byte containing the
1562	// block length. Only Speex wideband is supported. `sample_rate_hertz`
1563	// must be 16000.
1564	AudioEncoding string `json:"audioEncoding,omitempty"`
1565
1566	// EnableWordInfo: Optional. If `true`, Dialogflow returns
1567	// SpeechWordInfo in StreamingRecognitionResult with information about
1568	// the recognized speech words, e.g. start and end time offsets. If
1569	// false or unspecified, Speech doesn't return any word-level
1570	// information.
1571	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
1572
1573	// Model: Optional. Which Speech model to select for the given request.
1574	// Select the model best suited to your domain to get best results. If a
1575	// model is not explicitly specified, then we auto-select a model based
1576	// on the parameters in the InputAudioConfig. If enhanced speech model
1577	// is enabled for the agent and an enhanced version of the specified
1578	// model for the language does not exist, then the speech is recognized
1579	// using the standard version of the specified model. Refer to Cloud
1580	// Speech API documentation
1581	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
1582	// for more details.
1583	Model string `json:"model,omitempty"`
1584
1585	// ModelVariant: Optional. Which variant of the Speech model to use.
1586	//
1587	// Possible values:
1588	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
1589	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
1590	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
1591	// model that the caller is eligible for. Please see the [Dialogflow
1592	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
1593	// to make your project eligible for enhanced models.
1594	//   "USE_STANDARD" - Use standard model variant even if an enhanced
1595	// model is available. See the [Cloud Speech
1596	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
1597	// odels) for details about enhanced models.
1598	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
1599	// variant does not exist for the given model and request language,
1600	// Dialogflow falls back to the standard variant. The [Cloud Speech
1601	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
1602	// odels) describes which models have enhanced variants. * If the API
1603	// caller isn't eligible for enhanced models, Dialogflow returns an
1604	// error. Please see the [Dialogflow
1605	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
1606	// to make your project eligible.
1607	ModelVariant string `json:"modelVariant,omitempty"`
1608
1609	// PhraseHints: Optional. A list of strings containing words and phrases
1610	// that the speech recognizer should recognize with higher likelihood.
1611	// See the Cloud Speech documentation
1612	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
1613	// for more details.
1614	PhraseHints []string `json:"phraseHints,omitempty"`
1615
1616	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
1617	// the query. Refer to Cloud Speech API documentation
1618	// (https://cloud.google.com/speech-to-text/docs/basics) for more
1619	// details.
1620	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
1621
1622	// SingleUtterance: Optional. If `false` (default), recognition does not
1623	// cease until the client closes the stream. If `true`, the recognizer
1624	// will detect a single spoken utterance in input audio. Recognition
1625	// ceases when it detects the audio's voice has stopped or paused. In
1626	// this case, once a detected intent is received, the client should
1627	// close the stream and start a new request with a new stream as needed.
1628	// Note: This setting is relevant only for streaming methods.
1629	SingleUtterance bool `json:"singleUtterance,omitempty"`
1630
1631	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
1632	// unconditionally include in API requests. By default, fields with
1633	// empty or default values are omitted from API requests. However, any
1634	// non-pointer, non-interface field appearing in ForceSendFields will be
1635	// sent to the server regardless of whether the field is empty or not.
1636	// This may be used to include empty fields in Patch requests.
1637	ForceSendFields []string `json:"-"`
1638
1639	// NullFields is a list of field names (e.g. "AudioEncoding") to include
1640	// in API requests with the JSON null value. By default, fields with
1641	// empty values are omitted from API requests. However, any field with
1642	// an empty value appearing in NullFields will be sent to the server as
1643	// null. It is an error if a field in this list has a non-empty value.
1644	// This may be used to include null fields in Patch requests.
1645	NullFields []string `json:"-"`
1646}
1647
1648func (s *GoogleCloudDialogflowCxV3InputAudioConfig) MarshalJSON() ([]byte, error) {
1649	type NoMethod GoogleCloudDialogflowCxV3InputAudioConfig
1650	raw := NoMethod(*s)
1651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1652}
1653
1654// GoogleCloudDialogflowCxV3Intent: An intent represents a user's intent
1655// to interact with a conversational agent. You can provide information
1656// for the Dialogflow API to use to match user input to an intent by
1657// adding training phrases (i.e., examples of user input) to your
1658// intent.
1659type GoogleCloudDialogflowCxV3Intent struct {
1660	// Description: Human readable description for better understanding an
1661	// intent like its scope, content, result etc. Maximum character limit:
1662	// 140 characters.
1663	Description string `json:"description,omitempty"`
1664
1665	// DisplayName: Required. The human-readable name of the intent, unique
1666	// within the agent.
1667	DisplayName string `json:"displayName,omitempty"`
1668
1669	// IsFallback: Indicates whether this is a fallback intent. Currently
1670	// only default fallback intent is allowed in the agent, which is added
1671	// upon agent creation. Adding training phrases to fallback intent is
1672	// useful in the case of requests that are mistakenly matched, since
1673	// training phrases assigned to fallback intents act as negative
1674	// examples that triggers no-match event.
1675	IsFallback bool `json:"isFallback,omitempty"`
1676
1677	// Labels: The key/value metadata to label an intent. Labels can contain
1678	// lowercase letters, digits and the symbols '-' and '_'. International
1679	// characters are allowed, including letters from unicase alphabets.
1680	// Keys must start with a letter. Keys and values can be no longer than
1681	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
1682	// for Dialogflow defined labels. Currently allowed Dialogflow defined
1683	// labels include: * sys-head * sys-contextual The above labels do not
1684	// require value. "sys-head" means the intent is a head intent.
1685	// "sys.contextual" means the intent is a contextual intent.
1686	Labels map[string]string `json:"labels,omitempty"`
1687
1688	// Name: The unique identifier of the intent. Required for the
1689	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
1690	// automatically. Format: `projects//locations//agents//intents/`.
1691	Name string `json:"name,omitempty"`
1692
1693	// Parameters: The collection of parameters associated with the intent.
1694	Parameters []*GoogleCloudDialogflowCxV3IntentParameter `json:"parameters,omitempty"`
1695
1696	// Priority: The priority of this intent. Higher numbers represent
1697	// higher priorities. - If the supplied value is unspecified or 0, the
1698	// service translates the value to 500,000, which corresponds to the
1699	// `Normal` priority in the console. - If the supplied value is
1700	// negative, the intent is ignored in runtime detect intent requests.
1701	Priority int64 `json:"priority,omitempty"`
1702
1703	// TrainingPhrases: The collection of training phrases the agent is
1704	// trained on to identify the intent.
1705	TrainingPhrases []*GoogleCloudDialogflowCxV3IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
1706
1707	// ForceSendFields is a list of field names (e.g. "Description") to
1708	// unconditionally include in API requests. By default, fields with
1709	// empty or default values are omitted from API requests. However, any
1710	// non-pointer, non-interface field appearing in ForceSendFields will be
1711	// sent to the server regardless of whether the field is empty or not.
1712	// This may be used to include empty fields in Patch requests.
1713	ForceSendFields []string `json:"-"`
1714
1715	// NullFields is a list of field names (e.g. "Description") to include
1716	// in API requests with the JSON null value. By default, fields with
1717	// empty values are omitted from API requests. However, any field with
1718	// an empty value appearing in NullFields will be sent to the server as
1719	// null. It is an error if a field in this list has a non-empty value.
1720	// This may be used to include null fields in Patch requests.
1721	NullFields []string `json:"-"`
1722}
1723
1724func (s *GoogleCloudDialogflowCxV3Intent) MarshalJSON() ([]byte, error) {
1725	type NoMethod GoogleCloudDialogflowCxV3Intent
1726	raw := NoMethod(*s)
1727	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1728}
1729
1730// GoogleCloudDialogflowCxV3IntentInput: Represents the intent to
1731// trigger programmatically rather than as a result of natural language
1732// processing.
1733type GoogleCloudDialogflowCxV3IntentInput struct {
1734	// Intent: Required. The unique identifier of the intent. Format:
1735	// `projects//locations//agents//intents/`.
1736	Intent string `json:"intent,omitempty"`
1737
1738	// ForceSendFields is a list of field names (e.g. "Intent") to
1739	// unconditionally include in API requests. By default, fields with
1740	// empty or default values are omitted from API requests. However, any
1741	// non-pointer, non-interface field appearing in ForceSendFields will be
1742	// sent to the server regardless of whether the field is empty or not.
1743	// This may be used to include empty fields in Patch requests.
1744	ForceSendFields []string `json:"-"`
1745
1746	// NullFields is a list of field names (e.g. "Intent") to include in API
1747	// requests with the JSON null value. By default, fields with empty
1748	// values are omitted from API requests. However, any field with an
1749	// empty value appearing in NullFields will be sent to the server as
1750	// null. It is an error if a field in this list has a non-empty value.
1751	// This may be used to include null fields in Patch requests.
1752	NullFields []string `json:"-"`
1753}
1754
1755func (s *GoogleCloudDialogflowCxV3IntentInput) MarshalJSON() ([]byte, error) {
1756	type NoMethod GoogleCloudDialogflowCxV3IntentInput
1757	raw := NoMethod(*s)
1758	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1759}
1760
1761// GoogleCloudDialogflowCxV3IntentParameter: Represents an intent
1762// parameter.
1763type GoogleCloudDialogflowCxV3IntentParameter struct {
1764	// EntityType: Required. The entity type of the parameter. Format:
1765	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
1766	// types (for example,
1767	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
1768	// `projects//locations//agents//entityTypes/` for developer entity
1769	// types.
1770	EntityType string `json:"entityType,omitempty"`
1771
1772	// Id: Required. The unique identifier of the parameter. This field is
1773	// used by training phrases to annotate their parts.
1774	Id string `json:"id,omitempty"`
1775
1776	// IsList: Indicates whether the parameter represents a list of values.
1777	IsList bool `json:"isList,omitempty"`
1778
1779	// Redact: Indicates whether the parameter content should be redacted in
1780	// log. If redaction is enabled, the parameter content will be replaced
1781	// by parameter name during logging. Note: the parameter content is
1782	// subject to redaction if either parameter level redaction or entity
1783	// type level redaction is enabled.
1784	Redact bool `json:"redact,omitempty"`
1785
1786	// ForceSendFields is a list of field names (e.g. "EntityType") to
1787	// unconditionally include in API requests. By default, fields with
1788	// empty or default values are omitted from API requests. However, any
1789	// non-pointer, non-interface field appearing in ForceSendFields will be
1790	// sent to the server regardless of whether the field is empty or not.
1791	// This may be used to include empty fields in Patch requests.
1792	ForceSendFields []string `json:"-"`
1793
1794	// NullFields is a list of field names (e.g. "EntityType") to include in
1795	// API requests with the JSON null value. By default, fields with empty
1796	// values are omitted from API requests. However, any field with an
1797	// empty value appearing in NullFields will be sent to the server as
1798	// null. It is an error if a field in this list has a non-empty value.
1799	// This may be used to include null fields in Patch requests.
1800	NullFields []string `json:"-"`
1801}
1802
1803func (s *GoogleCloudDialogflowCxV3IntentParameter) MarshalJSON() ([]byte, error) {
1804	type NoMethod GoogleCloudDialogflowCxV3IntentParameter
1805	raw := NoMethod(*s)
1806	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1807}
1808
1809// GoogleCloudDialogflowCxV3IntentTrainingPhrase: Represents an example
1810// that the agent is trained on to identify the intent.
1811type GoogleCloudDialogflowCxV3IntentTrainingPhrase struct {
1812	// Id: Output only. The unique identifier of the training phrase.
1813	Id string `json:"id,omitempty"`
1814
1815	// Parts: Required. The ordered list of training phrase parts. The parts
1816	// are concatenated in order to form the training phrase. Note: The API
1817	// does not automatically annotate training phrases like the Dialogflow
1818	// Console does. Note: Do not forget to include whitespace at part
1819	// boundaries, so the training phrase is well formatted when the parts
1820	// are concatenated. If the training phrase does not need to be
1821	// annotated with parameters, you just need a single part with only the
1822	// Part.text field set. If you want to annotate the training phrase, you
1823	// must create multiple parts, where the fields of each part are
1824	// populated in one of two ways: - `Part.text` is set to a part of the
1825	// phrase that has no parameters. - `Part.text` is set to a part of the
1826	// phrase that you want to annotate, and the `parameter_id` field is
1827	// set.
1828	Parts []*GoogleCloudDialogflowCxV3IntentTrainingPhrasePart `json:"parts,omitempty"`
1829
1830	// RepeatCount: Indicates how many times this example was added to the
1831	// intent.
1832	RepeatCount int64 `json:"repeatCount,omitempty"`
1833
1834	// ForceSendFields is a list of field names (e.g. "Id") to
1835	// unconditionally include in API requests. By default, fields with
1836	// empty or default values are omitted from API requests. However, any
1837	// non-pointer, non-interface field appearing in ForceSendFields will be
1838	// sent to the server regardless of whether the field is empty or not.
1839	// This may be used to include empty fields in Patch requests.
1840	ForceSendFields []string `json:"-"`
1841
1842	// NullFields is a list of field names (e.g. "Id") to include in API
1843	// requests with the JSON null value. By default, fields with empty
1844	// values are omitted from API requests. However, any field with an
1845	// empty value appearing in NullFields will be sent to the server as
1846	// null. It is an error if a field in this list has a non-empty value.
1847	// This may be used to include null fields in Patch requests.
1848	NullFields []string `json:"-"`
1849}
1850
1851func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
1852	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrase
1853	raw := NoMethod(*s)
1854	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1855}
1856
1857// GoogleCloudDialogflowCxV3IntentTrainingPhrasePart: Represents a part
1858// of a training phrase.
1859type GoogleCloudDialogflowCxV3IntentTrainingPhrasePart struct {
1860	// ParameterId: The parameter used to annotate this part of the training
1861	// phrase. This field is required for annotated parts of the training
1862	// phrase.
1863	ParameterId string `json:"parameterId,omitempty"`
1864
1865	// Text: Required. The text for this part.
1866	Text string `json:"text,omitempty"`
1867
1868	// ForceSendFields is a list of field names (e.g. "ParameterId") to
1869	// unconditionally include in API requests. By default, fields with
1870	// empty or default values are omitted from API requests. However, any
1871	// non-pointer, non-interface field appearing in ForceSendFields will be
1872	// sent to the server regardless of whether the field is empty or not.
1873	// This may be used to include empty fields in Patch requests.
1874	ForceSendFields []string `json:"-"`
1875
1876	// NullFields is a list of field names (e.g. "ParameterId") to include
1877	// in API requests with the JSON null value. By default, fields with
1878	// empty values are omitted from API requests. However, any field with
1879	// an empty value appearing in NullFields will be sent to the server as
1880	// null. It is an error if a field in this list has a non-empty value.
1881	// This may be used to include null fields in Patch requests.
1882	NullFields []string `json:"-"`
1883}
1884
1885func (s *GoogleCloudDialogflowCxV3IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
1886	type NoMethod GoogleCloudDialogflowCxV3IntentTrainingPhrasePart
1887	raw := NoMethod(*s)
1888	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1889}
1890
1891// GoogleCloudDialogflowCxV3Page: A Dialogflow CX conversation (session)
1892// can be described and visualized as a state machine. The states of a
1893// CX session are represented by pages. For each flow, you define many
1894// pages, where your combined pages can handle a complete conversation
1895// on the topics the flow is designed for. At any given moment, exactly
1896// one page is the current page, the current page is considered active,
1897// and the flow associated with that page is considered active. Every
1898// flow has a special start page. When a flow initially becomes active,
1899// the start page page becomes the current page. For each conversational
1900// turn, the current page will either stay the same or transition to
1901// another page. You configure each page to collect information from the
1902// end-user that is relevant for the conversational state represented by
1903// the page. For more information, see the Page guide
1904// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
1905type GoogleCloudDialogflowCxV3Page struct {
1906	// DisplayName: Required. The human-readable name of the page, unique
1907	// within the agent.
1908	DisplayName string `json:"displayName,omitempty"`
1909
1910	// EntryFulfillment: The fulfillment to call when the session is
1911	// entering the page.
1912	EntryFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"entryFulfillment,omitempty"`
1913
1914	// EventHandlers: Handlers associated with the page to handle events
1915	// such as webhook errors, no match or no input.
1916	EventHandlers []*GoogleCloudDialogflowCxV3EventHandler `json:"eventHandlers,omitempty"`
1917
1918	// Form: The form associated with the page, used for collecting
1919	// parameters relevant to the page.
1920	Form *GoogleCloudDialogflowCxV3Form `json:"form,omitempty"`
1921
1922	// Name: The unique identifier of the page. Required for the
1923	// Pages.UpdatePage method. Pages.CreatePage populates the name
1924	// automatically. Format: `projects//locations//agents//flows//pages/`.
1925	Name string `json:"name,omitempty"`
1926
1927	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
1928	// associated with the page. Transition route groups must be unique
1929	// within a page. * If multiple transition routes within a page scope
1930	// refer to the same intent, then the precedence order is: page's
1931	// transition route -> page's transition route group -> flow's
1932	// transition routes. * If multiple transition route groups within a
1933	// page contain the same intent, then the first group in the ordered
1934	// list takes precedence.
1935	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
1936	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
1937
1938	// TransitionRoutes: A list of transitions for the transition rules of
1939	// this page. They route the conversation to another page in the same
1940	// flow, or another flow. When we are in a certain page, the
1941	// TransitionRoutes are evalauted in the following order: *
1942	// TransitionRoutes defined in the page with intent specified. *
1943	// TransitionRoutes defined in the transition route groups with intent
1944	// specified. * TransitionRoutes defined in flow with intent specified.
1945	// * TransitionRoutes defined in the transition route groups with intent
1946	// specified. * TransitionRoutes defined in the page with only condition
1947	// specified. * TransitionRoutes defined in the transition route groups
1948	// with only condition specified.
1949	TransitionRoutes []*GoogleCloudDialogflowCxV3TransitionRoute `json:"transitionRoutes,omitempty"`
1950
1951	// ForceSendFields is a list of field names (e.g. "DisplayName") to
1952	// unconditionally include in API requests. By default, fields with
1953	// empty or default values are omitted from API requests. However, any
1954	// non-pointer, non-interface field appearing in ForceSendFields will be
1955	// sent to the server regardless of whether the field is empty or not.
1956	// This may be used to include empty fields in Patch requests.
1957	ForceSendFields []string `json:"-"`
1958
1959	// NullFields is a list of field names (e.g. "DisplayName") to include
1960	// in API requests with the JSON null value. By default, fields with
1961	// empty values are omitted from API requests. However, any field with
1962	// an empty value appearing in NullFields will be sent to the server as
1963	// null. It is an error if a field in this list has a non-empty value.
1964	// This may be used to include null fields in Patch requests.
1965	NullFields []string `json:"-"`
1966}
1967
1968func (s *GoogleCloudDialogflowCxV3Page) MarshalJSON() ([]byte, error) {
1969	type NoMethod GoogleCloudDialogflowCxV3Page
1970	raw := NoMethod(*s)
1971	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
1972}
1973
1974// GoogleCloudDialogflowCxV3PageInfo: Represents page information
1975// communicated to and from the webhook.
1976type GoogleCloudDialogflowCxV3PageInfo struct {
1977	// CurrentPage: Always present for WebhookRequest. Ignored for
1978	// WebhookResponse. The unique identifier of the current page. Format:
1979	// `projects//locations//agents//flows//pages/`.
1980	CurrentPage string `json:"currentPage,omitempty"`
1981
1982	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
1983	// Information about the form.
1984	FormInfo *GoogleCloudDialogflowCxV3PageInfoFormInfo `json:"formInfo,omitempty"`
1985
1986	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
1987	// unconditionally include in API requests. By default, fields with
1988	// empty or default values are omitted from API requests. However, any
1989	// non-pointer, non-interface field appearing in ForceSendFields will be
1990	// sent to the server regardless of whether the field is empty or not.
1991	// This may be used to include empty fields in Patch requests.
1992	ForceSendFields []string `json:"-"`
1993
1994	// NullFields is a list of field names (e.g. "CurrentPage") to include
1995	// in API requests with the JSON null value. By default, fields with
1996	// empty values are omitted from API requests. However, any field with
1997	// an empty value appearing in NullFields will be sent to the server as
1998	// null. It is an error if a field in this list has a non-empty value.
1999	// This may be used to include null fields in Patch requests.
2000	NullFields []string `json:"-"`
2001}
2002
2003func (s *GoogleCloudDialogflowCxV3PageInfo) MarshalJSON() ([]byte, error) {
2004	type NoMethod GoogleCloudDialogflowCxV3PageInfo
2005	raw := NoMethod(*s)
2006	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2007}
2008
2009// GoogleCloudDialogflowCxV3PageInfoFormInfo: Represents form
2010// information.
2011type GoogleCloudDialogflowCxV3PageInfoFormInfo struct {
2012	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
2013	// The parameters contained in the form. Note that the webhook cannot
2014	// add or remove any form parameter.
2015	ParameterInfo []*GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
2016
2017	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
2018	// unconditionally include in API requests. By default, fields with
2019	// empty or default values are omitted from API requests. However, any
2020	// non-pointer, non-interface field appearing in ForceSendFields will be
2021	// sent to the server regardless of whether the field is empty or not.
2022	// This may be used to include empty fields in Patch requests.
2023	ForceSendFields []string `json:"-"`
2024
2025	// NullFields is a list of field names (e.g. "ParameterInfo") to include
2026	// in API requests with the JSON null value. By default, fields with
2027	// empty values are omitted from API requests. However, any field with
2028	// an empty value appearing in NullFields will be sent to the server as
2029	// null. It is an error if a field in this list has a non-empty value.
2030	// This may be used to include null fields in Patch requests.
2031	NullFields []string `json:"-"`
2032}
2033
2034func (s *GoogleCloudDialogflowCxV3PageInfoFormInfo) MarshalJSON() ([]byte, error) {
2035	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfo
2036	raw := NoMethod(*s)
2037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2038}
2039
2040// GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo: Represents
2041// parameter information.
2042type GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo struct {
2043	// DisplayName: Always present for WebhookRequest. Required for
2044	// WebhookResponse. The human-readable name of the parameter, unique
2045	// within the form. This field cannot be modified by the webhook.
2046	DisplayName string `json:"displayName,omitempty"`
2047
2048	// JustCollected: Optional for WebhookRequest. Ignored for
2049	// WebhookResponse. Indicates if the parameter value was just collected
2050	// on the last conversation turn.
2051	JustCollected bool `json:"justCollected,omitempty"`
2052
2053	// Required: Optional for both WebhookRequest and WebhookResponse.
2054	// Indicates whether the parameter is required. Optional parameters will
2055	// not trigger prompts; however, they are filled if the user specifies
2056	// them. Required parameters must be filled before form filling
2057	// concludes.
2058	Required bool `json:"required,omitempty"`
2059
2060	// State: Always present for WebhookRequest. Required for
2061	// WebhookResponse. The state of the parameter. This field can be set to
2062	// INVALID by the webhook to invalidate the parameter; other values set
2063	// by the webhook will be ignored.
2064	//
2065	// Possible values:
2066	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
2067	// never used.
2068	//   "EMPTY" - Indicates that the parameter does not have a value.
2069	//   "INVALID" - Indicates that the parameter value is invalid. This
2070	// field can be used by the webhook to invalidate the parameter and ask
2071	// the server to collect it from the user again.
2072	//   "FILLED" - Indicates that the parameter has a value.
2073	State string `json:"state,omitempty"`
2074
2075	// Value: Optional for both WebhookRequest and WebhookResponse. The
2076	// value of the parameter. This field can be set by the webhook to
2077	// change the parameter value.
2078	Value interface{} `json:"value,omitempty"`
2079
2080	// ForceSendFields is a list of field names (e.g. "DisplayName") to
2081	// unconditionally include in API requests. By default, fields with
2082	// empty or default values are omitted from API requests. However, any
2083	// non-pointer, non-interface field appearing in ForceSendFields will be
2084	// sent to the server regardless of whether the field is empty or not.
2085	// This may be used to include empty fields in Patch requests.
2086	ForceSendFields []string `json:"-"`
2087
2088	// NullFields is a list of field names (e.g. "DisplayName") to include
2089	// in API requests with the JSON null value. By default, fields with
2090	// empty values are omitted from API requests. However, any field with
2091	// an empty value appearing in NullFields will be sent to the server as
2092	// null. It is an error if a field in this list has a non-empty value.
2093	// This may be used to include null fields in Patch requests.
2094	NullFields []string `json:"-"`
2095}
2096
2097func (s *GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
2098	type NoMethod GoogleCloudDialogflowCxV3PageInfoFormInfoParameterInfo
2099	raw := NoMethod(*s)
2100	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2101}
2102
2103// GoogleCloudDialogflowCxV3QueryInput: Represents the query input. It
2104// can contain one of: 1. A conversational query in the form of text. 2.
2105// An intent query that specifies which intent to trigger. 3. Natural
2106// language speech audio to be processed. 4. An event to be triggered.
2107type GoogleCloudDialogflowCxV3QueryInput struct {
2108	// Audio: The natural language speech audio to be processed.
2109	Audio *GoogleCloudDialogflowCxV3AudioInput `json:"audio,omitempty"`
2110
2111	// Dtmf: The DTMF event to be handled.
2112	Dtmf *GoogleCloudDialogflowCxV3DtmfInput `json:"dtmf,omitempty"`
2113
2114	// Event: The event to be triggered.
2115	Event *GoogleCloudDialogflowCxV3EventInput `json:"event,omitempty"`
2116
2117	// Intent: The intent to be triggered.
2118	Intent *GoogleCloudDialogflowCxV3IntentInput `json:"intent,omitempty"`
2119
2120	// LanguageCode: Required. The language of the input. See Language
2121	// Support
2122	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
2123	// a list of the currently supported language codes. Note that queries
2124	// in the same session do not necessarily need to specify the same
2125	// language.
2126	LanguageCode string `json:"languageCode,omitempty"`
2127
2128	// Text: The natural language text to be processed.
2129	Text *GoogleCloudDialogflowCxV3TextInput `json:"text,omitempty"`
2130
2131	// ForceSendFields is a list of field names (e.g. "Audio") to
2132	// unconditionally include in API requests. By default, fields with
2133	// empty or default values are omitted from API requests. However, any
2134	// non-pointer, non-interface field appearing in ForceSendFields will be
2135	// sent to the server regardless of whether the field is empty or not.
2136	// This may be used to include empty fields in Patch requests.
2137	ForceSendFields []string `json:"-"`
2138
2139	// NullFields is a list of field names (e.g. "Audio") to include in API
2140	// requests with the JSON null value. By default, fields with empty
2141	// values are omitted from API requests. However, any field with an
2142	// empty value appearing in NullFields will be sent to the server as
2143	// null. It is an error if a field in this list has a non-empty value.
2144	// This may be used to include null fields in Patch requests.
2145	NullFields []string `json:"-"`
2146}
2147
2148func (s *GoogleCloudDialogflowCxV3QueryInput) MarshalJSON() ([]byte, error) {
2149	type NoMethod GoogleCloudDialogflowCxV3QueryInput
2150	raw := NoMethod(*s)
2151	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2152}
2153
2154// GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata: Metadata
2155// for ReloadDocument operation.
2156type GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata struct {
2157	// GenericMetadata: The generic information of the operation.
2158	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
2159
2160	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
2161	// unconditionally include in API requests. By default, fields with
2162	// empty or default values are omitted from API requests. However, any
2163	// non-pointer, non-interface field appearing in ForceSendFields will be
2164	// sent to the server regardless of whether the field is empty or not.
2165	// This may be used to include empty fields in Patch requests.
2166	ForceSendFields []string `json:"-"`
2167
2168	// NullFields is a list of field names (e.g. "GenericMetadata") to
2169	// include in API requests with the JSON null value. By default, fields
2170	// with empty values are omitted from API requests. However, any field
2171	// with an empty value appearing in NullFields will be sent to the
2172	// server as null. It is an error if a field in this list has a
2173	// non-empty value. This may be used to include null fields in Patch
2174	// requests.
2175	NullFields []string `json:"-"`
2176}
2177
2178func (s *GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
2179	type NoMethod GoogleCloudDialogflowCxV3ReloadDocumentOperationMetadata
2180	raw := NoMethod(*s)
2181	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2182}
2183
2184// GoogleCloudDialogflowCxV3ResponseMessage: Represents a response
2185// message that can be returned by a conversational agent. Response
2186// messages are also used for output audio synthesis. The approach is as
2187// follows: * If at least one OutputAudioText response is present, then
2188// all OutputAudioText responses are linearly concatenated, and the
2189// result is used for output audio synthesis. * If the OutputAudioText
2190// responses are a mixture of text and SSML, then the concatenated
2191// result is treated as SSML; otherwise, the result is treated as either
2192// text or SSML as appropriate. The agent designer should ideally use
2193// either text or SSML consistently throughout the bot design. *
2194// Otherwise, all Text responses are linearly concatenated, and the
2195// result is used for output audio synthesis. This approach allows for
2196// more sophisticated user experience scenarios, where the text
2197// displayed to the user may differ from what is heard.
2198type GoogleCloudDialogflowCxV3ResponseMessage struct {
2199	// ConversationSuccess: Indicates that the conversation succeeded.
2200	ConversationSuccess *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
2201
2202	// EndInteraction: Output only. A signal that indicates the interaction
2203	// with the Dialogflow agent has ended. This message is generated by
2204	// Dialogflow only when the conversation reaches `END_SESSION` page. It
2205	// is not supposed to be defined by the user. It's guaranteed that there
2206	// is at most one such message in each response.
2207	EndInteraction *GoogleCloudDialogflowCxV3ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
2208
2209	// LiveAgentHandoff: Hands off conversation to a human agent.
2210	LiveAgentHandoff *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
2211
2212	// MixedAudio: Output only. An audio response message composed of both
2213	// the synthesized Dialogflow agent responses and responses defined via
2214	// play_audio. This message is generated by Dialogflow only and not
2215	// supposed to be defined by the user.
2216	MixedAudio *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
2217
2218	// OutputAudioText: A text or ssml response that is preferentially used
2219	// for TTS output audio synthesis, as described in the comment on the
2220	// ResponseMessage message.
2221	OutputAudioText *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
2222
2223	// Payload: Returns a response containing a custom, platform-specific
2224	// payload.
2225	Payload googleapi.RawMessage `json:"payload,omitempty"`
2226
2227	// PlayAudio: Signal that the client should play an audio clip hosted at
2228	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
2229	// However, Dialogflow itself does not try to read or process the URI in
2230	// any way.
2231	PlayAudio *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio `json:"playAudio,omitempty"`
2232
2233	// Text: Returns a text response.
2234	Text *GoogleCloudDialogflowCxV3ResponseMessageText `json:"text,omitempty"`
2235
2236	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
2237	// to unconditionally include in API requests. By default, fields with
2238	// empty or default values are omitted from API requests. However, any
2239	// non-pointer, non-interface field appearing in ForceSendFields will be
2240	// sent to the server regardless of whether the field is empty or not.
2241	// This may be used to include empty fields in Patch requests.
2242	ForceSendFields []string `json:"-"`
2243
2244	// NullFields is a list of field names (e.g. "ConversationSuccess") to
2245	// include in API requests with the JSON null value. By default, fields
2246	// with empty values are omitted from API requests. However, any field
2247	// with an empty value appearing in NullFields will be sent to the
2248	// server as null. It is an error if a field in this list has a
2249	// non-empty value. This may be used to include null fields in Patch
2250	// requests.
2251	NullFields []string `json:"-"`
2252}
2253
2254func (s *GoogleCloudDialogflowCxV3ResponseMessage) MarshalJSON() ([]byte, error) {
2255	type NoMethod GoogleCloudDialogflowCxV3ResponseMessage
2256	raw := NoMethod(*s)
2257	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2258}
2259
2260// GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess:
2261// Indicates that the conversation succeeded, i.e., the bot handled the
2262// issue that the customer talked to it about. Dialogflow only uses this
2263// to determine which conversations should be counted as successful and
2264// doesn't process the metadata in this message in any way. Note that
2265// Dialogflow also considers conversations that get to the conversation
2266// end page as successful even if they don't return ConversationSuccess.
2267// You may set this, for example: * In the entry_fulfillment of a Page
2268// if entering the page indicates that the conversation succeeded. * In
2269// a webhook response when you determine that you handled the customer
2270// issue.
2271type GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess struct {
2272	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
2273	// this.
2274	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
2275
2276	// ForceSendFields is a list of field names (e.g. "Metadata") to
2277	// unconditionally include in API requests. By default, fields with
2278	// empty or default values are omitted from API requests. However, any
2279	// non-pointer, non-interface field appearing in ForceSendFields will be
2280	// sent to the server regardless of whether the field is empty or not.
2281	// This may be used to include empty fields in Patch requests.
2282	ForceSendFields []string `json:"-"`
2283
2284	// NullFields is a list of field names (e.g. "Metadata") to include in
2285	// API requests with the JSON null value. By default, fields with empty
2286	// values are omitted from API requests. However, any field with an
2287	// empty value appearing in NullFields will be sent to the server as
2288	// null. It is an error if a field in this list has a non-empty value.
2289	// This may be used to include null fields in Patch requests.
2290	NullFields []string `json:"-"`
2291}
2292
2293func (s *GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
2294	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageConversationSuccess
2295	raw := NoMethod(*s)
2296	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2297}
2298
2299// GoogleCloudDialogflowCxV3ResponseMessageEndInteraction: Indicates
2300// that interaction with the Dialogflow agent has ended. This message is
2301// generated by Dialogflow only and not supposed to be defined by the
2302// user.
2303type GoogleCloudDialogflowCxV3ResponseMessageEndInteraction struct {
2304}
2305
2306// GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff: Indicates
2307// that the conversation should be handed off to a live agent.
2308// Dialogflow only uses this to determine which conversations were
2309// handed off to a human agent for measurement purposes. What else to do
2310// with this signal is up to you and your handoff procedures. You may
2311// set this, for example: * In the entry_fulfillment of a Page if
2312// entering the page indicates something went extremely wrong in the
2313// conversation. * In a webhook response when you determine that the
2314// customer issue can only be handled by a human.
2315type GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff struct {
2316	// Metadata: Custom metadata for your handoff procedure. Dialogflow
2317	// doesn't impose any structure on this.
2318	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
2319
2320	// ForceSendFields is a list of field names (e.g. "Metadata") to
2321	// unconditionally include in API requests. By default, fields with
2322	// empty or default values are omitted from API requests. However, any
2323	// non-pointer, non-interface field appearing in ForceSendFields will be
2324	// sent to the server regardless of whether the field is empty or not.
2325	// This may be used to include empty fields in Patch requests.
2326	ForceSendFields []string `json:"-"`
2327
2328	// NullFields is a list of field names (e.g. "Metadata") to include in
2329	// API requests with the JSON null value. By default, fields with empty
2330	// values are omitted from API requests. However, any field with an
2331	// empty value appearing in NullFields will be sent to the server as
2332	// null. It is an error if a field in this list has a non-empty value.
2333	// This may be used to include null fields in Patch requests.
2334	NullFields []string `json:"-"`
2335}
2336
2337func (s *GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
2338	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageLiveAgentHandoff
2339	raw := NoMethod(*s)
2340	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2341}
2342
2343// GoogleCloudDialogflowCxV3ResponseMessageMixedAudio: Represents an
2344// audio message that is composed of both segments synthesized from the
2345// Dialogflow agent prompts and ones hosted externally at the specified
2346// URIs. The external URIs are specified via play_audio. This message is
2347// generated by Dialogflow only and not supposed to be defined by the
2348// user.
2349type GoogleCloudDialogflowCxV3ResponseMessageMixedAudio struct {
2350	// Segments: Segments this audio response is composed of.
2351	Segments []*GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
2352
2353	// ForceSendFields is a list of field names (e.g. "Segments") to
2354	// unconditionally include in API requests. By default, fields with
2355	// empty or default values are omitted from API requests. However, any
2356	// non-pointer, non-interface field appearing in ForceSendFields will be
2357	// sent to the server regardless of whether the field is empty or not.
2358	// This may be used to include empty fields in Patch requests.
2359	ForceSendFields []string `json:"-"`
2360
2361	// NullFields is a list of field names (e.g. "Segments") to include in
2362	// API requests with the JSON null value. By default, fields with empty
2363	// values are omitted from API requests. However, any field with an
2364	// empty value appearing in NullFields will be sent to the server as
2365	// null. It is an error if a field in this list has a non-empty value.
2366	// This may be used to include null fields in Patch requests.
2367	NullFields []string `json:"-"`
2368}
2369
2370func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
2371	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudio
2372	raw := NoMethod(*s)
2373	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2374}
2375
2376// GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment: Represents
2377// one segment of audio.
2378type GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment struct {
2379	// AllowPlaybackInterruption: Output only. Whether the playback of this
2380	// segment can be interrupted by the end user's speech and the client
2381	// should then start the next Dialogflow request.
2382	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
2383
2384	// Audio: Raw audio synthesized from the Dialogflow agent's response
2385	// using the output config specified in the request.
2386	Audio string `json:"audio,omitempty"`
2387
2388	// Uri: Client-specific URI that points to an audio clip accessible to
2389	// the client. Dialogflow does not impose any validation on it.
2390	Uri string `json:"uri,omitempty"`
2391
2392	// ForceSendFields is a list of field names (e.g.
2393	// "AllowPlaybackInterruption") to unconditionally include in API
2394	// requests. By default, fields with empty or default values are omitted
2395	// from API requests. However, any non-pointer, non-interface field
2396	// appearing in ForceSendFields will be sent to the server regardless of
2397	// whether the field is empty or not. This may be used to include empty
2398	// fields in Patch requests.
2399	ForceSendFields []string `json:"-"`
2400
2401	// NullFields is a list of field names (e.g.
2402	// "AllowPlaybackInterruption") to include in API requests with the JSON
2403	// null value. By default, fields with empty values are omitted from API
2404	// requests. However, any field with an empty value appearing in
2405	// NullFields will be sent to the server as null. It is an error if a
2406	// field in this list has a non-empty value. This may be used to include
2407	// null fields in Patch requests.
2408	NullFields []string `json:"-"`
2409}
2410
2411func (s *GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
2412	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageMixedAudioSegment
2413	raw := NoMethod(*s)
2414	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2415}
2416
2417// GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText: A text or
2418// ssml response that is preferentially used for TTS output audio
2419// synthesis, as described in the comment on the ResponseMessage
2420// message.
2421type GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText struct {
2422	// AllowPlaybackInterruption: Output only. Whether the playback of this
2423	// message can be interrupted by the end user's speech and the client
2424	// can then starts the next Dialogflow request.
2425	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
2426
2427	// Ssml: The SSML text to be synthesized. For more information, see SSML
2428	// (/speech/text-to-speech/docs/ssml).
2429	Ssml string `json:"ssml,omitempty"`
2430
2431	// Text: The raw text to be synthesized.
2432	Text string `json:"text,omitempty"`
2433
2434	// ForceSendFields is a list of field names (e.g.
2435	// "AllowPlaybackInterruption") to unconditionally include in API
2436	// requests. By default, fields with empty or default values are omitted
2437	// from API requests. However, any non-pointer, non-interface field
2438	// appearing in ForceSendFields will be sent to the server regardless of
2439	// whether the field is empty or not. This may be used to include empty
2440	// fields in Patch requests.
2441	ForceSendFields []string `json:"-"`
2442
2443	// NullFields is a list of field names (e.g.
2444	// "AllowPlaybackInterruption") to include in API requests with the JSON
2445	// null value. By default, fields with empty values are omitted from API
2446	// requests. However, any field with an empty value appearing in
2447	// NullFields will be sent to the server as null. It is an error if a
2448	// field in this list has a non-empty value. This may be used to include
2449	// null fields in Patch requests.
2450	NullFields []string `json:"-"`
2451}
2452
2453func (s *GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
2454	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageOutputAudioText
2455	raw := NoMethod(*s)
2456	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2457}
2458
2459// GoogleCloudDialogflowCxV3ResponseMessagePlayAudio: Specifies an audio
2460// clip to be played by the client as part of the response.
2461type GoogleCloudDialogflowCxV3ResponseMessagePlayAudio struct {
2462	// AllowPlaybackInterruption: Output only. Whether the playback of this
2463	// message can be interrupted by the end user's speech and the client
2464	// can then starts the next Dialogflow request.
2465	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
2466
2467	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
2468	// any validation on this value. It is specific to the client that reads
2469	// it.
2470	AudioUri string `json:"audioUri,omitempty"`
2471
2472	// ForceSendFields is a list of field names (e.g.
2473	// "AllowPlaybackInterruption") to unconditionally include in API
2474	// requests. By default, fields with empty or default values are omitted
2475	// from API requests. However, any non-pointer, non-interface field
2476	// appearing in ForceSendFields will be sent to the server regardless of
2477	// whether the field is empty or not. This may be used to include empty
2478	// fields in Patch requests.
2479	ForceSendFields []string `json:"-"`
2480
2481	// NullFields is a list of field names (e.g.
2482	// "AllowPlaybackInterruption") to include in API requests with the JSON
2483	// null value. By default, fields with empty values are omitted from API
2484	// requests. However, any field with an empty value appearing in
2485	// NullFields will be sent to the server as null. It is an error if a
2486	// field in this list has a non-empty value. This may be used to include
2487	// null fields in Patch requests.
2488	NullFields []string `json:"-"`
2489}
2490
2491func (s *GoogleCloudDialogflowCxV3ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
2492	type NoMethod GoogleCloudDialogflowCxV3ResponseMessagePlayAudio
2493	raw := NoMethod(*s)
2494	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2495}
2496
2497// GoogleCloudDialogflowCxV3ResponseMessageText: The text response
2498// message.
2499type GoogleCloudDialogflowCxV3ResponseMessageText struct {
2500	// AllowPlaybackInterruption: Output only. Whether the playback of this
2501	// message can be interrupted by the end user's speech and the client
2502	// can then starts the next Dialogflow request.
2503	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
2504
2505	// Text: Required. A collection of text responses.
2506	Text []string `json:"text,omitempty"`
2507
2508	// ForceSendFields is a list of field names (e.g.
2509	// "AllowPlaybackInterruption") to unconditionally include in API
2510	// requests. By default, fields with empty or default values are omitted
2511	// from API requests. However, any non-pointer, non-interface field
2512	// appearing in ForceSendFields will be sent to the server regardless of
2513	// whether the field is empty or not. This may be used to include empty
2514	// fields in Patch requests.
2515	ForceSendFields []string `json:"-"`
2516
2517	// NullFields is a list of field names (e.g.
2518	// "AllowPlaybackInterruption") to include in API requests with the JSON
2519	// null value. By default, fields with empty values are omitted from API
2520	// requests. However, any field with an empty value appearing in
2521	// NullFields will be sent to the server as null. It is an error if a
2522	// field in this list has a non-empty value. This may be used to include
2523	// null fields in Patch requests.
2524	NullFields []string `json:"-"`
2525}
2526
2527func (s *GoogleCloudDialogflowCxV3ResponseMessageText) MarshalJSON() ([]byte, error) {
2528	type NoMethod GoogleCloudDialogflowCxV3ResponseMessageText
2529	raw := NoMethod(*s)
2530	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2531}
2532
2533// GoogleCloudDialogflowCxV3RunContinuousTestMetadata: Metadata returned
2534// for the Environments.RunContinuousTest long running operation.
2535type GoogleCloudDialogflowCxV3RunContinuousTestMetadata struct {
2536	// Errors: The test errors.
2537	Errors []*GoogleCloudDialogflowCxV3TestError `json:"errors,omitempty"`
2538
2539	// ForceSendFields is a list of field names (e.g. "Errors") to
2540	// unconditionally include in API requests. By default, fields with
2541	// empty or default values are omitted from API requests. However, any
2542	// non-pointer, non-interface field appearing in ForceSendFields will be
2543	// sent to the server regardless of whether the field is empty or not.
2544	// This may be used to include empty fields in Patch requests.
2545	ForceSendFields []string `json:"-"`
2546
2547	// NullFields is a list of field names (e.g. "Errors") to include in API
2548	// requests with the JSON null value. By default, fields with empty
2549	// values are omitted from API requests. However, any field with an
2550	// empty value appearing in NullFields will be sent to the server as
2551	// null. It is an error if a field in this list has a non-empty value.
2552	// This may be used to include null fields in Patch requests.
2553	NullFields []string `json:"-"`
2554}
2555
2556func (s *GoogleCloudDialogflowCxV3RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
2557	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestMetadata
2558	raw := NoMethod(*s)
2559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2560}
2561
2562// GoogleCloudDialogflowCxV3RunContinuousTestResponse: The response
2563// message for Environments.RunContinuousTest.
2564type GoogleCloudDialogflowCxV3RunContinuousTestResponse struct {
2565	// ContinuousTestResult: The result for a continuous test run.
2566	ContinuousTestResult *GoogleCloudDialogflowCxV3ContinuousTestResult `json:"continuousTestResult,omitempty"`
2567
2568	// ForceSendFields is a list of field names (e.g.
2569	// "ContinuousTestResult") to unconditionally include in API requests.
2570	// By default, fields with empty or default values are omitted from API
2571	// requests. However, any non-pointer, non-interface field appearing in
2572	// ForceSendFields will be sent to the server regardless of whether the
2573	// field is empty or not. This may be used to include empty fields in
2574	// Patch requests.
2575	ForceSendFields []string `json:"-"`
2576
2577	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
2578	// include in API requests with the JSON null value. By default, fields
2579	// with empty values are omitted from API requests. However, any field
2580	// with an empty value appearing in NullFields will be sent to the
2581	// server as null. It is an error if a field in this list has a
2582	// non-empty value. This may be used to include null fields in Patch
2583	// requests.
2584	NullFields []string `json:"-"`
2585}
2586
2587func (s *GoogleCloudDialogflowCxV3RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
2588	type NoMethod GoogleCloudDialogflowCxV3RunContinuousTestResponse
2589	raw := NoMethod(*s)
2590	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2591}
2592
2593// GoogleCloudDialogflowCxV3RunTestCaseMetadata: Metadata returned for
2594// the TestCases.RunTestCase long running operation. This message
2595// currently has no fields.
2596type GoogleCloudDialogflowCxV3RunTestCaseMetadata struct {
2597}
2598
2599// GoogleCloudDialogflowCxV3RunTestCaseResponse: The response message
2600// for TestCases.RunTestCase.
2601type GoogleCloudDialogflowCxV3RunTestCaseResponse struct {
2602	// Result: The result.
2603	Result *GoogleCloudDialogflowCxV3TestCaseResult `json:"result,omitempty"`
2604
2605	// ForceSendFields is a list of field names (e.g. "Result") to
2606	// unconditionally include in API requests. By default, fields with
2607	// empty or default values are omitted from API requests. However, any
2608	// non-pointer, non-interface field appearing in ForceSendFields will be
2609	// sent to the server regardless of whether the field is empty or not.
2610	// This may be used to include empty fields in Patch requests.
2611	ForceSendFields []string `json:"-"`
2612
2613	// NullFields is a list of field names (e.g. "Result") to include in API
2614	// requests with the JSON null value. By default, fields with empty
2615	// values are omitted from API requests. However, any field with an
2616	// empty value appearing in NullFields will be sent to the server as
2617	// null. It is an error if a field in this list has a non-empty value.
2618	// This may be used to include null fields in Patch requests.
2619	NullFields []string `json:"-"`
2620}
2621
2622func (s *GoogleCloudDialogflowCxV3RunTestCaseResponse) MarshalJSON() ([]byte, error) {
2623	type NoMethod GoogleCloudDialogflowCxV3RunTestCaseResponse
2624	raw := NoMethod(*s)
2625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2626}
2627
2628// GoogleCloudDialogflowCxV3SessionInfo: Represents session information
2629// communicated to and from the webhook.
2630type GoogleCloudDialogflowCxV3SessionInfo struct {
2631	// Parameters: Optional for WebhookRequest. Optional for
2632	// WebhookResponse. All parameters collected from forms and intents
2633	// during the session. Parameters can be created, updated, or removed by
2634	// the webhook. To remove a parameter from the session, the webhook
2635	// should explicitly set the parameter value to null in WebhookResponse.
2636	// The map is keyed by parameters' display names.
2637	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
2638
2639	// Session: Always present for WebhookRequest. Ignored for
2640	// WebhookResponse. The unique identifier of the session. This field can
2641	// be used by the webhook to identify a session. Format:
2642	// `projects//locations//agents//sessions/` or
2643	// `projects//locations//agents//environments//sessions/` if environment
2644	// is specified.
2645	Session string `json:"session,omitempty"`
2646
2647	// ForceSendFields is a list of field names (e.g. "Parameters") to
2648	// unconditionally include in API requests. By default, fields with
2649	// empty or default values are omitted from API requests. However, any
2650	// non-pointer, non-interface field appearing in ForceSendFields will be
2651	// sent to the server regardless of whether the field is empty or not.
2652	// This may be used to include empty fields in Patch requests.
2653	ForceSendFields []string `json:"-"`
2654
2655	// NullFields is a list of field names (e.g. "Parameters") to include in
2656	// API requests with the JSON null value. By default, fields with empty
2657	// values are omitted from API requests. However, any field with an
2658	// empty value appearing in NullFields will be sent to the server as
2659	// null. It is an error if a field in this list has a non-empty value.
2660	// This may be used to include null fields in Patch requests.
2661	NullFields []string `json:"-"`
2662}
2663
2664func (s *GoogleCloudDialogflowCxV3SessionInfo) MarshalJSON() ([]byte, error) {
2665	type NoMethod GoogleCloudDialogflowCxV3SessionInfo
2666	raw := NoMethod(*s)
2667	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2668}
2669
2670// GoogleCloudDialogflowCxV3TestCase: Represents a test case.
2671type GoogleCloudDialogflowCxV3TestCase struct {
2672	// CreationTime: Output only. When the test was created.
2673	CreationTime string `json:"creationTime,omitempty"`
2674
2675	// DisplayName: Required. The human-readable name of the test case,
2676	// unique within the agent. Limit of 200 characters.
2677	DisplayName string `json:"displayName,omitempty"`
2678
2679	// LastTestResult: The latest test result.
2680	LastTestResult *GoogleCloudDialogflowCxV3TestCaseResult `json:"lastTestResult,omitempty"`
2681
2682	// Name: The unique identifier of the test case.
2683	// TestCases.CreateTestCase will populate the name automatically.
2684	// Otherwise use format: `projects//locations//agents/ /testCases/`.
2685	Name string `json:"name,omitempty"`
2686
2687	// Notes: Additional freeform notes about the test case. Limit of 400
2688	// characters.
2689	Notes string `json:"notes,omitempty"`
2690
2691	// Tags: Tags are short descriptions that users may apply to test cases
2692	// for organizational and filtering purposes. Each tag should start with
2693	// "#" and has a limit of 30 characters.
2694	Tags []string `json:"tags,omitempty"`
2695
2696	// TestCaseConversationTurns: The conversation turns uttered when the
2697	// test case was created, in chronological order. These include the
2698	// canonical set of agent utterances that should occur when the agent is
2699	// working properly.
2700	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"testCaseConversationTurns,omitempty"`
2701
2702	// TestConfig: Config for the test case.
2703	TestConfig *GoogleCloudDialogflowCxV3TestConfig `json:"testConfig,omitempty"`
2704
2705	// ForceSendFields is a list of field names (e.g. "CreationTime") to
2706	// unconditionally include in API requests. By default, fields with
2707	// empty or default values are omitted from API requests. However, any
2708	// non-pointer, non-interface field appearing in ForceSendFields will be
2709	// sent to the server regardless of whether the field is empty or not.
2710	// This may be used to include empty fields in Patch requests.
2711	ForceSendFields []string `json:"-"`
2712
2713	// NullFields is a list of field names (e.g. "CreationTime") to include
2714	// in API requests with the JSON null value. By default, fields with
2715	// empty values are omitted from API requests. However, any field with
2716	// an empty value appearing in NullFields will be sent to the server as
2717	// null. It is an error if a field in this list has a non-empty value.
2718	// This may be used to include null fields in Patch requests.
2719	NullFields []string `json:"-"`
2720}
2721
2722func (s *GoogleCloudDialogflowCxV3TestCase) MarshalJSON() ([]byte, error) {
2723	type NoMethod GoogleCloudDialogflowCxV3TestCase
2724	raw := NoMethod(*s)
2725	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2726}
2727
2728// GoogleCloudDialogflowCxV3TestCaseError: Error info for importing a
2729// test.
2730type GoogleCloudDialogflowCxV3TestCaseError struct {
2731	// Status: The status associated with the test case.
2732	Status *GoogleRpcStatus `json:"status,omitempty"`
2733
2734	// TestCase: The test case.
2735	TestCase *GoogleCloudDialogflowCxV3TestCase `json:"testCase,omitempty"`
2736
2737	// ForceSendFields is a list of field names (e.g. "Status") to
2738	// unconditionally include in API requests. By default, fields with
2739	// empty or default values are omitted from API requests. However, any
2740	// non-pointer, non-interface field appearing in ForceSendFields will be
2741	// sent to the server regardless of whether the field is empty or not.
2742	// This may be used to include empty fields in Patch requests.
2743	ForceSendFields []string `json:"-"`
2744
2745	// NullFields is a list of field names (e.g. "Status") to include in API
2746	// requests with the JSON null value. By default, fields with empty
2747	// values are omitted from API requests. However, any field with an
2748	// empty value appearing in NullFields will be sent to the server as
2749	// null. It is an error if a field in this list has a non-empty value.
2750	// This may be used to include null fields in Patch requests.
2751	NullFields []string `json:"-"`
2752}
2753
2754func (s *GoogleCloudDialogflowCxV3TestCaseError) MarshalJSON() ([]byte, error) {
2755	type NoMethod GoogleCloudDialogflowCxV3TestCaseError
2756	raw := NoMethod(*s)
2757	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2758}
2759
2760// GoogleCloudDialogflowCxV3TestCaseResult: Represents a result from
2761// running a test case in an agent environment.
2762type GoogleCloudDialogflowCxV3TestCaseResult struct {
2763	// ConversationTurns: The conversation turns uttered during the test
2764	// case replay in chronological order.
2765	ConversationTurns []*GoogleCloudDialogflowCxV3ConversationTurn `json:"conversationTurns,omitempty"`
2766
2767	// Environment: Environment where the test was run. If not set, it
2768	// indicates the draft environment.
2769	Environment string `json:"environment,omitempty"`
2770
2771	// Name: The resource name for the test case result. Format:
2772	// `projects//locations//agents//testCases/ /results/`.
2773	Name string `json:"name,omitempty"`
2774
2775	// TestResult: Whether the test case passed in the agent environment.
2776	//
2777	// Possible values:
2778	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
2779	//   "PASSED" - The test passed.
2780	//   "FAILED" - The test did not pass.
2781	TestResult string `json:"testResult,omitempty"`
2782
2783	// TestTime: The time that the test was run.
2784	TestTime string `json:"testTime,omitempty"`
2785
2786	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
2787	// to unconditionally include in API requests. By default, fields with
2788	// empty or default values are omitted from API requests. However, any
2789	// non-pointer, non-interface field appearing in ForceSendFields will be
2790	// sent to the server regardless of whether the field is empty or not.
2791	// This may be used to include empty fields in Patch requests.
2792	ForceSendFields []string `json:"-"`
2793
2794	// NullFields is a list of field names (e.g. "ConversationTurns") to
2795	// include in API requests with the JSON null value. By default, fields
2796	// with empty values are omitted from API requests. However, any field
2797	// with an empty value appearing in NullFields will be sent to the
2798	// server as null. It is an error if a field in this list has a
2799	// non-empty value. This may be used to include null fields in Patch
2800	// requests.
2801	NullFields []string `json:"-"`
2802}
2803
2804func (s *GoogleCloudDialogflowCxV3TestCaseResult) MarshalJSON() ([]byte, error) {
2805	type NoMethod GoogleCloudDialogflowCxV3TestCaseResult
2806	raw := NoMethod(*s)
2807	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2808}
2809
2810// GoogleCloudDialogflowCxV3TestConfig: Represents configurations for a
2811// test case.
2812type GoogleCloudDialogflowCxV3TestConfig struct {
2813	// Flow: Flow name. If not set, default start flow is assumed. Format:
2814	// `projects//locations//agents//flows/`.
2815	Flow string `json:"flow,omitempty"`
2816
2817	// TrackingParameters: Session parameters to be compared when
2818	// calculating differences.
2819	TrackingParameters []string `json:"trackingParameters,omitempty"`
2820
2821	// ForceSendFields is a list of field names (e.g. "Flow") to
2822	// unconditionally include in API requests. By default, fields with
2823	// empty or default values are omitted from API requests. However, any
2824	// non-pointer, non-interface field appearing in ForceSendFields will be
2825	// sent to the server regardless of whether the field is empty or not.
2826	// This may be used to include empty fields in Patch requests.
2827	ForceSendFields []string `json:"-"`
2828
2829	// NullFields is a list of field names (e.g. "Flow") to include in API
2830	// requests with the JSON null value. By default, fields with empty
2831	// values are omitted from API requests. However, any field with an
2832	// empty value appearing in NullFields will be sent to the server as
2833	// null. It is an error if a field in this list has a non-empty value.
2834	// This may be used to include null fields in Patch requests.
2835	NullFields []string `json:"-"`
2836}
2837
2838func (s *GoogleCloudDialogflowCxV3TestConfig) MarshalJSON() ([]byte, error) {
2839	type NoMethod GoogleCloudDialogflowCxV3TestConfig
2840	raw := NoMethod(*s)
2841	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2842}
2843
2844// GoogleCloudDialogflowCxV3TestError: Error info for running a test.
2845type GoogleCloudDialogflowCxV3TestError struct {
2846	// Status: The status associated with the test.
2847	Status *GoogleRpcStatus `json:"status,omitempty"`
2848
2849	// TestCase: The test case resource name.
2850	TestCase string `json:"testCase,omitempty"`
2851
2852	// TestTime: The timestamp when the test was completed.
2853	TestTime string `json:"testTime,omitempty"`
2854
2855	// ForceSendFields is a list of field names (e.g. "Status") to
2856	// unconditionally include in API requests. By default, fields with
2857	// empty or default values are omitted from API requests. However, any
2858	// non-pointer, non-interface field appearing in ForceSendFields will be
2859	// sent to the server regardless of whether the field is empty or not.
2860	// This may be used to include empty fields in Patch requests.
2861	ForceSendFields []string `json:"-"`
2862
2863	// NullFields is a list of field names (e.g. "Status") to include in API
2864	// requests with the JSON null value. By default, fields with empty
2865	// values are omitted from API requests. However, any field with an
2866	// empty value appearing in NullFields will be sent to the server as
2867	// null. It is an error if a field in this list has a non-empty value.
2868	// This may be used to include null fields in Patch requests.
2869	NullFields []string `json:"-"`
2870}
2871
2872func (s *GoogleCloudDialogflowCxV3TestError) MarshalJSON() ([]byte, error) {
2873	type NoMethod GoogleCloudDialogflowCxV3TestError
2874	raw := NoMethod(*s)
2875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2876}
2877
2878// GoogleCloudDialogflowCxV3TestRunDifference: The description of
2879// differences between original and replayed agent output.
2880type GoogleCloudDialogflowCxV3TestRunDifference struct {
2881	// Description: A description of the diff, showing the actual output vs
2882	// expected output.
2883	Description string `json:"description,omitempty"`
2884
2885	// Type: The type of diff.
2886	//
2887	// Possible values:
2888	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
2889	//   "INTENT" - The intent.
2890	//   "PAGE" - The page.
2891	//   "PARAMETERS" - The parameters.
2892	//   "UTTERANCE" - The message utterance.
2893	Type string `json:"type,omitempty"`
2894
2895	// ForceSendFields is a list of field names (e.g. "Description") to
2896	// unconditionally include in API requests. By default, fields with
2897	// empty or default values are omitted from API requests. However, any
2898	// non-pointer, non-interface field appearing in ForceSendFields will be
2899	// sent to the server regardless of whether the field is empty or not.
2900	// This may be used to include empty fields in Patch requests.
2901	ForceSendFields []string `json:"-"`
2902
2903	// NullFields is a list of field names (e.g. "Description") to include
2904	// in API requests with the JSON null value. By default, fields with
2905	// empty values are omitted from API requests. However, any field with
2906	// an empty value appearing in NullFields will be sent to the server as
2907	// null. It is an error if a field in this list has a non-empty value.
2908	// This may be used to include null fields in Patch requests.
2909	NullFields []string `json:"-"`
2910}
2911
2912func (s *GoogleCloudDialogflowCxV3TestRunDifference) MarshalJSON() ([]byte, error) {
2913	type NoMethod GoogleCloudDialogflowCxV3TestRunDifference
2914	raw := NoMethod(*s)
2915	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2916}
2917
2918// GoogleCloudDialogflowCxV3TextInput: Represents the natural language
2919// text to be processed.
2920type GoogleCloudDialogflowCxV3TextInput struct {
2921	// Text: Required. The UTF-8 encoded natural language text to be
2922	// processed. Text length must not exceed 256 characters.
2923	Text string `json:"text,omitempty"`
2924
2925	// ForceSendFields is a list of field names (e.g. "Text") to
2926	// unconditionally include in API requests. By default, fields with
2927	// empty or default values are omitted from API requests. However, any
2928	// non-pointer, non-interface field appearing in ForceSendFields will be
2929	// sent to the server regardless of whether the field is empty or not.
2930	// This may be used to include empty fields in Patch requests.
2931	ForceSendFields []string `json:"-"`
2932
2933	// NullFields is a list of field names (e.g. "Text") to include in API
2934	// requests with the JSON null value. By default, fields with empty
2935	// values are omitted from API requests. However, any field with an
2936	// empty value appearing in NullFields will be sent to the server as
2937	// null. It is an error if a field in this list has a non-empty value.
2938	// This may be used to include null fields in Patch requests.
2939	NullFields []string `json:"-"`
2940}
2941
2942func (s *GoogleCloudDialogflowCxV3TextInput) MarshalJSON() ([]byte, error) {
2943	type NoMethod GoogleCloudDialogflowCxV3TextInput
2944	raw := NoMethod(*s)
2945	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
2946}
2947
2948// GoogleCloudDialogflowCxV3TransitionRoute: A transition route
2949// specifies a intent that can be matched and/or a data condition that
2950// can be evaluated during a session. When a specified transition is
2951// matched, the following actions are taken in order: * If there is a
2952// `trigger_fulfillment` associated with the transition, it will be
2953// called. * If there is a `target_page` associated with the transition,
2954// the session will transition into the specified page. * If there is a
2955// `target_flow` associated with the transition, the session will
2956// transition into the specified flow.
2957type GoogleCloudDialogflowCxV3TransitionRoute struct {
2958	// Condition: The condition to evaluate against form parameters or
2959	// session parameters. See the conditions reference
2960	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
2961	// least one of `intent` or `condition` must be specified. When both
2962	// `intent` and `condition` are specified, the transition can only
2963	// happen when both are fulfilled.
2964	Condition string `json:"condition,omitempty"`
2965
2966	// Intent: The unique identifier of an Intent. Format:
2967	// `projects//locations//agents//intents/`. Indicates that the
2968	// transition can only happen when the given intent is matched. At least
2969	// one of `intent` or `condition` must be specified. When both `intent`
2970	// and `condition` are specified, the transition can only happen when
2971	// both are fulfilled.
2972	Intent string `json:"intent,omitempty"`
2973
2974	// Name: Output only. The unique identifier of this transition route.
2975	Name string `json:"name,omitempty"`
2976
2977	// TargetFlow: The target flow to transition to. Format:
2978	// `projects//locations//agents//flows/`.
2979	TargetFlow string `json:"targetFlow,omitempty"`
2980
2981	// TargetPage: The target page to transition to. Format:
2982	// `projects//locations//agents//flows//pages/`.
2983	TargetPage string `json:"targetPage,omitempty"`
2984
2985	// TriggerFulfillment: The fulfillment to call when the condition is
2986	// satisfied. At least one of `trigger_fulfillment` and `target` must be
2987	// specified. When both are defined, `trigger_fulfillment` is executed
2988	// first.
2989	TriggerFulfillment *GoogleCloudDialogflowCxV3Fulfillment `json:"triggerFulfillment,omitempty"`
2990
2991	// ForceSendFields is a list of field names (e.g. "Condition") to
2992	// unconditionally include in API requests. By default, fields with
2993	// empty or default values are omitted from API requests. However, any
2994	// non-pointer, non-interface field appearing in ForceSendFields will be
2995	// sent to the server regardless of whether the field is empty or not.
2996	// This may be used to include empty fields in Patch requests.
2997	ForceSendFields []string `json:"-"`
2998
2999	// NullFields is a list of field names (e.g. "Condition") to include in
3000	// API requests with the JSON null value. By default, fields with empty
3001	// values are omitted from API requests. However, any field with an
3002	// empty value appearing in NullFields will be sent to the server as
3003	// null. It is an error if a field in this list has a non-empty value.
3004	// This may be used to include null fields in Patch requests.
3005	NullFields []string `json:"-"`
3006}
3007
3008func (s *GoogleCloudDialogflowCxV3TransitionRoute) MarshalJSON() ([]byte, error) {
3009	type NoMethod GoogleCloudDialogflowCxV3TransitionRoute
3010	raw := NoMethod(*s)
3011	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3012}
3013
3014// GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata: Metadata
3015// for UpdateDocument operation.
3016type GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata struct {
3017	// GenericMetadata: The generic information of the operation.
3018	GenericMetadata *GoogleCloudDialogflowCxV3GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
3019
3020	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
3021	// unconditionally include in API requests. By default, fields with
3022	// empty or default values are omitted from API requests. However, any
3023	// non-pointer, non-interface field appearing in ForceSendFields will be
3024	// sent to the server regardless of whether the field is empty or not.
3025	// This may be used to include empty fields in Patch requests.
3026	ForceSendFields []string `json:"-"`
3027
3028	// NullFields is a list of field names (e.g. "GenericMetadata") to
3029	// include in API requests with the JSON null value. By default, fields
3030	// with empty values are omitted from API requests. However, any field
3031	// with an empty value appearing in NullFields will be sent to the
3032	// server as null. It is an error if a field in this list has a
3033	// non-empty value. This may be used to include null fields in Patch
3034	// requests.
3035	NullFields []string `json:"-"`
3036}
3037
3038func (s *GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
3039	type NoMethod GoogleCloudDialogflowCxV3UpdateDocumentOperationMetadata
3040	raw := NoMethod(*s)
3041	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3042}
3043
3044// GoogleCloudDialogflowCxV3WebhookRequest: The request message for a
3045// webhook call. The request is sent as a JSON object and the field
3046// names will be presented in camel cases.
3047type GoogleCloudDialogflowCxV3WebhookRequest struct {
3048	// DetectIntentResponseId: Always present. The unique identifier of the
3049	// DetectIntentResponse that will be returned to the API caller.
3050	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
3051
3052	// FulfillmentInfo: Always present. Information about the fulfillment
3053	// that triggered this webhook call.
3054	FulfillmentInfo *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
3055
3056	// IntentInfo: Information about the last matched intent.
3057	IntentInfo *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
3058
3059	// LanguageCode: The language code specified in the original request.
3060	LanguageCode string `json:"languageCode,omitempty"`
3061
3062	// Messages: The list of rich message responses to present to the user.
3063	// Webhook can choose to append or replace this list in
3064	// WebhookResponse.fulfillment_response;
3065	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
3066
3067	// PageInfo: Information about page status.
3068	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
3069
3070	// Payload: Custom data set in QueryParameters.payload.
3071	Payload googleapi.RawMessage `json:"payload,omitempty"`
3072
3073	// SentimentAnalysisResult: The sentiment analysis result of the current
3074	// user request. The field is filled when sentiment analysis is
3075	// configured to be enabled for the request.
3076	SentimentAnalysisResult *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
3077
3078	// SessionInfo: Information about session status.
3079	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
3080
3081	// Text: If natural language text was provided as input, this field will
3082	// contain a copy of the text.
3083	Text string `json:"text,omitempty"`
3084
3085	// Transcript: If natural language speech audio was provided as input,
3086	// this field will contain the transcript for the audio.
3087	Transcript string `json:"transcript,omitempty"`
3088
3089	// TriggerEvent: If an event was provided as input, this field will
3090	// contain the name of the event.
3091	TriggerEvent string `json:"triggerEvent,omitempty"`
3092
3093	// TriggerIntent: If an intent was provided as input, this field will
3094	// contain a copy of the intent identifier. Format:
3095	// `projects//locations//agents//intents/`.
3096	TriggerIntent string `json:"triggerIntent,omitempty"`
3097
3098	// ForceSendFields is a list of field names (e.g.
3099	// "DetectIntentResponseId") to unconditionally include in API requests.
3100	// By default, fields with empty or default values are omitted from API
3101	// requests. However, any non-pointer, non-interface field appearing in
3102	// ForceSendFields will be sent to the server regardless of whether the
3103	// field is empty or not. This may be used to include empty fields in
3104	// Patch requests.
3105	ForceSendFields []string `json:"-"`
3106
3107	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
3108	// to include in API requests with the JSON null value. By default,
3109	// fields with empty values are omitted from API requests. However, any
3110	// field with an empty value appearing in NullFields will be sent to the
3111	// server as null. It is an error if a field in this list has a
3112	// non-empty value. This may be used to include null fields in Patch
3113	// requests.
3114	NullFields []string `json:"-"`
3115}
3116
3117func (s *GoogleCloudDialogflowCxV3WebhookRequest) MarshalJSON() ([]byte, error) {
3118	type NoMethod GoogleCloudDialogflowCxV3WebhookRequest
3119	raw := NoMethod(*s)
3120	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3121}
3122
3123// GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo: Represents
3124// fulfillment information communicated to the webhook.
3125type GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo struct {
3126	// Tag: Always present. The tag used to identify which fulfillment is
3127	// being called.
3128	Tag string `json:"tag,omitempty"`
3129
3130	// ForceSendFields is a list of field names (e.g. "Tag") to
3131	// unconditionally include in API requests. By default, fields with
3132	// empty or default values are omitted from API requests. However, any
3133	// non-pointer, non-interface field appearing in ForceSendFields will be
3134	// sent to the server regardless of whether the field is empty or not.
3135	// This may be used to include empty fields in Patch requests.
3136	ForceSendFields []string `json:"-"`
3137
3138	// NullFields is a list of field names (e.g. "Tag") to include in API
3139	// requests with the JSON null value. By default, fields with empty
3140	// values are omitted from API requests. However, any field with an
3141	// empty value appearing in NullFields will be sent to the server as
3142	// null. It is an error if a field in this list has a non-empty value.
3143	// This may be used to include null fields in Patch requests.
3144	NullFields []string `json:"-"`
3145}
3146
3147func (s *GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
3148	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestFulfillmentInfo
3149	raw := NoMethod(*s)
3150	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3151}
3152
3153// GoogleCloudDialogflowCxV3WebhookRequestIntentInfo: Represents intent
3154// information communicated to the webhook.
3155type GoogleCloudDialogflowCxV3WebhookRequestIntentInfo struct {
3156	// Confidence: The confidence of the matched intent. Values range from
3157	// 0.0 (completely uncertain) to 1.0 (completely certain).
3158	Confidence float64 `json:"confidence,omitempty"`
3159
3160	// DisplayName: Always present. The display name of the last matched
3161	// intent.
3162	DisplayName string `json:"displayName,omitempty"`
3163
3164	// LastMatchedIntent: Always present. The unique identifier of the last
3165	// matched intent. Format: `projects//locations//agents//intents/`.
3166	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
3167
3168	// Parameters: Parameters identified as a result of intent matching.
3169	// This is a map of the name of the identified parameter to the value of
3170	// the parameter identified from the user's utterance. All parameters
3171	// defined in the matched intent that are identified will be surfaced
3172	// here.
3173	Parameters map[string]GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
3174
3175	// ForceSendFields is a list of field names (e.g. "Confidence") to
3176	// unconditionally include in API requests. By default, fields with
3177	// empty or default values are omitted from API requests. However, any
3178	// non-pointer, non-interface field appearing in ForceSendFields will be
3179	// sent to the server regardless of whether the field is empty or not.
3180	// This may be used to include empty fields in Patch requests.
3181	ForceSendFields []string `json:"-"`
3182
3183	// NullFields is a list of field names (e.g. "Confidence") to include in
3184	// API requests with the JSON null value. By default, fields with empty
3185	// values are omitted from API requests. However, any field with an
3186	// empty value appearing in NullFields will be sent to the server as
3187	// null. It is an error if a field in this list has a non-empty value.
3188	// This may be used to include null fields in Patch requests.
3189	NullFields []string `json:"-"`
3190}
3191
3192func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
3193	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
3194	raw := NoMethod(*s)
3195	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3196}
3197
3198func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
3199	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfo
3200	var s1 struct {
3201		Confidence gensupport.JSONFloat64 `json:"confidence"`
3202		*NoMethod
3203	}
3204	s1.NoMethod = (*NoMethod)(s)
3205	if err := json.Unmarshal(data, &s1); err != nil {
3206		return err
3207	}
3208	s.Confidence = float64(s1.Confidence)
3209	return nil
3210}
3211
3212// GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue:
3213//  Represents a value for an intent parameter.
3214type GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue struct {
3215	// OriginalValue: Always present. Original text value extracted from
3216	// user utterance.
3217	OriginalValue string `json:"originalValue,omitempty"`
3218
3219	// ResolvedValue: Always present. Structured value for the parameter
3220	// extracted from user utterance.
3221	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
3222
3223	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
3224	// unconditionally include in API requests. By default, fields with
3225	// empty or default values are omitted from API requests. However, any
3226	// non-pointer, non-interface field appearing in ForceSendFields will be
3227	// sent to the server regardless of whether the field is empty or not.
3228	// This may be used to include empty fields in Patch requests.
3229	ForceSendFields []string `json:"-"`
3230
3231	// NullFields is a list of field names (e.g. "OriginalValue") to include
3232	// in API requests with the JSON null value. By default, fields with
3233	// empty values are omitted from API requests. However, any field with
3234	// an empty value appearing in NullFields will be sent to the server as
3235	// null. It is an error if a field in this list has a non-empty value.
3236	// This may be used to include null fields in Patch requests.
3237	NullFields []string `json:"-"`
3238}
3239
3240func (s *GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
3241	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestIntentInfoIntentParameterValue
3242	raw := NoMethod(*s)
3243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3244}
3245
3246// GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult:
3247// Represents the result of sentiment analysis.
3248type GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult struct {
3249	// Magnitude: A non-negative number in the [0, +inf) range, which
3250	// represents the absolute magnitude of sentiment, regardless of score
3251	// (positive or negative).
3252	Magnitude float64 `json:"magnitude,omitempty"`
3253
3254	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
3255	// (positive sentiment).
3256	Score float64 `json:"score,omitempty"`
3257
3258	// ForceSendFields is a list of field names (e.g. "Magnitude") to
3259	// unconditionally include in API requests. By default, fields with
3260	// empty or default values are omitted from API requests. However, any
3261	// non-pointer, non-interface field appearing in ForceSendFields will be
3262	// sent to the server regardless of whether the field is empty or not.
3263	// This may be used to include empty fields in Patch requests.
3264	ForceSendFields []string `json:"-"`
3265
3266	// NullFields is a list of field names (e.g. "Magnitude") to include in
3267	// API requests with the JSON null value. By default, fields with empty
3268	// values are omitted from API requests. However, any field with an
3269	// empty value appearing in NullFields will be sent to the server as
3270	// null. It is an error if a field in this list has a non-empty value.
3271	// This may be used to include null fields in Patch requests.
3272	NullFields []string `json:"-"`
3273}
3274
3275func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
3276	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
3277	raw := NoMethod(*s)
3278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3279}
3280
3281func (s *GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
3282	type NoMethod GoogleCloudDialogflowCxV3WebhookRequestSentimentAnalysisResult
3283	var s1 struct {
3284		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
3285		Score     gensupport.JSONFloat64 `json:"score"`
3286		*NoMethod
3287	}
3288	s1.NoMethod = (*NoMethod)(s)
3289	if err := json.Unmarshal(data, &s1); err != nil {
3290		return err
3291	}
3292	s.Magnitude = float64(s1.Magnitude)
3293	s.Score = float64(s1.Score)
3294	return nil
3295}
3296
3297// GoogleCloudDialogflowCxV3WebhookResponse: The response message for a
3298// webhook call.
3299type GoogleCloudDialogflowCxV3WebhookResponse struct {
3300	// FulfillmentResponse: The fulfillment response to send to the user.
3301	// This field can be omitted by the webhook if it does not intend to
3302	// send any response to the user.
3303	FulfillmentResponse *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
3304
3305	// PageInfo: Information about page status. This field can be omitted by
3306	// the webhook if it does not intend to modify page status.
3307	PageInfo *GoogleCloudDialogflowCxV3PageInfo `json:"pageInfo,omitempty"`
3308
3309	// Payload: Value to append directly to QueryResult.webhook_payloads.
3310	Payload googleapi.RawMessage `json:"payload,omitempty"`
3311
3312	// SessionInfo: Information about session status. This field can be
3313	// omitted by the webhook if it does not intend to modify session
3314	// status.
3315	SessionInfo *GoogleCloudDialogflowCxV3SessionInfo `json:"sessionInfo,omitempty"`
3316
3317	// TargetFlow: The target flow to transition to. Format:
3318	// `projects//locations//agents//flows/`.
3319	TargetFlow string `json:"targetFlow,omitempty"`
3320
3321	// TargetPage: The target page to transition to. Format:
3322	// `projects//locations//agents//flows//pages/`.
3323	TargetPage string `json:"targetPage,omitempty"`
3324
3325	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
3326	// to unconditionally include in API requests. By default, fields with
3327	// empty or default values are omitted from API requests. However, any
3328	// non-pointer, non-interface field appearing in ForceSendFields will be
3329	// sent to the server regardless of whether the field is empty or not.
3330	// This may be used to include empty fields in Patch requests.
3331	ForceSendFields []string `json:"-"`
3332
3333	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
3334	// include in API requests with the JSON null value. By default, fields
3335	// with empty values are omitted from API requests. However, any field
3336	// with an empty value appearing in NullFields will be sent to the
3337	// server as null. It is an error if a field in this list has a
3338	// non-empty value. This may be used to include null fields in Patch
3339	// requests.
3340	NullFields []string `json:"-"`
3341}
3342
3343func (s *GoogleCloudDialogflowCxV3WebhookResponse) MarshalJSON() ([]byte, error) {
3344	type NoMethod GoogleCloudDialogflowCxV3WebhookResponse
3345	raw := NoMethod(*s)
3346	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3347}
3348
3349// GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse:
3350// Represents a fulfillment response to the user.
3351type GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse struct {
3352	// MergeBehavior: Merge behavior for `messages`.
3353	//
3354	// Possible values:
3355	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
3356	// used.
3357	//   "APPEND" - `messages` will be appended to the list of messages
3358	// waiting to be sent to the user.
3359	//   "REPLACE" - `messages` will replace the list of messages waiting to
3360	// be sent to the user.
3361	MergeBehavior string `json:"mergeBehavior,omitempty"`
3362
3363	// Messages: The list of rich message responses to present to the user.
3364	Messages []*GoogleCloudDialogflowCxV3ResponseMessage `json:"messages,omitempty"`
3365
3366	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
3367	// unconditionally include in API requests. By default, fields with
3368	// empty or default values are omitted from API requests. However, any
3369	// non-pointer, non-interface field appearing in ForceSendFields will be
3370	// sent to the server regardless of whether the field is empty or not.
3371	// This may be used to include empty fields in Patch requests.
3372	ForceSendFields []string `json:"-"`
3373
3374	// NullFields is a list of field names (e.g. "MergeBehavior") to include
3375	// in API requests with the JSON null value. By default, fields with
3376	// empty values are omitted from API requests. However, any field with
3377	// an empty value appearing in NullFields will be sent to the server as
3378	// null. It is an error if a field in this list has a non-empty value.
3379	// This may be used to include null fields in Patch requests.
3380	NullFields []string `json:"-"`
3381}
3382
3383func (s *GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
3384	type NoMethod GoogleCloudDialogflowCxV3WebhookResponseFulfillmentResponse
3385	raw := NoMethod(*s)
3386	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3387}
3388
3389// GoogleCloudDialogflowCxV3beta1AdvancedSettings: Hierarchical advanced
3390// settings for agent/flow/page/fulfillment/parameter. Settings exposed
3391// at lower level overrides the settings exposed at higher level.
3392// Hierarchy: Agent->Flow->Page->Fulfillment/Parameter.
3393type GoogleCloudDialogflowCxV3beta1AdvancedSettings struct {
3394	// LoggingSettings: Settings for logging. Settings for Dialogflow
3395	// History, Contact Center messages, StackDriver logs, and speech
3396	// logging. Exposed at the following levels: - Agent level.
3397	LoggingSettings *GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings `json:"loggingSettings,omitempty"`
3398
3399	// ForceSendFields is a list of field names (e.g. "LoggingSettings") to
3400	// unconditionally include in API requests. By default, fields with
3401	// empty or default values are omitted from API requests. However, any
3402	// non-pointer, non-interface field appearing in ForceSendFields will be
3403	// sent to the server regardless of whether the field is empty or not.
3404	// This may be used to include empty fields in Patch requests.
3405	ForceSendFields []string `json:"-"`
3406
3407	// NullFields is a list of field names (e.g. "LoggingSettings") to
3408	// include in API requests with the JSON null value. By default, fields
3409	// with empty values are omitted from API requests. However, any field
3410	// with an empty value appearing in NullFields will be sent to the
3411	// server as null. It is an error if a field in this list has a
3412	// non-empty value. This may be used to include null fields in Patch
3413	// requests.
3414	NullFields []string `json:"-"`
3415}
3416
3417func (s *GoogleCloudDialogflowCxV3beta1AdvancedSettings) MarshalJSON() ([]byte, error) {
3418	type NoMethod GoogleCloudDialogflowCxV3beta1AdvancedSettings
3419	raw := NoMethod(*s)
3420	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3421}
3422
3423// GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings: Define
3424// behaviors on logging.
3425type GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings struct {
3426	// EnableInteractionLogging: If true, DF Interaction logging is
3427	// currently enabled.
3428	EnableInteractionLogging bool `json:"enableInteractionLogging,omitempty"`
3429
3430	// EnableStackdriverLogging: If true, StackDriver logging is currently
3431	// enabled.
3432	EnableStackdriverLogging bool `json:"enableStackdriverLogging,omitempty"`
3433
3434	// ForceSendFields is a list of field names (e.g.
3435	// "EnableInteractionLogging") to unconditionally include in API
3436	// requests. By default, fields with empty or default values are omitted
3437	// from API requests. However, any non-pointer, non-interface field
3438	// appearing in ForceSendFields will be sent to the server regardless of
3439	// whether the field is empty or not. This may be used to include empty
3440	// fields in Patch requests.
3441	ForceSendFields []string `json:"-"`
3442
3443	// NullFields is a list of field names (e.g. "EnableInteractionLogging")
3444	// to include in API requests with the JSON null value. By default,
3445	// fields with empty values are omitted from API requests. However, any
3446	// field with an empty value appearing in NullFields will be sent to the
3447	// server as null. It is an error if a field in this list has a
3448	// non-empty value. This may be used to include null fields in Patch
3449	// requests.
3450	NullFields []string `json:"-"`
3451}
3452
3453func (s *GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings) MarshalJSON() ([]byte, error) {
3454	type NoMethod GoogleCloudDialogflowCxV3beta1AdvancedSettingsLoggingSettings
3455	raw := NoMethod(*s)
3456	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3457}
3458
3459// GoogleCloudDialogflowCxV3beta1Agent: Agents are best described as
3460// Natural Language Understanding (NLU) modules that transform user
3461// requests into actionable data. You can include agents in your app,
3462// product, or service to determine user intent and respond to the user
3463// in a natural way. After you create an agent, you can add Intents,
3464// Entity Types, Flows, Fulfillments, Webhooks, and so on to manage the
3465// conversation flows..
3466type GoogleCloudDialogflowCxV3beta1Agent struct {
3467	// AdvancedSettings: Hierarchical advanced settings for this agent. The
3468	// settings exposed at the lower level overrides the settings exposed at
3469	// the higher level.
3470	AdvancedSettings *GoogleCloudDialogflowCxV3beta1AdvancedSettings `json:"advancedSettings,omitempty"`
3471
3472	// AvatarUri: The URI of the agent's avatar. Avatars are used throughout
3473	// the Dialogflow console and in the self-hosted Web Demo
3474	// (https://cloud.google.com/dialogflow/docs/integrations/web-demo)
3475	// integration.
3476	AvatarUri string `json:"avatarUri,omitempty"`
3477
3478	// DefaultLanguageCode: Required. Immutable. The default language of the
3479	// agent as a language tag. See Language Support
3480	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
3481	// a list of the currently supported language codes. This field cannot
3482	// be set by the Agents.UpdateAgent method.
3483	DefaultLanguageCode string `json:"defaultLanguageCode,omitempty"`
3484
3485	// Description: The description of the agent. The maximum length is 500
3486	// characters. If exceeded, the request is rejected.
3487	Description string `json:"description,omitempty"`
3488
3489	// DisplayName: Required. The human-readable name of the agent, unique
3490	// within the location.
3491	DisplayName string `json:"displayName,omitempty"`
3492
3493	// EnableSpellCorrection: Indicates if automatic spell correction is
3494	// enabled in detect intent requests.
3495	EnableSpellCorrection bool `json:"enableSpellCorrection,omitempty"`
3496
3497	// EnableStackdriverLogging: Indicates if stackdriver logging is enabled
3498	// for the agent. Please use agent.advanced_settings instead.
3499	EnableStackdriverLogging bool `json:"enableStackdriverLogging,omitempty"`
3500
3501	// Name: The unique identifier of the agent. Required for the
3502	// Agents.UpdateAgent method. Agents.CreateAgent populates the name
3503	// automatically. Format: `projects//locations//agents/`.
3504	Name string `json:"name,omitempty"`
3505
3506	// SecuritySettings: Name of the SecuritySettings reference for the
3507	// agent. Format: `projects//locations//securitySettings/`.
3508	SecuritySettings string `json:"securitySettings,omitempty"`
3509
3510	// SpeechToTextSettings: Speech recognition related settings.
3511	SpeechToTextSettings *GoogleCloudDialogflowCxV3beta1SpeechToTextSettings `json:"speechToTextSettings,omitempty"`
3512
3513	// StartFlow: Immutable. Name of the start flow in this agent. A start
3514	// flow will be automatically created when the agent is created, and can
3515	// only be deleted by deleting the agent. Format:
3516	// `projects//locations//agents//flows/`.
3517	StartFlow string `json:"startFlow,omitempty"`
3518
3519	// SupportedLanguageCodes: The list of all languages supported by the
3520	// agent (except for the `default_language_code`).
3521	SupportedLanguageCodes []string `json:"supportedLanguageCodes,omitempty"`
3522
3523	// TimeZone: Required. The time zone of the agent from the time zone
3524	// database (https://www.iana.org/time-zones), e.g., America/New_York,
3525	// Europe/Paris.
3526	TimeZone string `json:"timeZone,omitempty"`
3527
3528	// ServerResponse contains the HTTP response code and headers from the
3529	// server.
3530	googleapi.ServerResponse `json:"-"`
3531
3532	// ForceSendFields is a list of field names (e.g. "AdvancedSettings") to
3533	// unconditionally include in API requests. By default, fields with
3534	// empty or default values are omitted from API requests. However, any
3535	// non-pointer, non-interface field appearing in ForceSendFields will be
3536	// sent to the server regardless of whether the field is empty or not.
3537	// This may be used to include empty fields in Patch requests.
3538	ForceSendFields []string `json:"-"`
3539
3540	// NullFields is a list of field names (e.g. "AdvancedSettings") to
3541	// include in API requests with the JSON null value. By default, fields
3542	// with empty values are omitted from API requests. However, any field
3543	// with an empty value appearing in NullFields will be sent to the
3544	// server as null. It is an error if a field in this list has a
3545	// non-empty value. This may be used to include null fields in Patch
3546	// requests.
3547	NullFields []string `json:"-"`
3548}
3549
3550func (s *GoogleCloudDialogflowCxV3beta1Agent) MarshalJSON() ([]byte, error) {
3551	type NoMethod GoogleCloudDialogflowCxV3beta1Agent
3552	raw := NoMethod(*s)
3553	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3554}
3555
3556// GoogleCloudDialogflowCxV3beta1AgentValidationResult: The response
3557// message for Agents.GetAgentValidationResult.
3558type GoogleCloudDialogflowCxV3beta1AgentValidationResult struct {
3559	// FlowValidationResults: Contains all flow validation results.
3560	FlowValidationResults []*GoogleCloudDialogflowCxV3beta1FlowValidationResult `json:"flowValidationResults,omitempty"`
3561
3562	// Name: The unique identifier of the agent validation result. Format:
3563	// `projects//locations//agents//validationResult`.
3564	Name string `json:"name,omitempty"`
3565
3566	// ServerResponse contains the HTTP response code and headers from the
3567	// server.
3568	googleapi.ServerResponse `json:"-"`
3569
3570	// ForceSendFields is a list of field names (e.g.
3571	// "FlowValidationResults") to unconditionally include in API requests.
3572	// By default, fields with empty or default values are omitted from API
3573	// requests. However, any non-pointer, non-interface field appearing in
3574	// ForceSendFields will be sent to the server regardless of whether the
3575	// field is empty or not. This may be used to include empty fields in
3576	// Patch requests.
3577	ForceSendFields []string `json:"-"`
3578
3579	// NullFields is a list of field names (e.g. "FlowValidationResults") to
3580	// include in API requests with the JSON null value. By default, fields
3581	// with empty values are omitted from API requests. However, any field
3582	// with an empty value appearing in NullFields will be sent to the
3583	// server as null. It is an error if a field in this list has a
3584	// non-empty value. This may be used to include null fields in Patch
3585	// requests.
3586	NullFields []string `json:"-"`
3587}
3588
3589func (s *GoogleCloudDialogflowCxV3beta1AgentValidationResult) MarshalJSON() ([]byte, error) {
3590	type NoMethod GoogleCloudDialogflowCxV3beta1AgentValidationResult
3591	raw := NoMethod(*s)
3592	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3593}
3594
3595// GoogleCloudDialogflowCxV3beta1AudioInput: Represents the natural
3596// speech audio to be processed.
3597type GoogleCloudDialogflowCxV3beta1AudioInput struct {
3598	// Audio: The natural language speech audio to be processed. A single
3599	// request can contain up to 1 minute of speech audio data. The
3600	// transcribed text cannot contain more than 256 bytes. For
3601	// non-streaming audio detect intent, both `config` and `audio` must be
3602	// provided. For streaming audio detect intent, `config` must be
3603	// provided in the first request and `audio` must be provided in all
3604	// following requests.
3605	Audio string `json:"audio,omitempty"`
3606
3607	// Config: Required. Instructs the speech recognizer how to process the
3608	// speech audio.
3609	Config *GoogleCloudDialogflowCxV3beta1InputAudioConfig `json:"config,omitempty"`
3610
3611	// ForceSendFields is a list of field names (e.g. "Audio") to
3612	// unconditionally include in API requests. By default, fields with
3613	// empty or default values are omitted from API requests. However, any
3614	// non-pointer, non-interface field appearing in ForceSendFields will be
3615	// sent to the server regardless of whether the field is empty or not.
3616	// This may be used to include empty fields in Patch requests.
3617	ForceSendFields []string `json:"-"`
3618
3619	// NullFields is a list of field names (e.g. "Audio") to include in API
3620	// requests with the JSON null value. By default, fields with empty
3621	// values are omitted from API requests. However, any field with an
3622	// empty value appearing in NullFields will be sent to the server as
3623	// null. It is an error if a field in this list has a non-empty value.
3624	// This may be used to include null fields in Patch requests.
3625	NullFields []string `json:"-"`
3626}
3627
3628func (s *GoogleCloudDialogflowCxV3beta1AudioInput) MarshalJSON() ([]byte, error) {
3629	type NoMethod GoogleCloudDialogflowCxV3beta1AudioInput
3630	raw := NoMethod(*s)
3631	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3632}
3633
3634// GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest: The
3635// request message for TestCases.BatchDeleteTestCases.
3636type GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest struct {
3637	// Names: Required. Format of test case names: `projects//locations/
3638	// /agents//testCases/`.
3639	Names []string `json:"names,omitempty"`
3640
3641	// ForceSendFields is a list of field names (e.g. "Names") to
3642	// unconditionally include in API requests. By default, fields with
3643	// empty or default values are omitted from API requests. However, any
3644	// non-pointer, non-interface field appearing in ForceSendFields will be
3645	// sent to the server regardless of whether the field is empty or not.
3646	// This may be used to include empty fields in Patch requests.
3647	ForceSendFields []string `json:"-"`
3648
3649	// NullFields is a list of field names (e.g. "Names") to include in API
3650	// requests with the JSON null value. By default, fields with empty
3651	// values are omitted from API requests. However, any field with an
3652	// empty value appearing in NullFields will be sent to the server as
3653	// null. It is an error if a field in this list has a non-empty value.
3654	// This may be used to include null fields in Patch requests.
3655	NullFields []string `json:"-"`
3656}
3657
3658func (s *GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest) MarshalJSON() ([]byte, error) {
3659	type NoMethod GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest
3660	raw := NoMethod(*s)
3661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3662}
3663
3664// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata: Metadata
3665// returned for the TestCases.BatchRunTestCases long running operation.
3666type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata struct {
3667	// Errors: The test errors.
3668	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
3669
3670	// ForceSendFields is a list of field names (e.g. "Errors") to
3671	// unconditionally include in API requests. By default, fields with
3672	// empty or default values are omitted from API requests. However, any
3673	// non-pointer, non-interface field appearing in ForceSendFields will be
3674	// sent to the server regardless of whether the field is empty or not.
3675	// This may be used to include empty fields in Patch requests.
3676	ForceSendFields []string `json:"-"`
3677
3678	// NullFields is a list of field names (e.g. "Errors") to include in API
3679	// requests with the JSON null value. By default, fields with empty
3680	// values are omitted from API requests. However, any field with an
3681	// empty value appearing in NullFields will be sent to the server as
3682	// null. It is an error if a field in this list has a non-empty value.
3683	// This may be used to include null fields in Patch requests.
3684	NullFields []string `json:"-"`
3685}
3686
3687func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata) MarshalJSON() ([]byte, error) {
3688	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesMetadata
3689	raw := NoMethod(*s)
3690	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3691}
3692
3693// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest: The request
3694// message for TestCases.BatchRunTestCases.
3695type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest struct {
3696	// Environment: Optional. If not set, draft environment is assumed.
3697	// Format: `projects//locations//agents//environments/`.
3698	Environment string `json:"environment,omitempty"`
3699
3700	// TestCases: Required. Format:
3701	// `projects//locations//agents//testCases/`.
3702	TestCases []string `json:"testCases,omitempty"`
3703
3704	// ForceSendFields is a list of field names (e.g. "Environment") to
3705	// unconditionally include in API requests. By default, fields with
3706	// empty or default values are omitted from API requests. However, any
3707	// non-pointer, non-interface field appearing in ForceSendFields will be
3708	// sent to the server regardless of whether the field is empty or not.
3709	// This may be used to include empty fields in Patch requests.
3710	ForceSendFields []string `json:"-"`
3711
3712	// NullFields is a list of field names (e.g. "Environment") to include
3713	// in API requests with the JSON null value. By default, fields with
3714	// empty values are omitted from API requests. However, any field with
3715	// an empty value appearing in NullFields will be sent to the server as
3716	// null. It is an error if a field in this list has a non-empty value.
3717	// This may be used to include null fields in Patch requests.
3718	NullFields []string `json:"-"`
3719}
3720
3721func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest) MarshalJSON() ([]byte, error) {
3722	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest
3723	raw := NoMethod(*s)
3724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3725}
3726
3727// GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse: The response
3728// message for TestCases.BatchRunTestCases.
3729type GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse struct {
3730	// Results: The test case results. The detailed conversation turns are
3731	// empty in this response.
3732	Results []*GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"results,omitempty"`
3733
3734	// ForceSendFields is a list of field names (e.g. "Results") to
3735	// unconditionally include in API requests. By default, fields with
3736	// empty or default values are omitted from API requests. However, any
3737	// non-pointer, non-interface field appearing in ForceSendFields will be
3738	// sent to the server regardless of whether the field is empty or not.
3739	// This may be used to include empty fields in Patch requests.
3740	ForceSendFields []string `json:"-"`
3741
3742	// NullFields is a list of field names (e.g. "Results") to include in
3743	// API requests with the JSON null value. By default, fields with empty
3744	// values are omitted from API requests. However, any field with an
3745	// empty value appearing in NullFields will be sent to the server as
3746	// null. It is an error if a field in this list has a non-empty value.
3747	// This may be used to include null fields in Patch requests.
3748	NullFields []string `json:"-"`
3749}
3750
3751func (s *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse) MarshalJSON() ([]byte, error) {
3752	type NoMethod GoogleCloudDialogflowCxV3beta1BatchRunTestCasesResponse
3753	raw := NoMethod(*s)
3754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3755}
3756
3757// GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse: The response
3758// message for TestCases.CalculateCoverage.
3759type GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse struct {
3760	// Agent: The agent to calculate coverage for. Format:
3761	// `projects//locations//agents/`.
3762	Agent string `json:"agent,omitempty"`
3763
3764	// IntentCoverage: Intent coverage.
3765	IntentCoverage *GoogleCloudDialogflowCxV3beta1IntentCoverage `json:"intentCoverage,omitempty"`
3766
3767	// RouteGroupCoverage: Transition route group coverage.
3768	RouteGroupCoverage *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage `json:"routeGroupCoverage,omitempty"`
3769
3770	// TransitionCoverage: Transition (excluding transition route groups)
3771	// coverage.
3772	TransitionCoverage *GoogleCloudDialogflowCxV3beta1TransitionCoverage `json:"transitionCoverage,omitempty"`
3773
3774	// ServerResponse contains the HTTP response code and headers from the
3775	// server.
3776	googleapi.ServerResponse `json:"-"`
3777
3778	// ForceSendFields is a list of field names (e.g. "Agent") to
3779	// unconditionally include in API requests. By default, fields with
3780	// empty or default values are omitted from API requests. However, any
3781	// non-pointer, non-interface field appearing in ForceSendFields will be
3782	// sent to the server regardless of whether the field is empty or not.
3783	// This may be used to include empty fields in Patch requests.
3784	ForceSendFields []string `json:"-"`
3785
3786	// NullFields is a list of field names (e.g. "Agent") to include in API
3787	// requests with the JSON null value. By default, fields with empty
3788	// values are omitted from API requests. However, any field with an
3789	// empty value appearing in NullFields will be sent to the server as
3790	// null. It is an error if a field in this list has a non-empty value.
3791	// This may be used to include null fields in Patch requests.
3792	NullFields []string `json:"-"`
3793}
3794
3795func (s *GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse) MarshalJSON() ([]byte, error) {
3796	type NoMethod GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse
3797	raw := NoMethod(*s)
3798	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3799}
3800
3801// GoogleCloudDialogflowCxV3beta1ContinuousTestResult: Represents a
3802// result from running a test case in an agent environment.
3803type GoogleCloudDialogflowCxV3beta1ContinuousTestResult struct {
3804	// Name: The resource name for the continuous test result. Format:
3805	// `projects//locations//agents//environments//continuousTestResults/`.
3806	Name string `json:"name,omitempty"`
3807
3808	// Result: The result of this continuous test run, i.e. whether all the
3809	// tests in this continuous test run pass or not.
3810	//
3811	// Possible values:
3812	//   "AGGREGATED_TEST_RESULT_UNSPECIFIED" - Not specified. Should never
3813	// be used.
3814	//   "PASSED" - All the tests passed.
3815	//   "FAILED" - At least one test did not pass.
3816	Result string `json:"result,omitempty"`
3817
3818	// RunTime: Time when the continuous testing run starts.
3819	RunTime string `json:"runTime,omitempty"`
3820
3821	// TestCaseResults: A list of individual test case results names in this
3822	// continuous test run.
3823	TestCaseResults []string `json:"testCaseResults,omitempty"`
3824
3825	// ForceSendFields is a list of field names (e.g. "Name") to
3826	// unconditionally include in API requests. By default, fields with
3827	// empty or default values are omitted from API requests. However, any
3828	// non-pointer, non-interface field appearing in ForceSendFields will be
3829	// sent to the server regardless of whether the field is empty or not.
3830	// This may be used to include empty fields in Patch requests.
3831	ForceSendFields []string `json:"-"`
3832
3833	// NullFields is a list of field names (e.g. "Name") to include in API
3834	// requests with the JSON null value. By default, fields with empty
3835	// values are omitted from API requests. However, any field with an
3836	// empty value appearing in NullFields will be sent to the server as
3837	// null. It is an error if a field in this list has a non-empty value.
3838	// This may be used to include null fields in Patch requests.
3839	NullFields []string `json:"-"`
3840}
3841
3842func (s *GoogleCloudDialogflowCxV3beta1ContinuousTestResult) MarshalJSON() ([]byte, error) {
3843	type NoMethod GoogleCloudDialogflowCxV3beta1ContinuousTestResult
3844	raw := NoMethod(*s)
3845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3846}
3847
3848// GoogleCloudDialogflowCxV3beta1ConversationTurn: One interaction
3849// between a human and virtual agent. The human provides some input and
3850// the virtual agent provides a response.
3851type GoogleCloudDialogflowCxV3beta1ConversationTurn struct {
3852	// UserInput: The user input.
3853	UserInput *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput `json:"userInput,omitempty"`
3854
3855	// VirtualAgentOutput: The virtual agent output.
3856	VirtualAgentOutput *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput `json:"virtualAgentOutput,omitempty"`
3857
3858	// ForceSendFields is a list of field names (e.g. "UserInput") to
3859	// unconditionally include in API requests. By default, fields with
3860	// empty or default values are omitted from API requests. However, any
3861	// non-pointer, non-interface field appearing in ForceSendFields will be
3862	// sent to the server regardless of whether the field is empty or not.
3863	// This may be used to include empty fields in Patch requests.
3864	ForceSendFields []string `json:"-"`
3865
3866	// NullFields is a list of field names (e.g. "UserInput") to include in
3867	// API requests with the JSON null value. By default, fields with empty
3868	// values are omitted from API requests. However, any field with an
3869	// empty value appearing in NullFields will be sent to the server as
3870	// null. It is an error if a field in this list has a non-empty value.
3871	// This may be used to include null fields in Patch requests.
3872	NullFields []string `json:"-"`
3873}
3874
3875func (s *GoogleCloudDialogflowCxV3beta1ConversationTurn) MarshalJSON() ([]byte, error) {
3876	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurn
3877	raw := NoMethod(*s)
3878	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3879}
3880
3881// GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput: The input
3882// from the human user.
3883type GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput struct {
3884	// EnableSentimentAnalysis: Whether sentiment analysis is enabled.
3885	EnableSentimentAnalysis bool `json:"enableSentimentAnalysis,omitempty"`
3886
3887	// InjectedParameters: Parameters that need to be injected into the
3888	// conversation during intent detection.
3889	InjectedParameters googleapi.RawMessage `json:"injectedParameters,omitempty"`
3890
3891	// Input: Supports text input, event input, dtmf input in the test case.
3892	Input *GoogleCloudDialogflowCxV3beta1QueryInput `json:"input,omitempty"`
3893
3894	// IsWebhookEnabled: If webhooks should be allowed to trigger in
3895	// response to the user utterance. Often if parameters are injected,
3896	// webhooks should not be enabled.
3897	IsWebhookEnabled bool `json:"isWebhookEnabled,omitempty"`
3898
3899	// ForceSendFields is a list of field names (e.g.
3900	// "EnableSentimentAnalysis") to unconditionally include in API
3901	// requests. By default, fields with empty or default values are omitted
3902	// from API requests. However, any non-pointer, non-interface field
3903	// appearing in ForceSendFields will be sent to the server regardless of
3904	// whether the field is empty or not. This may be used to include empty
3905	// fields in Patch requests.
3906	ForceSendFields []string `json:"-"`
3907
3908	// NullFields is a list of field names (e.g. "EnableSentimentAnalysis")
3909	// to include in API requests with the JSON null value. By default,
3910	// fields with empty values are omitted from API requests. However, any
3911	// field with an empty value appearing in NullFields will be sent to the
3912	// server as null. It is an error if a field in this list has a
3913	// non-empty value. This may be used to include null fields in Patch
3914	// requests.
3915	NullFields []string `json:"-"`
3916}
3917
3918func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput) MarshalJSON() ([]byte, error) {
3919	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnUserInput
3920	raw := NoMethod(*s)
3921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3922}
3923
3924// GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput: The
3925// output from the virtual agent.
3926type GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput struct {
3927	// CurrentPage: The Page on which the utterance was spoken. Only name
3928	// and displayName will be set.
3929	CurrentPage *GoogleCloudDialogflowCxV3beta1Page `json:"currentPage,omitempty"`
3930
3931	// DiagnosticInfo: Required. Input only. The diagnostic info output for
3932	// the turn. Required to calculate the testing coverage.
3933	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
3934
3935	// Differences: Output only. If this is part of a result conversation
3936	// turn, the list of differences between the original run and the replay
3937	// for this output, if any.
3938	Differences []*GoogleCloudDialogflowCxV3beta1TestRunDifference `json:"differences,omitempty"`
3939
3940	// SessionParameters: The session parameters available to the bot at
3941	// this point.
3942	SessionParameters googleapi.RawMessage `json:"sessionParameters,omitempty"`
3943
3944	// Status: Response error from the agent in the test result. If set,
3945	// other output is empty.
3946	Status *GoogleRpcStatus `json:"status,omitempty"`
3947
3948	// TextResponses: The text responses from the agent for the turn.
3949	TextResponses []*GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"textResponses,omitempty"`
3950
3951	// TriggeredIntent: The Intent that triggered the response. Only name
3952	// and displayName will be set.
3953	TriggeredIntent *GoogleCloudDialogflowCxV3beta1Intent `json:"triggeredIntent,omitempty"`
3954
3955	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
3956	// unconditionally include in API requests. By default, fields with
3957	// empty or default values are omitted from API requests. However, any
3958	// non-pointer, non-interface field appearing in ForceSendFields will be
3959	// sent to the server regardless of whether the field is empty or not.
3960	// This may be used to include empty fields in Patch requests.
3961	ForceSendFields []string `json:"-"`
3962
3963	// NullFields is a list of field names (e.g. "CurrentPage") to include
3964	// in API requests with the JSON null value. By default, fields with
3965	// empty values are omitted from API requests. However, any field with
3966	// an empty value appearing in NullFields will be sent to the server as
3967	// null. It is an error if a field in this list has a non-empty value.
3968	// This may be used to include null fields in Patch requests.
3969	NullFields []string `json:"-"`
3970}
3971
3972func (s *GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput) MarshalJSON() ([]byte, error) {
3973	type NoMethod GoogleCloudDialogflowCxV3beta1ConversationTurnVirtualAgentOutput
3974	raw := NoMethod(*s)
3975	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
3976}
3977
3978// GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata:
3979// Metadata for CreateDocument operation.
3980type GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata struct {
3981	// GenericMetadata: The generic information of the operation.
3982	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
3983
3984	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
3985	// unconditionally include in API requests. By default, fields with
3986	// empty or default values are omitted from API requests. However, any
3987	// non-pointer, non-interface field appearing in ForceSendFields will be
3988	// sent to the server regardless of whether the field is empty or not.
3989	// This may be used to include empty fields in Patch requests.
3990	ForceSendFields []string `json:"-"`
3991
3992	// NullFields is a list of field names (e.g. "GenericMetadata") to
3993	// include in API requests with the JSON null value. By default, fields
3994	// with empty values are omitted from API requests. However, any field
3995	// with an empty value appearing in NullFields will be sent to the
3996	// server as null. It is an error if a field in this list has a
3997	// non-empty value. This may be used to include null fields in Patch
3998	// requests.
3999	NullFields []string `json:"-"`
4000}
4001
4002func (s *GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
4003	type NoMethod GoogleCloudDialogflowCxV3beta1CreateDocumentOperationMetadata
4004	raw := NoMethod(*s)
4005	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4006}
4007
4008// GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata:
4009// Metadata associated with the long running operation for
4010// Versions.CreateVersion.
4011type GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata struct {
4012	// Version: Name of the created version. Format:
4013	// `projects//locations//agents//flows//versions/`.
4014	Version string `json:"version,omitempty"`
4015
4016	// ForceSendFields is a list of field names (e.g. "Version") to
4017	// unconditionally include in API requests. By default, fields with
4018	// empty or default values are omitted from API requests. However, any
4019	// non-pointer, non-interface field appearing in ForceSendFields will be
4020	// sent to the server regardless of whether the field is empty or not.
4021	// This may be used to include empty fields in Patch requests.
4022	ForceSendFields []string `json:"-"`
4023
4024	// NullFields is a list of field names (e.g. "Version") to include in
4025	// API requests with the JSON null value. By default, fields with empty
4026	// values are omitted from API requests. However, any field with an
4027	// empty value appearing in NullFields will be sent to the server as
4028	// null. It is an error if a field in this list has a non-empty value.
4029	// This may be used to include null fields in Patch requests.
4030	NullFields []string `json:"-"`
4031}
4032
4033func (s *GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata) MarshalJSON() ([]byte, error) {
4034	type NoMethod GoogleCloudDialogflowCxV3beta1CreateVersionOperationMetadata
4035	raw := NoMethod(*s)
4036	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4037}
4038
4039// GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata:
4040// Metadata for DeleteDocument operation.
4041type GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata struct {
4042	// GenericMetadata: The generic information of the operation.
4043	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
4044
4045	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
4046	// unconditionally include in API requests. By default, fields with
4047	// empty or default values are omitted from API requests. However, any
4048	// non-pointer, non-interface field appearing in ForceSendFields will be
4049	// sent to the server regardless of whether the field is empty or not.
4050	// This may be used to include empty fields in Patch requests.
4051	ForceSendFields []string `json:"-"`
4052
4053	// NullFields is a list of field names (e.g. "GenericMetadata") to
4054	// include in API requests with the JSON null value. By default, fields
4055	// with empty values are omitted from API requests. However, any field
4056	// with an empty value appearing in NullFields will be sent to the
4057	// server as null. It is an error if a field in this list has a
4058	// non-empty value. This may be used to include null fields in Patch
4059	// requests.
4060	NullFields []string `json:"-"`
4061}
4062
4063func (s *GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
4064	type NoMethod GoogleCloudDialogflowCxV3beta1DeleteDocumentOperationMetadata
4065	raw := NoMethod(*s)
4066	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4067}
4068
4069// GoogleCloudDialogflowCxV3beta1DetectIntentRequest: The request to
4070// detect user's intent.
4071type GoogleCloudDialogflowCxV3beta1DetectIntentRequest struct {
4072	// OutputAudioConfig: Instructs the speech synthesizer how to generate
4073	// the output audio.
4074	OutputAudioConfig *GoogleCloudDialogflowCxV3beta1OutputAudioConfig `json:"outputAudioConfig,omitempty"`
4075
4076	// QueryInput: Required. The input specification.
4077	QueryInput *GoogleCloudDialogflowCxV3beta1QueryInput `json:"queryInput,omitempty"`
4078
4079	// QueryParams: The parameters of this query.
4080	QueryParams *GoogleCloudDialogflowCxV3beta1QueryParameters `json:"queryParams,omitempty"`
4081
4082	// ForceSendFields is a list of field names (e.g. "OutputAudioConfig")
4083	// to unconditionally include in API requests. By default, fields with
4084	// empty or default values are omitted from API requests. However, any
4085	// non-pointer, non-interface field appearing in ForceSendFields will be
4086	// sent to the server regardless of whether the field is empty or not.
4087	// This may be used to include empty fields in Patch requests.
4088	ForceSendFields []string `json:"-"`
4089
4090	// NullFields is a list of field names (e.g. "OutputAudioConfig") to
4091	// include in API requests with the JSON null value. By default, fields
4092	// with empty values are omitted from API requests. However, any field
4093	// with an empty value appearing in NullFields will be sent to the
4094	// server as null. It is an error if a field in this list has a
4095	// non-empty value. This may be used to include null fields in Patch
4096	// requests.
4097	NullFields []string `json:"-"`
4098}
4099
4100func (s *GoogleCloudDialogflowCxV3beta1DetectIntentRequest) MarshalJSON() ([]byte, error) {
4101	type NoMethod GoogleCloudDialogflowCxV3beta1DetectIntentRequest
4102	raw := NoMethod(*s)
4103	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4104}
4105
4106// GoogleCloudDialogflowCxV3beta1DetectIntentResponse: The message
4107// returned from the DetectIntent method.
4108type GoogleCloudDialogflowCxV3beta1DetectIntentResponse struct {
4109	// AllowCancellation: Indicates whether the partial response can be
4110	// cancelled when a later response arrives. e.g. if the agent specified
4111	// some music as partial response, it can be cancelled.
4112	AllowCancellation bool `json:"allowCancellation,omitempty"`
4113
4114	// OutputAudio: The audio data bytes encoded as specified in the
4115	// request. Note: The output audio is generated based on the values of
4116	// default platform text responses found in the
4117	// `query_result.response_messages` field. If multiple default text
4118	// responses exist, they will be concatenated when generating audio. If
4119	// no default platform text responses exist, the generated audio content
4120	// will be empty. In some scenarios, multiple output audio fields may be
4121	// present in the response structure. In these cases, only the
4122	// top-most-level audio output has content.
4123	OutputAudio string `json:"outputAudio,omitempty"`
4124
4125	// OutputAudioConfig: The config used by the speech synthesizer to
4126	// generate the output audio.
4127	OutputAudioConfig *GoogleCloudDialogflowCxV3beta1OutputAudioConfig `json:"outputAudioConfig,omitempty"`
4128
4129	// QueryResult: The result of the conversational query.
4130	QueryResult *GoogleCloudDialogflowCxV3beta1QueryResult `json:"queryResult,omitempty"`
4131
4132	// ResponseId: Output only. The unique identifier of the response. It
4133	// can be used to locate a response in the training example set or for
4134	// reporting issues.
4135	ResponseId string `json:"responseId,omitempty"`
4136
4137	// ResponseType: Response type.
4138	//
4139	// Possible values:
4140	//   "RESPONSE_TYPE_UNSPECIFIED" - Not specified. This should never
4141	// happen.
4142	//   "PARTIAL" - Partial response. e.g. Aggregated responses in a
4143	// Fulfillment that enables `return_partial_response` can be returned as
4144	// partial response. WARNING: partial response is not eligible for
4145	// barge-in.
4146	//   "FINAL" - Final response.
4147	ResponseType string `json:"responseType,omitempty"`
4148
4149	// ServerResponse contains the HTTP response code and headers from the
4150	// server.
4151	googleapi.ServerResponse `json:"-"`
4152
4153	// ForceSendFields is a list of field names (e.g. "AllowCancellation")
4154	// to unconditionally include in API requests. By default, fields with
4155	// empty or default values are omitted from API requests. However, any
4156	// non-pointer, non-interface field appearing in ForceSendFields will be
4157	// sent to the server regardless of whether the field is empty or not.
4158	// This may be used to include empty fields in Patch requests.
4159	ForceSendFields []string `json:"-"`
4160
4161	// NullFields is a list of field names (e.g. "AllowCancellation") to
4162	// include in API requests with the JSON null value. By default, fields
4163	// with empty values are omitted from API requests. However, any field
4164	// with an empty value appearing in NullFields will be sent to the
4165	// server as null. It is an error if a field in this list has a
4166	// non-empty value. This may be used to include null fields in Patch
4167	// requests.
4168	NullFields []string `json:"-"`
4169}
4170
4171func (s *GoogleCloudDialogflowCxV3beta1DetectIntentResponse) MarshalJSON() ([]byte, error) {
4172	type NoMethod GoogleCloudDialogflowCxV3beta1DetectIntentResponse
4173	raw := NoMethod(*s)
4174	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4175}
4176
4177// GoogleCloudDialogflowCxV3beta1DtmfInput: Represents the input for
4178// dtmf event.
4179type GoogleCloudDialogflowCxV3beta1DtmfInput struct {
4180	// Digits: The dtmf digits.
4181	Digits string `json:"digits,omitempty"`
4182
4183	// FinishDigit: The finish digit (if any).
4184	FinishDigit string `json:"finishDigit,omitempty"`
4185
4186	// ForceSendFields is a list of field names (e.g. "Digits") to
4187	// unconditionally include in API requests. By default, fields with
4188	// empty or default values are omitted from API requests. However, any
4189	// non-pointer, non-interface field appearing in ForceSendFields will be
4190	// sent to the server regardless of whether the field is empty or not.
4191	// This may be used to include empty fields in Patch requests.
4192	ForceSendFields []string `json:"-"`
4193
4194	// NullFields is a list of field names (e.g. "Digits") to include in API
4195	// requests with the JSON null value. By default, fields with empty
4196	// values are omitted from API requests. However, any field with an
4197	// empty value appearing in NullFields will be sent to the server as
4198	// null. It is an error if a field in this list has a non-empty value.
4199	// This may be used to include null fields in Patch requests.
4200	NullFields []string `json:"-"`
4201}
4202
4203func (s *GoogleCloudDialogflowCxV3beta1DtmfInput) MarshalJSON() ([]byte, error) {
4204	type NoMethod GoogleCloudDialogflowCxV3beta1DtmfInput
4205	raw := NoMethod(*s)
4206	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4207}
4208
4209// GoogleCloudDialogflowCxV3beta1EntityType: Entities are extracted from
4210// user input and represent parameters that are meaningful to your
4211// application. For example, a date range, a proper name such as a
4212// geographic location or landmark, and so on. Entities represent
4213// actionable data for your application. When you define an entity, you
4214// can also include synonyms that all map to that entity. For example,
4215// "soft drink", "soda", "pop", and so on. There are three types of
4216// entities: * **System** - entities that are defined by the Dialogflow
4217// API for common data types such as date, time, currency, and so on. A
4218// system entity is represented by the `EntityType` type. * **Custom** -
4219// entities that are defined by you that represent actionable data that
4220// is meaningful to your application. For example, you could define a
4221// `pizza.sauce` entity for red or white pizza sauce, a `pizza.cheese`
4222// entity for the different types of cheese on a pizza, a
4223// `pizza.topping` entity for different toppings, and so on. A custom
4224// entity is represented by the `EntityType` type. * **User** - entities
4225// that are built for an individual user such as favorites, preferences,
4226// playlists, and so on. A user entity is represented by the
4227// SessionEntityType type. For more information about entity types, see
4228// the Dialogflow documentation
4229// (https://cloud.google.com/dialogflow/docs/entities-overview).
4230type GoogleCloudDialogflowCxV3beta1EntityType struct {
4231	// AutoExpansionMode: Indicates whether the entity type can be
4232	// automatically expanded.
4233	//
4234	// Possible values:
4235	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
4236	// entity.
4237	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
4238	// that have not been explicitly listed in the entity.
4239	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
4240
4241	// DisplayName: Required. The human-readable name of the entity type,
4242	// unique within the agent.
4243	DisplayName string `json:"displayName,omitempty"`
4244
4245	// EnableFuzzyExtraction: Enables fuzzy entity extraction during
4246	// classification.
4247	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
4248
4249	// Entities: The collection of entity entries associated with the entity
4250	// type.
4251	Entities []*GoogleCloudDialogflowCxV3beta1EntityTypeEntity `json:"entities,omitempty"`
4252
4253	// ExcludedPhrases: Collection of exceptional words and phrases that
4254	// shouldn't be matched. For example, if you have a size entity type
4255	// with entry `giant`(an adjective), you might consider adding
4256	// `giants`(a noun) as an exclusion. If the kind of entity type is
4257	// `KIND_MAP`, then the phrases specified by entities and excluded
4258	// phrases should be mutually exclusive.
4259	ExcludedPhrases []*GoogleCloudDialogflowCxV3beta1EntityTypeExcludedPhrase `json:"excludedPhrases,omitempty"`
4260
4261	// Kind: Required. Indicates the kind of entity type.
4262	//
4263	// Possible values:
4264	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
4265	// used.
4266	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
4267	// to a canonical value.
4268	//   "KIND_LIST" - List entity types contain a set of entries that do
4269	// not map to canonical values. However, list entity types can contain
4270	// references to other entity types (with or without aliases).
4271	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
4272	// expressions in entries values.
4273	Kind string `json:"kind,omitempty"`
4274
4275	// Name: The unique identifier of the entity type. Required for
4276	// EntityTypes.UpdateEntityType. Format:
4277	// `projects//locations//agents//entityTypes/`.
4278	Name string `json:"name,omitempty"`
4279
4280	// Redact: Indicates whether parameters of the entity type should be
4281	// redacted in log. If redaction is enabled, page parameters and intent
4282	// parameters referring to the entity type will be replaced by parameter
4283	// name during logging.
4284	Redact bool `json:"redact,omitempty"`
4285
4286	// ServerResponse contains the HTTP response code and headers from the
4287	// server.
4288	googleapi.ServerResponse `json:"-"`
4289
4290	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
4291	// to unconditionally include in API requests. By default, fields with
4292	// empty or default values are omitted from API requests. However, any
4293	// non-pointer, non-interface field appearing in ForceSendFields will be
4294	// sent to the server regardless of whether the field is empty or not.
4295	// This may be used to include empty fields in Patch requests.
4296	ForceSendFields []string `json:"-"`
4297
4298	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
4299	// include in API requests with the JSON null value. By default, fields
4300	// with empty values are omitted from API requests. However, any field
4301	// with an empty value appearing in NullFields will be sent to the
4302	// server as null. It is an error if a field in this list has a
4303	// non-empty value. This may be used to include null fields in Patch
4304	// requests.
4305	NullFields []string `json:"-"`
4306}
4307
4308func (s *GoogleCloudDialogflowCxV3beta1EntityType) MarshalJSON() ([]byte, error) {
4309	type NoMethod GoogleCloudDialogflowCxV3beta1EntityType
4310	raw := NoMethod(*s)
4311	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4312}
4313
4314// GoogleCloudDialogflowCxV3beta1EntityTypeEntity: An **entity entry**
4315// for an associated entity type.
4316type GoogleCloudDialogflowCxV3beta1EntityTypeEntity struct {
4317	// Synonyms: Required. A collection of value synonyms. For example, if
4318	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
4319	// could be *green onions*. For `KIND_LIST` entity types: * This
4320	// collection must contain exactly one synonym equal to `value`.
4321	Synonyms []string `json:"synonyms,omitempty"`
4322
4323	// Value: Required. The primary value associated with this entity entry.
4324	// For example, if the entity type is *vegetable*, the value could be
4325	// *scallions*. For `KIND_MAP` entity types: * A canonical value to be
4326	// used in place of synonyms. For `KIND_LIST` entity types: * A string
4327	// that can contain references to other entity types (with or without
4328	// aliases).
4329	Value string `json:"value,omitempty"`
4330
4331	// ForceSendFields is a list of field names (e.g. "Synonyms") to
4332	// unconditionally include in API requests. By default, fields with
4333	// empty or default values are omitted from API requests. However, any
4334	// non-pointer, non-interface field appearing in ForceSendFields will be
4335	// sent to the server regardless of whether the field is empty or not.
4336	// This may be used to include empty fields in Patch requests.
4337	ForceSendFields []string `json:"-"`
4338
4339	// NullFields is a list of field names (e.g. "Synonyms") to include in
4340	// API requests with the JSON null value. By default, fields with empty
4341	// values are omitted from API requests. However, any field with an
4342	// empty value appearing in NullFields will be sent to the server as
4343	// null. It is an error if a field in this list has a non-empty value.
4344	// This may be used to include null fields in Patch requests.
4345	NullFields []string `json:"-"`
4346}
4347
4348func (s *GoogleCloudDialogflowCxV3beta1EntityTypeEntity) MarshalJSON() ([]byte, error) {
4349	type NoMethod GoogleCloudDialogflowCxV3beta1EntityTypeEntity
4350	raw := NoMethod(*s)
4351	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4352}
4353
4354// GoogleCloudDialogflowCxV3beta1EntityTypeExcludedPhrase: An excluded
4355// entity phrase that should not be matched.
4356type GoogleCloudDialogflowCxV3beta1EntityTypeExcludedPhrase struct {
4357	// Value: Required. The word or phrase to be excluded.
4358	Value string `json:"value,omitempty"`
4359
4360	// ForceSendFields is a list of field names (e.g. "Value") to
4361	// unconditionally include in API requests. By default, fields with
4362	// empty or default values are omitted from API requests. However, any
4363	// non-pointer, non-interface field appearing in ForceSendFields will be
4364	// sent to the server regardless of whether the field is empty or not.
4365	// This may be used to include empty fields in Patch requests.
4366	ForceSendFields []string `json:"-"`
4367
4368	// NullFields is a list of field names (e.g. "Value") to include in API
4369	// requests with the JSON null value. By default, fields with empty
4370	// values are omitted from API requests. However, any field with an
4371	// empty value appearing in NullFields will be sent to the server as
4372	// null. It is an error if a field in this list has a non-empty value.
4373	// This may be used to include null fields in Patch requests.
4374	NullFields []string `json:"-"`
4375}
4376
4377func (s *GoogleCloudDialogflowCxV3beta1EntityTypeExcludedPhrase) MarshalJSON() ([]byte, error) {
4378	type NoMethod GoogleCloudDialogflowCxV3beta1EntityTypeExcludedPhrase
4379	raw := NoMethod(*s)
4380	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4381}
4382
4383// GoogleCloudDialogflowCxV3beta1Environment: Represents an environment
4384// for an agent. You can create multiple versions of your agent and
4385// publish them to separate environments. When you edit an agent, you
4386// are editing the draft agent. At any point, you can save the draft
4387// agent as an agent version, which is an immutable snapshot of your
4388// agent. When you save the draft agent, it is published to the default
4389// environment. When you create agent versions, you can publish them to
4390// custom environments. You can create a variety of custom environments
4391// for testing, development, production, etc.
4392type GoogleCloudDialogflowCxV3beta1Environment struct {
4393	// Description: The human-readable description of the environment. The
4394	// maximum length is 500 characters. If exceeded, the request is
4395	// rejected.
4396	Description string `json:"description,omitempty"`
4397
4398	// DisplayName: Required. The human-readable name of the environment
4399	// (unique in an agent). Limit of 64 characters.
4400	DisplayName string `json:"displayName,omitempty"`
4401
4402	// Name: The name of the environment. Format:
4403	// `projects//locations//agents//environments/`.
4404	Name string `json:"name,omitempty"`
4405
4406	// UpdateTime: Output only. Update time of this environment.
4407	UpdateTime string `json:"updateTime,omitempty"`
4408
4409	// VersionConfigs: Required. A list of configurations for flow versions.
4410	// You should include version configs for all flows that are reachable
4411	// from `Start Flow` in the agent. Otherwise, an error will be returned.
4412	VersionConfigs []*GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig `json:"versionConfigs,omitempty"`
4413
4414	// ServerResponse contains the HTTP response code and headers from the
4415	// server.
4416	googleapi.ServerResponse `json:"-"`
4417
4418	// ForceSendFields is a list of field names (e.g. "Description") to
4419	// unconditionally include in API requests. By default, fields with
4420	// empty or default values are omitted from API requests. However, any
4421	// non-pointer, non-interface field appearing in ForceSendFields will be
4422	// sent to the server regardless of whether the field is empty or not.
4423	// This may be used to include empty fields in Patch requests.
4424	ForceSendFields []string `json:"-"`
4425
4426	// NullFields is a list of field names (e.g. "Description") to include
4427	// in API requests with the JSON null value. By default, fields with
4428	// empty values are omitted from API requests. However, any field with
4429	// an empty value appearing in NullFields will be sent to the server as
4430	// null. It is an error if a field in this list has a non-empty value.
4431	// This may be used to include null fields in Patch requests.
4432	NullFields []string `json:"-"`
4433}
4434
4435func (s *GoogleCloudDialogflowCxV3beta1Environment) MarshalJSON() ([]byte, error) {
4436	type NoMethod GoogleCloudDialogflowCxV3beta1Environment
4437	raw := NoMethod(*s)
4438	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4439}
4440
4441// GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig: Configuration
4442// for the version.
4443type GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig struct {
4444	// Version: Required. Format:
4445	// projects//locations//agents//flows//versions/.
4446	Version string `json:"version,omitempty"`
4447
4448	// ForceSendFields is a list of field names (e.g. "Version") to
4449	// unconditionally include in API requests. By default, fields with
4450	// empty or default values are omitted from API requests. However, any
4451	// non-pointer, non-interface field appearing in ForceSendFields will be
4452	// sent to the server regardless of whether the field is empty or not.
4453	// This may be used to include empty fields in Patch requests.
4454	ForceSendFields []string `json:"-"`
4455
4456	// NullFields is a list of field names (e.g. "Version") to include in
4457	// API requests with the JSON null value. By default, fields with empty
4458	// values are omitted from API requests. However, any field with an
4459	// empty value appearing in NullFields will be sent to the server as
4460	// null. It is an error if a field in this list has a non-empty value.
4461	// This may be used to include null fields in Patch requests.
4462	NullFields []string `json:"-"`
4463}
4464
4465func (s *GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig) MarshalJSON() ([]byte, error) {
4466	type NoMethod GoogleCloudDialogflowCxV3beta1EnvironmentVersionConfig
4467	raw := NoMethod(*s)
4468	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4469}
4470
4471// GoogleCloudDialogflowCxV3beta1EventHandler: An event handler
4472// specifies an event that can be handled during a session. When the
4473// specified event happens, the following actions are taken in order: *
4474// If there is a `trigger_fulfillment` associated with the event, it
4475// will be called. * If there is a `target_page` associated with the
4476// event, the session will transition into the specified page. * If
4477// there is a `target_flow` associated with the event, the session will
4478// transition into the specified flow.
4479type GoogleCloudDialogflowCxV3beta1EventHandler struct {
4480	// Event: Required. The name of the event to handle.
4481	Event string `json:"event,omitempty"`
4482
4483	// Name: Output only. The unique identifier of this event handler.
4484	Name string `json:"name,omitempty"`
4485
4486	// TargetFlow: The target flow to transition to. Format:
4487	// `projects//locations//agents//flows/`.
4488	TargetFlow string `json:"targetFlow,omitempty"`
4489
4490	// TargetPage: The target page to transition to. Format:
4491	// `projects//locations//agents//flows//pages/`.
4492	TargetPage string `json:"targetPage,omitempty"`
4493
4494	// TriggerFulfillment: The fulfillment to call when the event occurs.
4495	// Handling webhook errors with a fulfillment enabled with webhook could
4496	// cause infinite loop. It is invalid to specify such fulfillment for a
4497	// handler handling webhooks.
4498	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
4499
4500	// ForceSendFields is a list of field names (e.g. "Event") to
4501	// unconditionally include in API requests. By default, fields with
4502	// empty or default values are omitted from API requests. However, any
4503	// non-pointer, non-interface field appearing in ForceSendFields will be
4504	// sent to the server regardless of whether the field is empty or not.
4505	// This may be used to include empty fields in Patch requests.
4506	ForceSendFields []string `json:"-"`
4507
4508	// NullFields is a list of field names (e.g. "Event") to include in API
4509	// requests with the JSON null value. By default, fields with empty
4510	// values are omitted from API requests. However, any field with an
4511	// empty value appearing in NullFields will be sent to the server as
4512	// null. It is an error if a field in this list has a non-empty value.
4513	// This may be used to include null fields in Patch requests.
4514	NullFields []string `json:"-"`
4515}
4516
4517func (s *GoogleCloudDialogflowCxV3beta1EventHandler) MarshalJSON() ([]byte, error) {
4518	type NoMethod GoogleCloudDialogflowCxV3beta1EventHandler
4519	raw := NoMethod(*s)
4520	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4521}
4522
4523// GoogleCloudDialogflowCxV3beta1EventInput: Represents the event to
4524// trigger.
4525type GoogleCloudDialogflowCxV3beta1EventInput struct {
4526	// Event: Name of the event.
4527	Event string `json:"event,omitempty"`
4528
4529	// ForceSendFields is a list of field names (e.g. "Event") to
4530	// unconditionally include in API requests. By default, fields with
4531	// empty or default values are omitted from API requests. However, any
4532	// non-pointer, non-interface field appearing in ForceSendFields will be
4533	// sent to the server regardless of whether the field is empty or not.
4534	// This may be used to include empty fields in Patch requests.
4535	ForceSendFields []string `json:"-"`
4536
4537	// NullFields is a list of field names (e.g. "Event") to include in API
4538	// requests with the JSON null value. By default, fields with empty
4539	// values are omitted from API requests. However, any field with an
4540	// empty value appearing in NullFields will be sent to the server as
4541	// null. It is an error if a field in this list has a non-empty value.
4542	// This may be used to include null fields in Patch requests.
4543	NullFields []string `json:"-"`
4544}
4545
4546func (s *GoogleCloudDialogflowCxV3beta1EventInput) MarshalJSON() ([]byte, error) {
4547	type NoMethod GoogleCloudDialogflowCxV3beta1EventInput
4548	raw := NoMethod(*s)
4549	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4550}
4551
4552// GoogleCloudDialogflowCxV3beta1Experiment: Represents an experiment in
4553// an environment.
4554type GoogleCloudDialogflowCxV3beta1Experiment struct {
4555	// CreateTime: Creation time of this experiment.
4556	CreateTime string `json:"createTime,omitempty"`
4557
4558	// Definition: The definition of the experiment.
4559	Definition *GoogleCloudDialogflowCxV3beta1ExperimentDefinition `json:"definition,omitempty"`
4560
4561	// Description: The human-readable description of the experiment.
4562	Description string `json:"description,omitempty"`
4563
4564	// DisplayName: Required. The human-readable name of the experiment
4565	// (unique in an environment). Limit of 64 characters.
4566	DisplayName string `json:"displayName,omitempty"`
4567
4568	// EndTime: End time of this experiment.
4569	EndTime string `json:"endTime,omitempty"`
4570
4571	// ExperimentLength: Maximum number of days to run the experiment. If
4572	// auto-rollout is not enabled, default value and maximum will be 30
4573	// days. If auto-rollout is enabled, default value and maximum will be 6
4574	// days.
4575	ExperimentLength string `json:"experimentLength,omitempty"`
4576
4577	// LastUpdateTime: Last update time of this experiment.
4578	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
4579
4580	// Name: The name of the experiment. Format:
4581	// projects//locations//agents//environments//experiments/..
4582	Name string `json:"name,omitempty"`
4583
4584	// Result: Inference result of the experiment.
4585	Result *GoogleCloudDialogflowCxV3beta1ExperimentResult `json:"result,omitempty"`
4586
4587	// RolloutConfig: The configuration for auto rollout. If set, there
4588	// should be exactly two variants in the experiment (control variant
4589	// being the default version of the flow), the traffic allocation for
4590	// the non-control variant will gradually increase to 100% when
4591	// conditions are met, and eventually replace the control variant to
4592	// become the default version of the flow.
4593	RolloutConfig *GoogleCloudDialogflowCxV3beta1RolloutConfig `json:"rolloutConfig,omitempty"`
4594
4595	// RolloutFailureReason: The reason why rollout has failed. Should only
4596	// be set when state is ROLLOUT_FAILED.
4597	RolloutFailureReason string `json:"rolloutFailureReason,omitempty"`
4598
4599	// RolloutState: State of the auto rollout process.
4600	RolloutState *GoogleCloudDialogflowCxV3beta1RolloutState `json:"rolloutState,omitempty"`
4601
4602	// StartTime: Start time of this experiment.
4603	StartTime string `json:"startTime,omitempty"`
4604
4605	// State: The current state of the experiment. Transition triggered by
4606	// Experiments.StartExperiment: DRAFT->RUNNING. Transition triggered by
4607	// Experiments.CancelExperiment: DRAFT->DONE or RUNNING->DONE.
4608	//
4609	// Possible values:
4610	//   "STATE_UNSPECIFIED" - State unspecified.
4611	//   "DRAFT" - The experiment is created but not started yet.
4612	//   "RUNNING" - The experiment is running.
4613	//   "DONE" - The experiment is done.
4614	//   "ROLLOUT_FAILED" - The experiment with auto-rollout enabled has
4615	// failed.
4616	State string `json:"state,omitempty"`
4617
4618	// VariantsHistory: The history of updates to the experiment variants.
4619	VariantsHistory []*GoogleCloudDialogflowCxV3beta1VariantsHistory `json:"variantsHistory,omitempty"`
4620
4621	// ServerResponse contains the HTTP response code and headers from the
4622	// server.
4623	googleapi.ServerResponse `json:"-"`
4624
4625	// ForceSendFields is a list of field names (e.g. "CreateTime") to
4626	// unconditionally include in API requests. By default, fields with
4627	// empty or default values are omitted from API requests. However, any
4628	// non-pointer, non-interface field appearing in ForceSendFields will be
4629	// sent to the server regardless of whether the field is empty or not.
4630	// This may be used to include empty fields in Patch requests.
4631	ForceSendFields []string `json:"-"`
4632
4633	// NullFields is a list of field names (e.g. "CreateTime") to include in
4634	// API requests with the JSON null value. By default, fields with empty
4635	// values are omitted from API requests. However, any field with an
4636	// empty value appearing in NullFields will be sent to the server as
4637	// null. It is an error if a field in this list has a non-empty value.
4638	// This may be used to include null fields in Patch requests.
4639	NullFields []string `json:"-"`
4640}
4641
4642func (s *GoogleCloudDialogflowCxV3beta1Experiment) MarshalJSON() ([]byte, error) {
4643	type NoMethod GoogleCloudDialogflowCxV3beta1Experiment
4644	raw := NoMethod(*s)
4645	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4646}
4647
4648// GoogleCloudDialogflowCxV3beta1ExperimentDefinition: Definition of the
4649// experiment.
4650type GoogleCloudDialogflowCxV3beta1ExperimentDefinition struct {
4651	// Condition: The condition defines which subset of sessions are
4652	// selected for this experiment. If not specified, all sessions are
4653	// eligible. E.g. "query_input.language_code=en" See the conditions
4654	// reference
4655	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
4656	Condition string `json:"condition,omitempty"`
4657
4658	// VersionVariants: The flow versions as the variants of this
4659	// experiment.
4660	VersionVariants *GoogleCloudDialogflowCxV3beta1VersionVariants `json:"versionVariants,omitempty"`
4661
4662	// ForceSendFields is a list of field names (e.g. "Condition") to
4663	// unconditionally include in API requests. By default, fields with
4664	// empty or default values are omitted from API requests. However, any
4665	// non-pointer, non-interface field appearing in ForceSendFields will be
4666	// sent to the server regardless of whether the field is empty or not.
4667	// This may be used to include empty fields in Patch requests.
4668	ForceSendFields []string `json:"-"`
4669
4670	// NullFields is a list of field names (e.g. "Condition") to include in
4671	// API requests with the JSON null value. By default, fields with empty
4672	// values are omitted from API requests. However, any field with an
4673	// empty value appearing in NullFields will be sent to the server as
4674	// null. It is an error if a field in this list has a non-empty value.
4675	// This may be used to include null fields in Patch requests.
4676	NullFields []string `json:"-"`
4677}
4678
4679func (s *GoogleCloudDialogflowCxV3beta1ExperimentDefinition) MarshalJSON() ([]byte, error) {
4680	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentDefinition
4681	raw := NoMethod(*s)
4682	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4683}
4684
4685// GoogleCloudDialogflowCxV3beta1ExperimentResult: The inference result
4686// which includes an objective metric to optimize and the confidence
4687// interval.
4688type GoogleCloudDialogflowCxV3beta1ExperimentResult struct {
4689	// LastUpdateTime: The last time the experiment's stats data was
4690	// updated. Will have default value if stats have never been computed
4691	// for this experiment.
4692	LastUpdateTime string `json:"lastUpdateTime,omitempty"`
4693
4694	// VersionMetrics: Version variants and metrics.
4695	VersionMetrics []*GoogleCloudDialogflowCxV3beta1ExperimentResultVersionMetrics `json:"versionMetrics,omitempty"`
4696
4697	// ForceSendFields is a list of field names (e.g. "LastUpdateTime") to
4698	// unconditionally include in API requests. By default, fields with
4699	// empty or default values are omitted from API requests. However, any
4700	// non-pointer, non-interface field appearing in ForceSendFields will be
4701	// sent to the server regardless of whether the field is empty or not.
4702	// This may be used to include empty fields in Patch requests.
4703	ForceSendFields []string `json:"-"`
4704
4705	// NullFields is a list of field names (e.g. "LastUpdateTime") to
4706	// include in API requests with the JSON null value. By default, fields
4707	// with empty values are omitted from API requests. However, any field
4708	// with an empty value appearing in NullFields will be sent to the
4709	// server as null. It is an error if a field in this list has a
4710	// non-empty value. This may be used to include null fields in Patch
4711	// requests.
4712	NullFields []string `json:"-"`
4713}
4714
4715func (s *GoogleCloudDialogflowCxV3beta1ExperimentResult) MarshalJSON() ([]byte, error) {
4716	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResult
4717	raw := NoMethod(*s)
4718	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4719}
4720
4721// GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval: A
4722// confidence interval is a range of possible values for the experiment
4723// objective you are trying to measure.
4724type GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval struct {
4725	// ConfidenceLevel: The confidence level used to construct the interval,
4726	// i.e. there is X% chance that the true value is within this interval.
4727	ConfidenceLevel float64 `json:"confidenceLevel,omitempty"`
4728
4729	// LowerBound: Lower bound of the interval.
4730	LowerBound float64 `json:"lowerBound,omitempty"`
4731
4732	// Ratio: The percent change between an experiment metric's value and
4733	// the value for its control.
4734	Ratio float64 `json:"ratio,omitempty"`
4735
4736	// UpperBound: Upper bound of the interval.
4737	UpperBound float64 `json:"upperBound,omitempty"`
4738
4739	// ForceSendFields is a list of field names (e.g. "ConfidenceLevel") to
4740	// unconditionally include in API requests. By default, fields with
4741	// empty or default values are omitted from API requests. However, any
4742	// non-pointer, non-interface field appearing in ForceSendFields will be
4743	// sent to the server regardless of whether the field is empty or not.
4744	// This may be used to include empty fields in Patch requests.
4745	ForceSendFields []string `json:"-"`
4746
4747	// NullFields is a list of field names (e.g. "ConfidenceLevel") to
4748	// include in API requests with the JSON null value. By default, fields
4749	// with empty values are omitted from API requests. However, any field
4750	// with an empty value appearing in NullFields will be sent to the
4751	// server as null. It is an error if a field in this list has a
4752	// non-empty value. This may be used to include null fields in Patch
4753	// requests.
4754	NullFields []string `json:"-"`
4755}
4756
4757func (s *GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval) MarshalJSON() ([]byte, error) {
4758	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval
4759	raw := NoMethod(*s)
4760	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4761}
4762
4763func (s *GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval) UnmarshalJSON(data []byte) error {
4764	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval
4765	var s1 struct {
4766		ConfidenceLevel gensupport.JSONFloat64 `json:"confidenceLevel"`
4767		LowerBound      gensupport.JSONFloat64 `json:"lowerBound"`
4768		Ratio           gensupport.JSONFloat64 `json:"ratio"`
4769		UpperBound      gensupport.JSONFloat64 `json:"upperBound"`
4770		*NoMethod
4771	}
4772	s1.NoMethod = (*NoMethod)(s)
4773	if err := json.Unmarshal(data, &s1); err != nil {
4774		return err
4775	}
4776	s.ConfidenceLevel = float64(s1.ConfidenceLevel)
4777	s.LowerBound = float64(s1.LowerBound)
4778	s.Ratio = float64(s1.Ratio)
4779	s.UpperBound = float64(s1.UpperBound)
4780	return nil
4781}
4782
4783// GoogleCloudDialogflowCxV3beta1ExperimentResultMetric: Metric and
4784// corresponding confidence intervals.
4785type GoogleCloudDialogflowCxV3beta1ExperimentResultMetric struct {
4786	// ConfidenceInterval: The probability that the treatment is better than
4787	// all other treatments in the experiment
4788	ConfidenceInterval *GoogleCloudDialogflowCxV3beta1ExperimentResultConfidenceInterval `json:"confidenceInterval,omitempty"`
4789
4790	// Count: Count value of a metric.
4791	Count float64 `json:"count,omitempty"`
4792
4793	// CountType: Count-based metric type. Only one of type or count_type is
4794	// specified in each Metric.
4795	//
4796	// Possible values:
4797	//   "COUNT_TYPE_UNSPECIFIED" - Count type unspecified.
4798	//   "TOTAL_NO_MATCH_COUNT" - Total number of occurrences of a
4799	// 'NO_MATCH'.
4800	//   "TOTAL_TURN_COUNT" - Total number of turn counts.
4801	//   "AVERAGE_TURN_COUNT" - Average turn count in a session.
4802	CountType string `json:"countType,omitempty"`
4803
4804	// Ratio: Ratio value of a metric.
4805	Ratio float64 `json:"ratio,omitempty"`
4806
4807	// Type: Ratio-based metric type. Only one of type or count_type is
4808	// specified in each Metric.
4809	//
4810	// Possible values:
4811	//   "METRIC_UNSPECIFIED" - Metric unspecified.
4812	//   "CONTAINED_SESSION_NO_CALLBACK_RATE" - Percentage of contained
4813	// sessions without user calling back in 24 hours.
4814	//   "LIVE_AGENT_HANDOFF_RATE" - Percentage of sessions that were handed
4815	// to a human agent.
4816	//   "CALLBACK_SESSION_RATE" - Percentage of sessions with the same user
4817	// calling back.
4818	//   "ABANDONED_SESSION_RATE" - Percentage of sessions where user hung
4819	// up.
4820	//   "SESSION_END_RATE" - Percentage of sessions reached Dialogflow
4821	// 'END_PAGE' or 'END_SESSION'.
4822	Type string `json:"type,omitempty"`
4823
4824	// ForceSendFields is a list of field names (e.g. "ConfidenceInterval")
4825	// to unconditionally include in API requests. By default, fields with
4826	// empty or default values are omitted from API requests. However, any
4827	// non-pointer, non-interface field appearing in ForceSendFields will be
4828	// sent to the server regardless of whether the field is empty or not.
4829	// This may be used to include empty fields in Patch requests.
4830	ForceSendFields []string `json:"-"`
4831
4832	// NullFields is a list of field names (e.g. "ConfidenceInterval") to
4833	// include in API requests with the JSON null value. By default, fields
4834	// with empty values are omitted from API requests. However, any field
4835	// with an empty value appearing in NullFields will be sent to the
4836	// server as null. It is an error if a field in this list has a
4837	// non-empty value. This may be used to include null fields in Patch
4838	// requests.
4839	NullFields []string `json:"-"`
4840}
4841
4842func (s *GoogleCloudDialogflowCxV3beta1ExperimentResultMetric) MarshalJSON() ([]byte, error) {
4843	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResultMetric
4844	raw := NoMethod(*s)
4845	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4846}
4847
4848func (s *GoogleCloudDialogflowCxV3beta1ExperimentResultMetric) UnmarshalJSON(data []byte) error {
4849	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResultMetric
4850	var s1 struct {
4851		Count gensupport.JSONFloat64 `json:"count"`
4852		Ratio gensupport.JSONFloat64 `json:"ratio"`
4853		*NoMethod
4854	}
4855	s1.NoMethod = (*NoMethod)(s)
4856	if err := json.Unmarshal(data, &s1); err != nil {
4857		return err
4858	}
4859	s.Count = float64(s1.Count)
4860	s.Ratio = float64(s1.Ratio)
4861	return nil
4862}
4863
4864// GoogleCloudDialogflowCxV3beta1ExperimentResultVersionMetrics: Version
4865// variant and associated metrics.
4866type GoogleCloudDialogflowCxV3beta1ExperimentResultVersionMetrics struct {
4867	// Metrics: The metrics and corresponding confidence intervals in the
4868	// inference result.
4869	Metrics []*GoogleCloudDialogflowCxV3beta1ExperimentResultMetric `json:"metrics,omitempty"`
4870
4871	// SessionCount: Number of sessions that were allocated to this version.
4872	SessionCount int64 `json:"sessionCount,omitempty"`
4873
4874	// Version: The name of the flow Version. Format:
4875	// `projects//locations//agents//flows//versions/`.
4876	Version string `json:"version,omitempty"`
4877
4878	// ForceSendFields is a list of field names (e.g. "Metrics") to
4879	// unconditionally include in API requests. By default, fields with
4880	// empty or default values are omitted from API requests. However, any
4881	// non-pointer, non-interface field appearing in ForceSendFields will be
4882	// sent to the server regardless of whether the field is empty or not.
4883	// This may be used to include empty fields in Patch requests.
4884	ForceSendFields []string `json:"-"`
4885
4886	// NullFields is a list of field names (e.g. "Metrics") to include in
4887	// API requests with the JSON null value. By default, fields with empty
4888	// values are omitted from API requests. However, any field with an
4889	// empty value appearing in NullFields will be sent to the server as
4890	// null. It is an error if a field in this list has a non-empty value.
4891	// This may be used to include null fields in Patch requests.
4892	NullFields []string `json:"-"`
4893}
4894
4895func (s *GoogleCloudDialogflowCxV3beta1ExperimentResultVersionMetrics) MarshalJSON() ([]byte, error) {
4896	type NoMethod GoogleCloudDialogflowCxV3beta1ExperimentResultVersionMetrics
4897	raw := NoMethod(*s)
4898	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4899}
4900
4901// GoogleCloudDialogflowCxV3beta1ExportAgentRequest: The request message
4902// for Agents.ExportAgent.
4903type GoogleCloudDialogflowCxV3beta1ExportAgentRequest struct {
4904	// AgentUri: Optional. The Google Cloud Storage
4905	// (https://cloud.google.com/storage/docs/) URI to export the agent to.
4906	// The format of this URI must be `gs:///`. If left unspecified, the
4907	// serialized agent is returned inline.
4908	AgentUri string `json:"agentUri,omitempty"`
4909
4910	// Environment: Optional. Environment name. If not set, draft
4911	// environment is assumed. Format:
4912	// `projects//locations//agents//environments/`.
4913	Environment string `json:"environment,omitempty"`
4914
4915	// ForceSendFields is a list of field names (e.g. "AgentUri") to
4916	// unconditionally include in API requests. By default, fields with
4917	// empty or default values are omitted from API requests. However, any
4918	// non-pointer, non-interface field appearing in ForceSendFields will be
4919	// sent to the server regardless of whether the field is empty or not.
4920	// This may be used to include empty fields in Patch requests.
4921	ForceSendFields []string `json:"-"`
4922
4923	// NullFields is a list of field names (e.g. "AgentUri") to include in
4924	// API requests with the JSON null value. By default, fields with empty
4925	// values are omitted from API requests. However, any field with an
4926	// empty value appearing in NullFields will be sent to the server as
4927	// null. It is an error if a field in this list has a non-empty value.
4928	// This may be used to include null fields in Patch requests.
4929	NullFields []string `json:"-"`
4930}
4931
4932func (s *GoogleCloudDialogflowCxV3beta1ExportAgentRequest) MarshalJSON() ([]byte, error) {
4933	type NoMethod GoogleCloudDialogflowCxV3beta1ExportAgentRequest
4934	raw := NoMethod(*s)
4935	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4936}
4937
4938// GoogleCloudDialogflowCxV3beta1ExportAgentResponse: The response
4939// message for Agents.ExportAgent.
4940type GoogleCloudDialogflowCxV3beta1ExportAgentResponse struct {
4941	// AgentContent: Uncompressed raw byte content for agent.
4942	AgentContent string `json:"agentContent,omitempty"`
4943
4944	// AgentUri: The URI to a file containing the exported agent. This field
4945	// is populated only if `agent_uri` is specified in ExportAgentRequest.
4946	AgentUri string `json:"agentUri,omitempty"`
4947
4948	// ForceSendFields is a list of field names (e.g. "AgentContent") to
4949	// unconditionally include in API requests. By default, fields with
4950	// empty or default values are omitted from API requests. However, any
4951	// non-pointer, non-interface field appearing in ForceSendFields will be
4952	// sent to the server regardless of whether the field is empty or not.
4953	// This may be used to include empty fields in Patch requests.
4954	ForceSendFields []string `json:"-"`
4955
4956	// NullFields is a list of field names (e.g. "AgentContent") to include
4957	// in API requests with the JSON null value. By default, fields with
4958	// empty values are omitted from API requests. However, any field with
4959	// an empty value appearing in NullFields will be sent to the server as
4960	// null. It is an error if a field in this list has a non-empty value.
4961	// This may be used to include null fields in Patch requests.
4962	NullFields []string `json:"-"`
4963}
4964
4965func (s *GoogleCloudDialogflowCxV3beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
4966	type NoMethod GoogleCloudDialogflowCxV3beta1ExportAgentResponse
4967	raw := NoMethod(*s)
4968	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
4969}
4970
4971// GoogleCloudDialogflowCxV3beta1ExportFlowRequest: The request message
4972// for Flows.ExportFlow.
4973type GoogleCloudDialogflowCxV3beta1ExportFlowRequest struct {
4974	// FlowUri: Optional. The Google Cloud Storage
4975	// (https://cloud.google.com/storage/docs/) URI to export the flow to.
4976	// The format of this URI must be `gs:///`. If left unspecified, the
4977	// serialized flow is returned inline.
4978	FlowUri string `json:"flowUri,omitempty"`
4979
4980	// IncludeReferencedFlows: Optional. Whether to export flows referenced
4981	// by the specified flow.
4982	IncludeReferencedFlows bool `json:"includeReferencedFlows,omitempty"`
4983
4984	// ForceSendFields is a list of field names (e.g. "FlowUri") to
4985	// unconditionally include in API requests. By default, fields with
4986	// empty or default values are omitted from API requests. However, any
4987	// non-pointer, non-interface field appearing in ForceSendFields will be
4988	// sent to the server regardless of whether the field is empty or not.
4989	// This may be used to include empty fields in Patch requests.
4990	ForceSendFields []string `json:"-"`
4991
4992	// NullFields is a list of field names (e.g. "FlowUri") to include in
4993	// API requests with the JSON null value. By default, fields with empty
4994	// values are omitted from API requests. However, any field with an
4995	// empty value appearing in NullFields will be sent to the server as
4996	// null. It is an error if a field in this list has a non-empty value.
4997	// This may be used to include null fields in Patch requests.
4998	NullFields []string `json:"-"`
4999}
5000
5001func (s *GoogleCloudDialogflowCxV3beta1ExportFlowRequest) MarshalJSON() ([]byte, error) {
5002	type NoMethod GoogleCloudDialogflowCxV3beta1ExportFlowRequest
5003	raw := NoMethod(*s)
5004	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5005}
5006
5007// GoogleCloudDialogflowCxV3beta1ExportFlowResponse: The response
5008// message for Flows.ExportFlow.
5009type GoogleCloudDialogflowCxV3beta1ExportFlowResponse struct {
5010	// FlowContent: Uncompressed raw byte content for flow.
5011	FlowContent string `json:"flowContent,omitempty"`
5012
5013	// FlowUri: The URI to a file containing the exported flow. This field
5014	// is populated only if `flow_uri` is specified in ExportFlowRequest.
5015	FlowUri string `json:"flowUri,omitempty"`
5016
5017	// ForceSendFields is a list of field names (e.g. "FlowContent") to
5018	// unconditionally include in API requests. By default, fields with
5019	// empty or default values are omitted from API requests. However, any
5020	// non-pointer, non-interface field appearing in ForceSendFields will be
5021	// sent to the server regardless of whether the field is empty or not.
5022	// This may be used to include empty fields in Patch requests.
5023	ForceSendFields []string `json:"-"`
5024
5025	// NullFields is a list of field names (e.g. "FlowContent") to include
5026	// in API requests with the JSON null value. By default, fields with
5027	// empty values are omitted from API requests. However, any field with
5028	// an empty value appearing in NullFields will be sent to the server as
5029	// null. It is an error if a field in this list has a non-empty value.
5030	// This may be used to include null fields in Patch requests.
5031	NullFields []string `json:"-"`
5032}
5033
5034func (s *GoogleCloudDialogflowCxV3beta1ExportFlowResponse) MarshalJSON() ([]byte, error) {
5035	type NoMethod GoogleCloudDialogflowCxV3beta1ExportFlowResponse
5036	raw := NoMethod(*s)
5037	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5038}
5039
5040// GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata: Metadata
5041// returned for the TestCases.ExportTestCases long running operation.
5042// This message currently has no fields.
5043type GoogleCloudDialogflowCxV3beta1ExportTestCasesMetadata struct {
5044}
5045
5046// GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest: The request
5047// message for TestCases.ExportTestCases.
5048type GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest struct {
5049	// DataFormat: The data format of the exported test cases. If not
5050	// specified, `BLOB` is assumed.
5051	//
5052	// Possible values:
5053	//   "DATA_FORMAT_UNSPECIFIED" - Unspecified format.
5054	//   "BLOB" - Raw bytes.
5055	//   "JSON" - JSON format.
5056	DataFormat string `json:"dataFormat,omitempty"`
5057
5058	// Filter: The filter expression used to filter exported test cases, see
5059	// API Filtering (https://aip.dev/160). The expression is case
5060	// insensitive and supports the following syntax: name = [OR name = ]
5061	// ... For example: * "name = t1 OR name = t2" matches the test case
5062	// with the exact resource name "t1" or "t2".
5063	Filter string `json:"filter,omitempty"`
5064
5065	// GcsUri: The Google Cloud Storage
5066	// (https://cloud.google.com/storage/docs/) URI to export the test cases
5067	// to. The format of this URI must be `gs:///`. If unspecified, the
5068	// serialized test cases is returned inline.
5069	GcsUri string `json:"gcsUri,omitempty"`
5070
5071	// ForceSendFields is a list of field names (e.g. "DataFormat") to
5072	// unconditionally include in API requests. By default, fields with
5073	// empty or default values are omitted from API requests. However, any
5074	// non-pointer, non-interface field appearing in ForceSendFields will be
5075	// sent to the server regardless of whether the field is empty or not.
5076	// This may be used to include empty fields in Patch requests.
5077	ForceSendFields []string `json:"-"`
5078
5079	// NullFields is a list of field names (e.g. "DataFormat") to include in
5080	// API requests with the JSON null value. By default, fields with empty
5081	// values are omitted from API requests. However, any field with an
5082	// empty value appearing in NullFields will be sent to the server as
5083	// null. It is an error if a field in this list has a non-empty value.
5084	// This may be used to include null fields in Patch requests.
5085	NullFields []string `json:"-"`
5086}
5087
5088func (s *GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest) MarshalJSON() ([]byte, error) {
5089	type NoMethod GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest
5090	raw := NoMethod(*s)
5091	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5092}
5093
5094// GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse: The response
5095// message for TestCases.ExportTestCases.
5096type GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse struct {
5097	// Content: Uncompressed raw byte content for test cases.
5098	Content string `json:"content,omitempty"`
5099
5100	// GcsUri: The URI to a file containing the exported test cases. This
5101	// field is populated only if `gcs_uri` is specified in
5102	// ExportTestCasesRequest.
5103	GcsUri string `json:"gcsUri,omitempty"`
5104
5105	// ForceSendFields is a list of field names (e.g. "Content") to
5106	// unconditionally include in API requests. By default, fields with
5107	// empty or default values are omitted from API requests. However, any
5108	// non-pointer, non-interface field appearing in ForceSendFields will be
5109	// sent to the server regardless of whether the field is empty or not.
5110	// This may be used to include empty fields in Patch requests.
5111	ForceSendFields []string `json:"-"`
5112
5113	// NullFields is a list of field names (e.g. "Content") to include in
5114	// API requests with the JSON null value. By default, fields with empty
5115	// values are omitted from API requests. However, any field with an
5116	// empty value appearing in NullFields will be sent to the server as
5117	// null. It is an error if a field in this list has a non-empty value.
5118	// This may be used to include null fields in Patch requests.
5119	NullFields []string `json:"-"`
5120}
5121
5122func (s *GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse) MarshalJSON() ([]byte, error) {
5123	type NoMethod GoogleCloudDialogflowCxV3beta1ExportTestCasesResponse
5124	raw := NoMethod(*s)
5125	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5126}
5127
5128// GoogleCloudDialogflowCxV3beta1Flow: Flows represents the conversation
5129// flows when you build your chatbot agent. A flow consists of many
5130// pages connected by the transition routes. Conversations always start
5131// with the built-in Start Flow (with an all-0 ID). Transition routes
5132// can direct the conversation session from the current flow (parent
5133// flow) to another flow (sub flow). When the sub flow is finished,
5134// Dialogflow will bring the session back to the parent flow, where the
5135// sub flow is started. Usually, when a transition route is followed by
5136// a matched intent, the intent will be "consumed". This means the
5137// intent won't activate more transition routes. However, when the
5138// followed transition route moves the conversation session into a
5139// different flow, the matched intent can be carried over and to be
5140// consumed in the target flow.
5141type GoogleCloudDialogflowCxV3beta1Flow struct {
5142	// Description: The description of the flow. The maximum length is 500
5143	// characters. If exceeded, the request is rejected.
5144	Description string `json:"description,omitempty"`
5145
5146	// DisplayName: Required. The human-readable name of the flow.
5147	DisplayName string `json:"displayName,omitempty"`
5148
5149	// EventHandlers: A flow's event handlers serve two purposes: * They are
5150	// responsible for handling events (e.g. no match, webhook errors) in
5151	// the flow. * They are inherited by every page's event handlers, which
5152	// can be used to handle common events regardless of the current page.
5153	// Event handlers defined in the page have higher priority than those
5154	// defined in the flow. Unlike transition_routes, these handlers are
5155	// evaluated on a first-match basis. The first one that matches the
5156	// event get executed, with the rest being ignored.
5157	EventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"eventHandlers,omitempty"`
5158
5159	// Name: The unique identifier of the flow. Format:
5160	// `projects//locations//agents//flows/`.
5161	Name string `json:"name,omitempty"`
5162
5163	// NluSettings: NLU related settings of the flow.
5164	NluSettings *GoogleCloudDialogflowCxV3beta1NluSettings `json:"nluSettings,omitempty"`
5165
5166	// TransitionRouteGroups: A flow's transition route group serve two
5167	// purposes: * They are responsible for matching the user's first
5168	// utterances in the flow. * They are inherited by every page's
5169	// transition route groups. Transition route groups defined in the page
5170	// have higher priority than those defined in the flow.
5171	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
5172	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
5173
5174	// TransitionRoutes: A flow's transition routes serve two purposes: *
5175	// They are responsible for matching the user's first utterances in the
5176	// flow. * They are inherited by every page's transition routes and can
5177	// support use cases such as the user saying "help" or "can I talk to a
5178	// human?", which can be handled in a common way regardless of the
5179	// current page. Transition routes defined in the page have higher
5180	// priority than those defined in the flow. TransitionRoutes are
5181	// evalauted in the following order: * TransitionRoutes with intent
5182	// specified.. * TransitionRoutes with only condition specified.
5183	// TransitionRoutes with intent specified are inherited by pages in the
5184	// flow.
5185	TransitionRoutes []*GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoutes,omitempty"`
5186
5187	// ServerResponse contains the HTTP response code and headers from the
5188	// server.
5189	googleapi.ServerResponse `json:"-"`
5190
5191	// ForceSendFields is a list of field names (e.g. "Description") to
5192	// unconditionally include in API requests. By default, fields with
5193	// empty or default values are omitted from API requests. However, any
5194	// non-pointer, non-interface field appearing in ForceSendFields will be
5195	// sent to the server regardless of whether the field is empty or not.
5196	// This may be used to include empty fields in Patch requests.
5197	ForceSendFields []string `json:"-"`
5198
5199	// NullFields is a list of field names (e.g. "Description") to include
5200	// in API requests with the JSON null value. By default, fields with
5201	// empty values are omitted from API requests. However, any field with
5202	// an empty value appearing in NullFields will be sent to the server as
5203	// null. It is an error if a field in this list has a non-empty value.
5204	// This may be used to include null fields in Patch requests.
5205	NullFields []string `json:"-"`
5206}
5207
5208func (s *GoogleCloudDialogflowCxV3beta1Flow) MarshalJSON() ([]byte, error) {
5209	type NoMethod GoogleCloudDialogflowCxV3beta1Flow
5210	raw := NoMethod(*s)
5211	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5212}
5213
5214// GoogleCloudDialogflowCxV3beta1FlowValidationResult: The response
5215// message for Flows.GetFlowValidationResult.
5216type GoogleCloudDialogflowCxV3beta1FlowValidationResult struct {
5217	// Name: The unique identifier of the flow validation result. Format:
5218	// `projects//locations//agents//flows//validationResult`.
5219	Name string `json:"name,omitempty"`
5220
5221	// UpdateTime: Last time the flow was validated.
5222	UpdateTime string `json:"updateTime,omitempty"`
5223
5224	// ValidationMessages: Contains all validation messages.
5225	ValidationMessages []*GoogleCloudDialogflowCxV3beta1ValidationMessage `json:"validationMessages,omitempty"`
5226
5227	// ServerResponse contains the HTTP response code and headers from the
5228	// server.
5229	googleapi.ServerResponse `json:"-"`
5230
5231	// ForceSendFields is a list of field names (e.g. "Name") to
5232	// unconditionally include in API requests. By default, fields with
5233	// empty or default values are omitted from API requests. However, any
5234	// non-pointer, non-interface field appearing in ForceSendFields will be
5235	// sent to the server regardless of whether the field is empty or not.
5236	// This may be used to include empty fields in Patch requests.
5237	ForceSendFields []string `json:"-"`
5238
5239	// NullFields is a list of field names (e.g. "Name") to include in API
5240	// requests with the JSON null value. By default, fields with empty
5241	// values are omitted from API requests. However, any field with an
5242	// empty value appearing in NullFields will be sent to the server as
5243	// null. It is an error if a field in this list has a non-empty value.
5244	// This may be used to include null fields in Patch requests.
5245	NullFields []string `json:"-"`
5246}
5247
5248func (s *GoogleCloudDialogflowCxV3beta1FlowValidationResult) MarshalJSON() ([]byte, error) {
5249	type NoMethod GoogleCloudDialogflowCxV3beta1FlowValidationResult
5250	raw := NoMethod(*s)
5251	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5252}
5253
5254// GoogleCloudDialogflowCxV3beta1Form: A form is a data model that
5255// groups related parameters that can be collected from the user. The
5256// process in which the agent prompts the user and collects parameter
5257// values from the user is called form filling. A form can be added to a
5258// page. When form filling is done, the filled parameters will be
5259// written to the session.
5260type GoogleCloudDialogflowCxV3beta1Form struct {
5261	// Parameters: Parameters to collect from the user.
5262	Parameters []*GoogleCloudDialogflowCxV3beta1FormParameter `json:"parameters,omitempty"`
5263
5264	// ForceSendFields is a list of field names (e.g. "Parameters") to
5265	// unconditionally include in API requests. By default, fields with
5266	// empty or default values are omitted from API requests. However, any
5267	// non-pointer, non-interface field appearing in ForceSendFields will be
5268	// sent to the server regardless of whether the field is empty or not.
5269	// This may be used to include empty fields in Patch requests.
5270	ForceSendFields []string `json:"-"`
5271
5272	// NullFields is a list of field names (e.g. "Parameters") to include in
5273	// API requests with the JSON null value. By default, fields with empty
5274	// values are omitted from API requests. However, any field with an
5275	// empty value appearing in NullFields will be sent to the server as
5276	// null. It is an error if a field in this list has a non-empty value.
5277	// This may be used to include null fields in Patch requests.
5278	NullFields []string `json:"-"`
5279}
5280
5281func (s *GoogleCloudDialogflowCxV3beta1Form) MarshalJSON() ([]byte, error) {
5282	type NoMethod GoogleCloudDialogflowCxV3beta1Form
5283	raw := NoMethod(*s)
5284	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5285}
5286
5287// GoogleCloudDialogflowCxV3beta1FormParameter: Represents a form
5288// parameter.
5289type GoogleCloudDialogflowCxV3beta1FormParameter struct {
5290	// DefaultValue: The default value of an optional parameter. If the
5291	// parameter is required, the default value will be ignored.
5292	DefaultValue interface{} `json:"defaultValue,omitempty"`
5293
5294	// DisplayName: Required. The human-readable name of the parameter,
5295	// unique within the form.
5296	DisplayName string `json:"displayName,omitempty"`
5297
5298	// EntityType: Required. The entity type of the parameter. Format:
5299	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
5300	// types (for example,
5301	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
5302	// `projects//locations//agents//entityTypes/` for developer entity
5303	// types.
5304	EntityType string `json:"entityType,omitempty"`
5305
5306	// FillBehavior: Required. Defines fill behavior for the parameter.
5307	FillBehavior *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior `json:"fillBehavior,omitempty"`
5308
5309	// IsList: Indicates whether the parameter represents a list of values.
5310	IsList bool `json:"isList,omitempty"`
5311
5312	// Redact: Indicates whether the parameter content should be redacted in
5313	// log. If redaction is enabled, the parameter content will be replaced
5314	// by parameter name during logging. Note: the parameter content is
5315	// subject to redaction if either parameter level redaction or entity
5316	// type level redaction is enabled.
5317	Redact bool `json:"redact,omitempty"`
5318
5319	// Required: Indicates whether the parameter is required. Optional
5320	// parameters will not trigger prompts; however, they are filled if the
5321	// user specifies them. Required parameters must be filled before form
5322	// filling concludes.
5323	Required bool `json:"required,omitempty"`
5324
5325	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
5326	// unconditionally include in API requests. By default, fields with
5327	// empty or default values are omitted from API requests. However, any
5328	// non-pointer, non-interface field appearing in ForceSendFields will be
5329	// sent to the server regardless of whether the field is empty or not.
5330	// This may be used to include empty fields in Patch requests.
5331	ForceSendFields []string `json:"-"`
5332
5333	// NullFields is a list of field names (e.g. "DefaultValue") to include
5334	// in API requests with the JSON null value. By default, fields with
5335	// empty values are omitted from API requests. However, any field with
5336	// an empty value appearing in NullFields will be sent to the server as
5337	// null. It is an error if a field in this list has a non-empty value.
5338	// This may be used to include null fields in Patch requests.
5339	NullFields []string `json:"-"`
5340}
5341
5342func (s *GoogleCloudDialogflowCxV3beta1FormParameter) MarshalJSON() ([]byte, error) {
5343	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameter
5344	raw := NoMethod(*s)
5345	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5346}
5347
5348// GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior:
5349// Configuration for how the filling of a parameter should be handled.
5350type GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior struct {
5351	// InitialPromptFulfillment: Required. The fulfillment to provide the
5352	// initial prompt that the agent can present to the user in order to
5353	// fill the parameter.
5354	InitialPromptFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"initialPromptFulfillment,omitempty"`
5355
5356	// RepromptEventHandlers: The handlers for parameter-level events, used
5357	// to provide reprompt for the parameter or transition to a different
5358	// page/flow. The supported events are: * `sys.no-match-`, where N can
5359	// be from 1 to 6 * `sys.no-match-default` * `sys.no-input-`, where N
5360	// can be from 1 to 6 * `sys.no-input-default` * `sys.invalid-parameter`
5361	// `initial_prompt_fulfillment` provides the first prompt for the
5362	// parameter. If the user's response does not fill the parameter, a
5363	// no-match/no-input event will be triggered, and the fulfillment
5364	// associated with the `sys.no-match-1`/`sys.no-input-1` handler (if
5365	// defined) will be called to provide a prompt. The
5366	// `sys.no-match-2`/`sys.no-input-2` handler (if defined) will respond
5367	// to the next no-match/no-input event, and so on. A
5368	// `sys.no-match-default` or `sys.no-input-default` handler will be used
5369	// to handle all following no-match/no-input events after all numbered
5370	// no-match/no-input handlers for the parameter are consumed. A
5371	// `sys.invalid-parameter` handler can be defined to handle the case
5372	// where the parameter values have been `invalidated` by webhook. For
5373	// example, if the user's response fill the parameter, however the
5374	// parameter was invalidated by webhook, the fulfillment associated with
5375	// the `sys.invalid-parameter` handler (if defined) will be called to
5376	// provide a prompt. If the event handler for the corresponding event
5377	// can't be found on the parameter, `initial_prompt_fulfillment` will be
5378	// re-prompted.
5379	RepromptEventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"repromptEventHandlers,omitempty"`
5380
5381	// ForceSendFields is a list of field names (e.g.
5382	// "InitialPromptFulfillment") to unconditionally include in API
5383	// requests. By default, fields with empty or default values are omitted
5384	// from API requests. However, any non-pointer, non-interface field
5385	// appearing in ForceSendFields will be sent to the server regardless of
5386	// whether the field is empty or not. This may be used to include empty
5387	// fields in Patch requests.
5388	ForceSendFields []string `json:"-"`
5389
5390	// NullFields is a list of field names (e.g. "InitialPromptFulfillment")
5391	// to include in API requests with the JSON null value. By default,
5392	// fields with empty values are omitted from API requests. However, any
5393	// field with an empty value appearing in NullFields will be sent to the
5394	// server as null. It is an error if a field in this list has a
5395	// non-empty value. This may be used to include null fields in Patch
5396	// requests.
5397	NullFields []string `json:"-"`
5398}
5399
5400func (s *GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior) MarshalJSON() ([]byte, error) {
5401	type NoMethod GoogleCloudDialogflowCxV3beta1FormParameterFillBehavior
5402	raw := NoMethod(*s)
5403	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5404}
5405
5406// GoogleCloudDialogflowCxV3beta1FulfillIntentRequest: Request of
5407// FulfillIntent
5408type GoogleCloudDialogflowCxV3beta1FulfillIntentRequest struct {
5409	// Match: The matched intent/event to fulfill.
5410	Match *GoogleCloudDialogflowCxV3beta1Match `json:"match,omitempty"`
5411
5412	// MatchIntentRequest: Must be same as the corresponding MatchIntent
5413	// request, otherwise the behavior is undefined.
5414	MatchIntentRequest *GoogleCloudDialogflowCxV3beta1MatchIntentRequest `json:"matchIntentRequest,omitempty"`
5415
5416	// OutputAudioConfig: Instructs the speech synthesizer how to generate
5417	// output audio.
5418	OutputAudioConfig *GoogleCloudDialogflowCxV3beta1OutputAudioConfig `json:"outputAudioConfig,omitempty"`
5419
5420	// ForceSendFields is a list of field names (e.g. "Match") to
5421	// unconditionally include in API requests. By default, fields with
5422	// empty or default values are omitted from API requests. However, any
5423	// non-pointer, non-interface field appearing in ForceSendFields will be
5424	// sent to the server regardless of whether the field is empty or not.
5425	// This may be used to include empty fields in Patch requests.
5426	ForceSendFields []string `json:"-"`
5427
5428	// NullFields is a list of field names (e.g. "Match") to include in API
5429	// requests with the JSON null value. By default, fields with empty
5430	// values are omitted from API requests. However, any field with an
5431	// empty value appearing in NullFields will be sent to the server as
5432	// null. It is an error if a field in this list has a non-empty value.
5433	// This may be used to include null fields in Patch requests.
5434	NullFields []string `json:"-"`
5435}
5436
5437func (s *GoogleCloudDialogflowCxV3beta1FulfillIntentRequest) MarshalJSON() ([]byte, error) {
5438	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillIntentRequest
5439	raw := NoMethod(*s)
5440	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5441}
5442
5443// GoogleCloudDialogflowCxV3beta1FulfillIntentResponse: Response of
5444// FulfillIntent
5445type GoogleCloudDialogflowCxV3beta1FulfillIntentResponse struct {
5446	// OutputAudio: The audio data bytes encoded as specified in the
5447	// request. Note: The output audio is generated based on the values of
5448	// default platform text responses found in the
5449	// `query_result.response_messages` field. If multiple default text
5450	// responses exist, they will be concatenated when generating audio. If
5451	// no default platform text responses exist, the generated audio content
5452	// will be empty. In some scenarios, multiple output audio fields may be
5453	// present in the response structure. In these cases, only the
5454	// top-most-level audio output has content.
5455	OutputAudio string `json:"outputAudio,omitempty"`
5456
5457	// OutputAudioConfig: The config used by the speech synthesizer to
5458	// generate the output audio.
5459	OutputAudioConfig *GoogleCloudDialogflowCxV3beta1OutputAudioConfig `json:"outputAudioConfig,omitempty"`
5460
5461	// QueryResult: The result of the conversational query.
5462	QueryResult *GoogleCloudDialogflowCxV3beta1QueryResult `json:"queryResult,omitempty"`
5463
5464	// ResponseId: Output only. The unique identifier of the response. It
5465	// can be used to locate a response in the training example set or for
5466	// reporting issues.
5467	ResponseId string `json:"responseId,omitempty"`
5468
5469	// ServerResponse contains the HTTP response code and headers from the
5470	// server.
5471	googleapi.ServerResponse `json:"-"`
5472
5473	// ForceSendFields is a list of field names (e.g. "OutputAudio") to
5474	// unconditionally include in API requests. By default, fields with
5475	// empty or default values are omitted from API requests. However, any
5476	// non-pointer, non-interface field appearing in ForceSendFields will be
5477	// sent to the server regardless of whether the field is empty or not.
5478	// This may be used to include empty fields in Patch requests.
5479	ForceSendFields []string `json:"-"`
5480
5481	// NullFields is a list of field names (e.g. "OutputAudio") to include
5482	// in API requests with the JSON null value. By default, fields with
5483	// empty values are omitted from API requests. However, any field with
5484	// an empty value appearing in NullFields will be sent to the server as
5485	// null. It is an error if a field in this list has a non-empty value.
5486	// This may be used to include null fields in Patch requests.
5487	NullFields []string `json:"-"`
5488}
5489
5490func (s *GoogleCloudDialogflowCxV3beta1FulfillIntentResponse) MarshalJSON() ([]byte, error) {
5491	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillIntentResponse
5492	raw := NoMethod(*s)
5493	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5494}
5495
5496// GoogleCloudDialogflowCxV3beta1Fulfillment: A fulfillment can do one
5497// or more of the following actions at the same time: * Generate rich
5498// message responses. * Set parameter values. * Call the webhook.
5499// Fulfillments can be called at various stages in the Page or Form
5500// lifecycle. For example, when a DetectIntentRequest drives a session
5501// to enter a new page, the page's entry fulfillment can add a static
5502// response to the QueryResult in the returning DetectIntentResponse,
5503// call the webhook (for example, to load user data from a database), or
5504// both.
5505type GoogleCloudDialogflowCxV3beta1Fulfillment struct {
5506	// ConditionalCases: Conditional cases for this fulfillment.
5507	ConditionalCases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"conditionalCases,omitempty"`
5508
5509	// Messages: The list of rich message responses to present to the user.
5510	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
5511
5512	// ReturnPartialResponses: Whether Dialogflow should return currently
5513	// queued fulfillment response messages in streaming APIs. If a webhook
5514	// is specified, it happens before Dialogflow invokes webhook. Warning:
5515	// 1) This flag only affects streaming API. Responses are still queued
5516	// and returned once in non-streaming API. 2) The flag can be enabled in
5517	// any fulfillment but only the first 3 partial responses will be
5518	// returned. You may only want to apply it to fulfillments that have
5519	// slow webhooks.
5520	ReturnPartialResponses bool `json:"returnPartialResponses,omitempty"`
5521
5522	// SetParameterActions: Set parameter values before executing the
5523	// webhook.
5524	SetParameterActions []*GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction `json:"setParameterActions,omitempty"`
5525
5526	// Tag: The tag used by the webhook to identify which fulfillment is
5527	// being called. This field is required if `webhook` is specified.
5528	Tag string `json:"tag,omitempty"`
5529
5530	// Webhook: The webhook to call. Format:
5531	// `projects//locations//agents//webhooks/`.
5532	Webhook string `json:"webhook,omitempty"`
5533
5534	// ForceSendFields is a list of field names (e.g. "ConditionalCases") to
5535	// unconditionally include in API requests. By default, fields with
5536	// empty or default values are omitted from API requests. However, any
5537	// non-pointer, non-interface field appearing in ForceSendFields will be
5538	// sent to the server regardless of whether the field is empty or not.
5539	// This may be used to include empty fields in Patch requests.
5540	ForceSendFields []string `json:"-"`
5541
5542	// NullFields is a list of field names (e.g. "ConditionalCases") to
5543	// include in API requests with the JSON null value. By default, fields
5544	// with empty values are omitted from API requests. However, any field
5545	// with an empty value appearing in NullFields will be sent to the
5546	// server as null. It is an error if a field in this list has a
5547	// non-empty value. This may be used to include null fields in Patch
5548	// requests.
5549	NullFields []string `json:"-"`
5550}
5551
5552func (s *GoogleCloudDialogflowCxV3beta1Fulfillment) MarshalJSON() ([]byte, error) {
5553	type NoMethod GoogleCloudDialogflowCxV3beta1Fulfillment
5554	raw := NoMethod(*s)
5555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5556}
5557
5558// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases: A list of
5559// cascading if-else conditions. Cases are mutually exclusive. The first
5560// one with a matching condition is selected, all the rest ignored.
5561type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases struct {
5562	// Cases: A list of cascading if-else conditions.
5563	Cases []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase `json:"cases,omitempty"`
5564
5565	// ForceSendFields is a list of field names (e.g. "Cases") to
5566	// unconditionally include in API requests. By default, fields with
5567	// empty or default values are omitted from API requests. However, any
5568	// non-pointer, non-interface field appearing in ForceSendFields will be
5569	// sent to the server regardless of whether the field is empty or not.
5570	// This may be used to include empty fields in Patch requests.
5571	ForceSendFields []string `json:"-"`
5572
5573	// NullFields is a list of field names (e.g. "Cases") to include in API
5574	// requests with the JSON null value. By default, fields with empty
5575	// values are omitted from API requests. However, any field with an
5576	// empty value appearing in NullFields will be sent to the server as
5577	// null. It is an error if a field in this list has a non-empty value.
5578	// This may be used to include null fields in Patch requests.
5579	NullFields []string `json:"-"`
5580}
5581
5582func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases) MarshalJSON() ([]byte, error) {
5583	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases
5584	raw := NoMethod(*s)
5585	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5586}
5587
5588// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase: Each
5589// case has a Boolean condition. When it is evaluated to be True, the
5590// corresponding messages will be selected and evaluated recursively.
5591type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase struct {
5592	// CaseContent: A list of case content.
5593	CaseContent []*GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent `json:"caseContent,omitempty"`
5594
5595	// Condition: The condition to activate and select this case. Empty
5596	// means the condition is always true. The condition is evaluated
5597	// against form parameters or session parameters. See the conditions
5598	// reference
5599	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
5600	Condition string `json:"condition,omitempty"`
5601
5602	// ForceSendFields is a list of field names (e.g. "CaseContent") to
5603	// unconditionally include in API requests. By default, fields with
5604	// empty or default values are omitted from API requests. However, any
5605	// non-pointer, non-interface field appearing in ForceSendFields will be
5606	// sent to the server regardless of whether the field is empty or not.
5607	// This may be used to include empty fields in Patch requests.
5608	ForceSendFields []string `json:"-"`
5609
5610	// NullFields is a list of field names (e.g. "CaseContent") to include
5611	// in API requests with the JSON null value. By default, fields with
5612	// empty values are omitted from API requests. However, any field with
5613	// an empty value appearing in NullFields will be sent to the server as
5614	// null. It is an error if a field in this list has a non-empty value.
5615	// This may be used to include null fields in Patch requests.
5616	NullFields []string `json:"-"`
5617}
5618
5619func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase) MarshalJSON() ([]byte, error) {
5620	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCase
5621	raw := NoMethod(*s)
5622	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5623}
5624
5625// GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseConte
5626// nt: The list of messages or conditional cases to activate for this
5627// case.
5628type GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent struct {
5629	// AdditionalCases: Additional cases to be evaluated.
5630	AdditionalCases *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCases `json:"additionalCases,omitempty"`
5631
5632	// Message: Returned message.
5633	Message *GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"message,omitempty"`
5634
5635	// ForceSendFields is a list of field names (e.g. "AdditionalCases") to
5636	// unconditionally include in API requests. By default, fields with
5637	// empty or default values are omitted from API requests. However, any
5638	// non-pointer, non-interface field appearing in ForceSendFields will be
5639	// sent to the server regardless of whether the field is empty or not.
5640	// This may be used to include empty fields in Patch requests.
5641	ForceSendFields []string `json:"-"`
5642
5643	// NullFields is a list of field names (e.g. "AdditionalCases") to
5644	// include in API requests with the JSON null value. By default, fields
5645	// with empty values are omitted from API requests. However, any field
5646	// with an empty value appearing in NullFields will be sent to the
5647	// server as null. It is an error if a field in this list has a
5648	// non-empty value. This may be used to include null fields in Patch
5649	// requests.
5650	NullFields []string `json:"-"`
5651}
5652
5653func (s *GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent) MarshalJSON() ([]byte, error) {
5654	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentConditionalCasesCaseCaseContent
5655	raw := NoMethod(*s)
5656	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5657}
5658
5659// GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction: Setting
5660// a parameter value.
5661type GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction struct {
5662	// Parameter: Display name of the parameter.
5663	Parameter string `json:"parameter,omitempty"`
5664
5665	// Value: The new value of the parameter. A null value clears the
5666	// parameter.
5667	Value interface{} `json:"value,omitempty"`
5668
5669	// ForceSendFields is a list of field names (e.g. "Parameter") to
5670	// unconditionally include in API requests. By default, fields with
5671	// empty or default values are omitted from API requests. However, any
5672	// non-pointer, non-interface field appearing in ForceSendFields will be
5673	// sent to the server regardless of whether the field is empty or not.
5674	// This may be used to include empty fields in Patch requests.
5675	ForceSendFields []string `json:"-"`
5676
5677	// NullFields is a list of field names (e.g. "Parameter") to include in
5678	// API requests with the JSON null value. By default, fields with empty
5679	// values are omitted from API requests. However, any field with an
5680	// empty value appearing in NullFields will be sent to the server as
5681	// null. It is an error if a field in this list has a non-empty value.
5682	// This may be used to include null fields in Patch requests.
5683	NullFields []string `json:"-"`
5684}
5685
5686func (s *GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction) MarshalJSON() ([]byte, error) {
5687	type NoMethod GoogleCloudDialogflowCxV3beta1FulfillmentSetParameterAction
5688	raw := NoMethod(*s)
5689	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5690}
5691
5692// GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata:
5693// Metadata in google::longrunning::Operation for Knowledge operations.
5694type GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata struct {
5695	// State: Required. Output only. The current state of this operation.
5696	//
5697	// Possible values:
5698	//   "STATE_UNSPECIFIED" - State unspecified.
5699	//   "PENDING" - The operation has been created.
5700	//   "RUNNING" - The operation is currently running.
5701	//   "DONE" - The operation is done, either cancelled or completed.
5702	State string `json:"state,omitempty"`
5703
5704	// ForceSendFields is a list of field names (e.g. "State") to
5705	// unconditionally include in API requests. By default, fields with
5706	// empty or default values are omitted from API requests. However, any
5707	// non-pointer, non-interface field appearing in ForceSendFields will be
5708	// sent to the server regardless of whether the field is empty or not.
5709	// This may be used to include empty fields in Patch requests.
5710	ForceSendFields []string `json:"-"`
5711
5712	// NullFields is a list of field names (e.g. "State") to include in API
5713	// requests with the JSON null value. By default, fields with empty
5714	// values are omitted from API requests. However, any field with an
5715	// empty value appearing in NullFields will be sent to the server as
5716	// null. It is an error if a field in this list has a non-empty value.
5717	// This may be used to include null fields in Patch requests.
5718	NullFields []string `json:"-"`
5719}
5720
5721func (s *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
5722	type NoMethod GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata
5723	raw := NoMethod(*s)
5724	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5725}
5726
5727// GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata:
5728// Metadata for ImportDocuments operation.
5729type GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata struct {
5730	// GenericMetadata: The generic information of the operation.
5731	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
5732
5733	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
5734	// unconditionally include in API requests. By default, fields with
5735	// empty or default values are omitted from API requests. However, any
5736	// non-pointer, non-interface field appearing in ForceSendFields will be
5737	// sent to the server regardless of whether the field is empty or not.
5738	// This may be used to include empty fields in Patch requests.
5739	ForceSendFields []string `json:"-"`
5740
5741	// NullFields is a list of field names (e.g. "GenericMetadata") to
5742	// include in API requests with the JSON null value. By default, fields
5743	// with empty values are omitted from API requests. However, any field
5744	// with an empty value appearing in NullFields will be sent to the
5745	// server as null. It is an error if a field in this list has a
5746	// non-empty value. This may be used to include null fields in Patch
5747	// requests.
5748	NullFields []string `json:"-"`
5749}
5750
5751func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
5752	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsOperationMetadata
5753	raw := NoMethod(*s)
5754	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5755}
5756
5757// GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse: Response
5758// message for Documents.ImportDocuments.
5759type GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse struct {
5760	// Warnings: Includes details about skipped documents or any other
5761	// warnings.
5762	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
5763
5764	// ForceSendFields is a list of field names (e.g. "Warnings") to
5765	// unconditionally include in API requests. By default, fields with
5766	// empty or default values are omitted from API requests. However, any
5767	// non-pointer, non-interface field appearing in ForceSendFields will be
5768	// sent to the server regardless of whether the field is empty or not.
5769	// This may be used to include empty fields in Patch requests.
5770	ForceSendFields []string `json:"-"`
5771
5772	// NullFields is a list of field names (e.g. "Warnings") to include in
5773	// API requests with the JSON null value. By default, fields with empty
5774	// values are omitted from API requests. However, any field with an
5775	// empty value appearing in NullFields will be sent to the server as
5776	// null. It is an error if a field in this list has a non-empty value.
5777	// This may be used to include null fields in Patch requests.
5778	NullFields []string `json:"-"`
5779}
5780
5781func (s *GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
5782	type NoMethod GoogleCloudDialogflowCxV3beta1ImportDocumentsResponse
5783	raw := NoMethod(*s)
5784	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5785}
5786
5787// GoogleCloudDialogflowCxV3beta1ImportFlowRequest: The request message
5788// for Flows.ImportFlow.
5789type GoogleCloudDialogflowCxV3beta1ImportFlowRequest struct {
5790	// FlowContent: Uncompressed raw byte content for flow.
5791	FlowContent string `json:"flowContent,omitempty"`
5792
5793	// FlowUri: The Google Cloud Storage
5794	// (https://cloud.google.com/storage/docs/) URI to import flow from. The
5795	// format of this URI must be `gs:///`.
5796	FlowUri string `json:"flowUri,omitempty"`
5797
5798	// ImportOption: Flow import mode. If not specified, `KEEP` is assumed.
5799	//
5800	// Possible values:
5801	//   "IMPORT_OPTION_UNSPECIFIED" - Unspecified. Treated as `KEEP`.
5802	//   "KEEP" - Always respect settings in exported flow content. It may
5803	// cause a import failure if some settings (e.g. custom NLU) are not
5804	// supported in the agent to import into.
5805	//   "FALLBACK" - Fallback to default settings if some settings are not
5806	// supported in the agent to import into. E.g. Standard NLU will be used
5807	// if custom NLU is not available.
5808	ImportOption string `json:"importOption,omitempty"`
5809
5810	// ForceSendFields is a list of field names (e.g. "FlowContent") to
5811	// unconditionally include in API requests. By default, fields with
5812	// empty or default values are omitted from API requests. However, any
5813	// non-pointer, non-interface field appearing in ForceSendFields will be
5814	// sent to the server regardless of whether the field is empty or not.
5815	// This may be used to include empty fields in Patch requests.
5816	ForceSendFields []string `json:"-"`
5817
5818	// NullFields is a list of field names (e.g. "FlowContent") to include
5819	// in API requests with the JSON null value. By default, fields with
5820	// empty values are omitted from API requests. However, any field with
5821	// an empty value appearing in NullFields will be sent to the server as
5822	// null. It is an error if a field in this list has a non-empty value.
5823	// This may be used to include null fields in Patch requests.
5824	NullFields []string `json:"-"`
5825}
5826
5827func (s *GoogleCloudDialogflowCxV3beta1ImportFlowRequest) MarshalJSON() ([]byte, error) {
5828	type NoMethod GoogleCloudDialogflowCxV3beta1ImportFlowRequest
5829	raw := NoMethod(*s)
5830	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5831}
5832
5833// GoogleCloudDialogflowCxV3beta1ImportFlowResponse: The response
5834// message for Flows.ImportFlow.
5835type GoogleCloudDialogflowCxV3beta1ImportFlowResponse struct {
5836	// Flow: The unique identifier of the new flow. Format:
5837	// `projects//locations//agents//flows/`.
5838	Flow string `json:"flow,omitempty"`
5839
5840	// ForceSendFields is a list of field names (e.g. "Flow") to
5841	// unconditionally include in API requests. By default, fields with
5842	// empty or default values are omitted from API requests. However, any
5843	// non-pointer, non-interface field appearing in ForceSendFields will be
5844	// sent to the server regardless of whether the field is empty or not.
5845	// This may be used to include empty fields in Patch requests.
5846	ForceSendFields []string `json:"-"`
5847
5848	// NullFields is a list of field names (e.g. "Flow") to include in API
5849	// requests with the JSON null value. By default, fields with empty
5850	// values are omitted from API requests. However, any field with an
5851	// empty value appearing in NullFields will be sent to the server as
5852	// null. It is an error if a field in this list has a non-empty value.
5853	// This may be used to include null fields in Patch requests.
5854	NullFields []string `json:"-"`
5855}
5856
5857func (s *GoogleCloudDialogflowCxV3beta1ImportFlowResponse) MarshalJSON() ([]byte, error) {
5858	type NoMethod GoogleCloudDialogflowCxV3beta1ImportFlowResponse
5859	raw := NoMethod(*s)
5860	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5861}
5862
5863// GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata: Metadata
5864// returned for the TestCases.ImportTestCases long running operation.
5865type GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata struct {
5866	// Errors: Errors for failed test cases.
5867	Errors []*GoogleCloudDialogflowCxV3beta1TestCaseError `json:"errors,omitempty"`
5868
5869	// ForceSendFields is a list of field names (e.g. "Errors") to
5870	// unconditionally include in API requests. By default, fields with
5871	// empty or default values are omitted from API requests. However, any
5872	// non-pointer, non-interface field appearing in ForceSendFields will be
5873	// sent to the server regardless of whether the field is empty or not.
5874	// This may be used to include empty fields in Patch requests.
5875	ForceSendFields []string `json:"-"`
5876
5877	// NullFields is a list of field names (e.g. "Errors") to include in API
5878	// requests with the JSON null value. By default, fields with empty
5879	// values are omitted from API requests. However, any field with an
5880	// empty value appearing in NullFields will be sent to the server as
5881	// null. It is an error if a field in this list has a non-empty value.
5882	// This may be used to include null fields in Patch requests.
5883	NullFields []string `json:"-"`
5884}
5885
5886func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata) MarshalJSON() ([]byte, error) {
5887	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesMetadata
5888	raw := NoMethod(*s)
5889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5890}
5891
5892// GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest: The request
5893// message for TestCases.ImportTestCases.
5894type GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest struct {
5895	// Content: Uncompressed raw byte content for test cases.
5896	Content string `json:"content,omitempty"`
5897
5898	// GcsUri: The Google Cloud Storage
5899	// (https://cloud.google.com/storage/docs/) URI to import test cases
5900	// from. The format of this URI must be `gs:///`.
5901	GcsUri string `json:"gcsUri,omitempty"`
5902
5903	// ForceSendFields is a list of field names (e.g. "Content") to
5904	// unconditionally include in API requests. By default, fields with
5905	// empty or default values are omitted from API requests. However, any
5906	// non-pointer, non-interface field appearing in ForceSendFields will be
5907	// sent to the server regardless of whether the field is empty or not.
5908	// This may be used to include empty fields in Patch requests.
5909	ForceSendFields []string `json:"-"`
5910
5911	// NullFields is a list of field names (e.g. "Content") to include in
5912	// API requests with the JSON null value. By default, fields with empty
5913	// values are omitted from API requests. However, any field with an
5914	// empty value appearing in NullFields will be sent to the server as
5915	// null. It is an error if a field in this list has a non-empty value.
5916	// This may be used to include null fields in Patch requests.
5917	NullFields []string `json:"-"`
5918}
5919
5920func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest) MarshalJSON() ([]byte, error) {
5921	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest
5922	raw := NoMethod(*s)
5923	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5924}
5925
5926// GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse: The response
5927// message for TestCases.ImportTestCases.
5928type GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse struct {
5929	// Names: The unique identifiers of the new test cases. Format:
5930	// `projects//locations//agents//testCases/`.
5931	Names []string `json:"names,omitempty"`
5932
5933	// ForceSendFields is a list of field names (e.g. "Names") to
5934	// unconditionally include in API requests. By default, fields with
5935	// empty or default values are omitted from API requests. However, any
5936	// non-pointer, non-interface field appearing in ForceSendFields will be
5937	// sent to the server regardless of whether the field is empty or not.
5938	// This may be used to include empty fields in Patch requests.
5939	ForceSendFields []string `json:"-"`
5940
5941	// NullFields is a list of field names (e.g. "Names") to include in API
5942	// requests with the JSON null value. By default, fields with empty
5943	// values are omitted from API requests. However, any field with an
5944	// empty value appearing in NullFields will be sent to the server as
5945	// null. It is an error if a field in this list has a non-empty value.
5946	// This may be used to include null fields in Patch requests.
5947	NullFields []string `json:"-"`
5948}
5949
5950func (s *GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse) MarshalJSON() ([]byte, error) {
5951	type NoMethod GoogleCloudDialogflowCxV3beta1ImportTestCasesResponse
5952	raw := NoMethod(*s)
5953	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
5954}
5955
5956// GoogleCloudDialogflowCxV3beta1InputAudioConfig: Instructs the speech
5957// recognizer on how to process the audio content.
5958type GoogleCloudDialogflowCxV3beta1InputAudioConfig struct {
5959	// AudioEncoding: Required. Audio encoding of the audio content to
5960	// process.
5961	//
5962	// Possible values:
5963	//   "AUDIO_ENCODING_UNSPECIFIED" - Not specified.
5964	//   "AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
5965	// little-endian samples (Linear PCM).
5966	//   "AUDIO_ENCODING_FLAC" -
5967	// [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless
5968	// Audio Codec) is the recommended encoding because it is lossless
5969	// (therefore recognition is not compromised) and requires only about
5970	// half the bandwidth of `LINEAR16`. `FLAC` stream encoding supports
5971	// 16-bit and 24-bit samples, however, not all fields in `STREAMINFO`
5972	// are supported.
5973	//   "AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit audio
5974	// samples using G.711 PCMU/mu-law.
5975	//   "AUDIO_ENCODING_AMR" - Adaptive Multi-Rate Narrowband codec.
5976	// `sample_rate_hertz` must be 8000.
5977	//   "AUDIO_ENCODING_AMR_WB" - Adaptive Multi-Rate Wideband codec.
5978	// `sample_rate_hertz` must be 16000.
5979	//   "AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio frames in Ogg
5980	// container ([OggOpus](https://wiki.xiph.org/OggOpus)).
5981	// `sample_rate_hertz` must be 16000.
5982	//   "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE" - Although the use of lossy
5983	// encodings is not recommended, if a very low bitrate encoding is
5984	// required, `OGG_OPUS` is highly preferred over Speex encoding. The
5985	// [Speex](https://speex.org/) encoding supported by Dialogflow API has
5986	// a header byte in each block, as in MIME type
5987	// `audio/x-speex-with-header-byte`. It is a variant of the RTP Speex
5988	// encoding defined in [RFC 5574](https://tools.ietf.org/html/rfc5574).
5989	// The stream is a sequence of blocks, one block per RTP packet. Each
5990	// block starts with a byte containing the length of the block, in
5991	// bytes, followed by one or more frames of Speex data, padded to an
5992	// integral number of bytes (octets) as specified in RFC 5574. In other
5993	// words, each RTP header is replaced with a single byte containing the
5994	// block length. Only Speex wideband is supported. `sample_rate_hertz`
5995	// must be 16000.
5996	AudioEncoding string `json:"audioEncoding,omitempty"`
5997
5998	// EnableWordInfo: Optional. If `true`, Dialogflow returns
5999	// SpeechWordInfo in StreamingRecognitionResult with information about
6000	// the recognized speech words, e.g. start and end time offsets. If
6001	// false or unspecified, Speech doesn't return any word-level
6002	// information.
6003	EnableWordInfo bool `json:"enableWordInfo,omitempty"`
6004
6005	// Model: Optional. Which Speech model to select for the given request.
6006	// Select the model best suited to your domain to get best results. If a
6007	// model is not explicitly specified, then we auto-select a model based
6008	// on the parameters in the InputAudioConfig. If enhanced speech model
6009	// is enabled for the agent and an enhanced version of the specified
6010	// model for the language does not exist, then the speech is recognized
6011	// using the standard version of the specified model. Refer to Cloud
6012	// Speech API documentation
6013	// (https://cloud.google.com/speech-to-text/docs/basics#select-model)
6014	// for more details.
6015	Model string `json:"model,omitempty"`
6016
6017	// ModelVariant: Optional. Which variant of the Speech model to use.
6018	//
6019	// Possible values:
6020	//   "SPEECH_MODEL_VARIANT_UNSPECIFIED" - No model variant specified. In
6021	// this case Dialogflow defaults to USE_BEST_AVAILABLE.
6022	//   "USE_BEST_AVAILABLE" - Use the best available variant of the Speech
6023	// model that the caller is eligible for. Please see the [Dialogflow
6024	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
6025	// to make your project eligible for enhanced models.
6026	//   "USE_STANDARD" - Use standard model variant even if an enhanced
6027	// model is available. See the [Cloud Speech
6028	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
6029	// odels) for details about enhanced models.
6030	//   "USE_ENHANCED" - Use an enhanced model variant: * If an enhanced
6031	// variant does not exist for the given model and request language,
6032	// Dialogflow falls back to the standard variant. The [Cloud Speech
6033	// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-m
6034	// odels) describes which models have enhanced variants. * If the API
6035	// caller isn't eligible for enhanced models, Dialogflow returns an
6036	// error. Please see the [Dialogflow
6037	// docs](https://cloud.google.com/dialogflow/docs/data-logging) for how
6038	// to make your project eligible.
6039	ModelVariant string `json:"modelVariant,omitempty"`
6040
6041	// PhraseHints: Optional. A list of strings containing words and phrases
6042	// that the speech recognizer should recognize with higher likelihood.
6043	// See the Cloud Speech documentation
6044	// (https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
6045	// for more details.
6046	PhraseHints []string `json:"phraseHints,omitempty"`
6047
6048	// SampleRateHertz: Sample rate (in Hertz) of the audio content sent in
6049	// the query. Refer to Cloud Speech API documentation
6050	// (https://cloud.google.com/speech-to-text/docs/basics) for more
6051	// details.
6052	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
6053
6054	// SingleUtterance: Optional. If `false` (default), recognition does not
6055	// cease until the client closes the stream. If `true`, the recognizer
6056	// will detect a single spoken utterance in input audio. Recognition
6057	// ceases when it detects the audio's voice has stopped or paused. In
6058	// this case, once a detected intent is received, the client should
6059	// close the stream and start a new request with a new stream as needed.
6060	// Note: This setting is relevant only for streaming methods.
6061	SingleUtterance bool `json:"singleUtterance,omitempty"`
6062
6063	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
6064	// unconditionally include in API requests. By default, fields with
6065	// empty or default values are omitted from API requests. However, any
6066	// non-pointer, non-interface field appearing in ForceSendFields will be
6067	// sent to the server regardless of whether the field is empty or not.
6068	// This may be used to include empty fields in Patch requests.
6069	ForceSendFields []string `json:"-"`
6070
6071	// NullFields is a list of field names (e.g. "AudioEncoding") to include
6072	// in API requests with the JSON null value. By default, fields with
6073	// empty values are omitted from API requests. However, any field with
6074	// an empty value appearing in NullFields will be sent to the server as
6075	// null. It is an error if a field in this list has a non-empty value.
6076	// This may be used to include null fields in Patch requests.
6077	NullFields []string `json:"-"`
6078}
6079
6080func (s *GoogleCloudDialogflowCxV3beta1InputAudioConfig) MarshalJSON() ([]byte, error) {
6081	type NoMethod GoogleCloudDialogflowCxV3beta1InputAudioConfig
6082	raw := NoMethod(*s)
6083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6084}
6085
6086// GoogleCloudDialogflowCxV3beta1Intent: An intent represents a user's
6087// intent to interact with a conversational agent. You can provide
6088// information for the Dialogflow API to use to match user input to an
6089// intent by adding training phrases (i.e., examples of user input) to
6090// your intent.
6091type GoogleCloudDialogflowCxV3beta1Intent struct {
6092	// Description: Human readable description for better understanding an
6093	// intent like its scope, content, result etc. Maximum character limit:
6094	// 140 characters.
6095	Description string `json:"description,omitempty"`
6096
6097	// DisplayName: Required. The human-readable name of the intent, unique
6098	// within the agent.
6099	DisplayName string `json:"displayName,omitempty"`
6100
6101	// IsFallback: Indicates whether this is a fallback intent. Currently
6102	// only default fallback intent is allowed in the agent, which is added
6103	// upon agent creation. Adding training phrases to fallback intent is
6104	// useful in the case of requests that are mistakenly matched, since
6105	// training phrases assigned to fallback intents act as negative
6106	// examples that triggers no-match event.
6107	IsFallback bool `json:"isFallback,omitempty"`
6108
6109	// Labels: The key/value metadata to label an intent. Labels can contain
6110	// lowercase letters, digits and the symbols '-' and '_'. International
6111	// characters are allowed, including letters from unicase alphabets.
6112	// Keys must start with a letter. Keys and values can be no longer than
6113	// 63 characters and no more than 128 bytes. Prefix "sys-" is reserved
6114	// for Dialogflow defined labels. Currently allowed Dialogflow defined
6115	// labels include: * sys-head * sys-contextual The above labels do not
6116	// require value. "sys-head" means the intent is a head intent.
6117	// "sys-contextual" means the intent is a contextual intent.
6118	Labels map[string]string `json:"labels,omitempty"`
6119
6120	// Name: The unique identifier of the intent. Required for the
6121	// Intents.UpdateIntent method. Intents.CreateIntent populates the name
6122	// automatically. Format: `projects//locations//agents//intents/`.
6123	Name string `json:"name,omitempty"`
6124
6125	// Parameters: The collection of parameters associated with the intent.
6126	Parameters []*GoogleCloudDialogflowCxV3beta1IntentParameter `json:"parameters,omitempty"`
6127
6128	// Priority: The priority of this intent. Higher numbers represent
6129	// higher priorities. - If the supplied value is unspecified or 0, the
6130	// service translates the value to 500,000, which corresponds to the
6131	// `Normal` priority in the console. - If the supplied value is
6132	// negative, the intent is ignored in runtime detect intent requests.
6133	Priority int64 `json:"priority,omitempty"`
6134
6135	// TrainingPhrases: The collection of training phrases the agent is
6136	// trained on to identify the intent.
6137	TrainingPhrases []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
6138
6139	// ServerResponse contains the HTTP response code and headers from the
6140	// server.
6141	googleapi.ServerResponse `json:"-"`
6142
6143	// ForceSendFields is a list of field names (e.g. "Description") to
6144	// unconditionally include in API requests. By default, fields with
6145	// empty or default values are omitted from API requests. However, any
6146	// non-pointer, non-interface field appearing in ForceSendFields will be
6147	// sent to the server regardless of whether the field is empty or not.
6148	// This may be used to include empty fields in Patch requests.
6149	ForceSendFields []string `json:"-"`
6150
6151	// NullFields is a list of field names (e.g. "Description") to include
6152	// in API requests with the JSON null value. By default, fields with
6153	// empty values are omitted from API requests. However, any field with
6154	// an empty value appearing in NullFields will be sent to the server as
6155	// null. It is an error if a field in this list has a non-empty value.
6156	// This may be used to include null fields in Patch requests.
6157	NullFields []string `json:"-"`
6158}
6159
6160func (s *GoogleCloudDialogflowCxV3beta1Intent) MarshalJSON() ([]byte, error) {
6161	type NoMethod GoogleCloudDialogflowCxV3beta1Intent
6162	raw := NoMethod(*s)
6163	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6164}
6165
6166// GoogleCloudDialogflowCxV3beta1IntentCoverage: Intent coverage
6167// represents the percentage of all possible intents in the agent that
6168// are triggered in any of a parent's test cases.
6169type GoogleCloudDialogflowCxV3beta1IntentCoverage struct {
6170	// CoverageScore: The percent of intents in the agent that are covered.
6171	CoverageScore float64 `json:"coverageScore,omitempty"`
6172
6173	// Intents: The list of Intents present in the agent
6174	Intents []*GoogleCloudDialogflowCxV3beta1IntentCoverageIntent `json:"intents,omitempty"`
6175
6176	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
6177	// unconditionally include in API requests. By default, fields with
6178	// empty or default values are omitted from API requests. However, any
6179	// non-pointer, non-interface field appearing in ForceSendFields will be
6180	// sent to the server regardless of whether the field is empty or not.
6181	// This may be used to include empty fields in Patch requests.
6182	ForceSendFields []string `json:"-"`
6183
6184	// NullFields is a list of field names (e.g. "CoverageScore") to include
6185	// in API requests with the JSON null value. By default, fields with
6186	// empty values are omitted from API requests. However, any field with
6187	// an empty value appearing in NullFields will be sent to the server as
6188	// null. It is an error if a field in this list has a non-empty value.
6189	// This may be used to include null fields in Patch requests.
6190	NullFields []string `json:"-"`
6191}
6192
6193func (s *GoogleCloudDialogflowCxV3beta1IntentCoverage) MarshalJSON() ([]byte, error) {
6194	type NoMethod GoogleCloudDialogflowCxV3beta1IntentCoverage
6195	raw := NoMethod(*s)
6196	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6197}
6198
6199func (s *GoogleCloudDialogflowCxV3beta1IntentCoverage) UnmarshalJSON(data []byte) error {
6200	type NoMethod GoogleCloudDialogflowCxV3beta1IntentCoverage
6201	var s1 struct {
6202		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
6203		*NoMethod
6204	}
6205	s1.NoMethod = (*NoMethod)(s)
6206	if err := json.Unmarshal(data, &s1); err != nil {
6207		return err
6208	}
6209	s.CoverageScore = float64(s1.CoverageScore)
6210	return nil
6211}
6212
6213// GoogleCloudDialogflowCxV3beta1IntentCoverageIntent: The agent's
6214// intent.
6215type GoogleCloudDialogflowCxV3beta1IntentCoverageIntent struct {
6216	// Covered: Whether or not the intent is covered by at least one of the
6217	// agent's test cases.
6218	Covered bool `json:"covered,omitempty"`
6219
6220	// Intent: The intent full resource name
6221	Intent string `json:"intent,omitempty"`
6222
6223	// ForceSendFields is a list of field names (e.g. "Covered") to
6224	// unconditionally include in API requests. By default, fields with
6225	// empty or default values are omitted from API requests. However, any
6226	// non-pointer, non-interface field appearing in ForceSendFields will be
6227	// sent to the server regardless of whether the field is empty or not.
6228	// This may be used to include empty fields in Patch requests.
6229	ForceSendFields []string `json:"-"`
6230
6231	// NullFields is a list of field names (e.g. "Covered") to include in
6232	// API requests with the JSON null value. By default, fields with empty
6233	// values are omitted from API requests. However, any field with an
6234	// empty value appearing in NullFields will be sent to the server as
6235	// null. It is an error if a field in this list has a non-empty value.
6236	// This may be used to include null fields in Patch requests.
6237	NullFields []string `json:"-"`
6238}
6239
6240func (s *GoogleCloudDialogflowCxV3beta1IntentCoverageIntent) MarshalJSON() ([]byte, error) {
6241	type NoMethod GoogleCloudDialogflowCxV3beta1IntentCoverageIntent
6242	raw := NoMethod(*s)
6243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6244}
6245
6246// GoogleCloudDialogflowCxV3beta1IntentInput: Represents the intent to
6247// trigger programmatically rather than as a result of natural language
6248// processing.
6249type GoogleCloudDialogflowCxV3beta1IntentInput struct {
6250	// Intent: Required. The unique identifier of the intent. Format:
6251	// `projects//locations//agents//intents/`.
6252	Intent string `json:"intent,omitempty"`
6253
6254	// ForceSendFields is a list of field names (e.g. "Intent") to
6255	// unconditionally include in API requests. By default, fields with
6256	// empty or default values are omitted from API requests. However, any
6257	// non-pointer, non-interface field appearing in ForceSendFields will be
6258	// sent to the server regardless of whether the field is empty or not.
6259	// This may be used to include empty fields in Patch requests.
6260	ForceSendFields []string `json:"-"`
6261
6262	// NullFields is a list of field names (e.g. "Intent") to include in API
6263	// requests with the JSON null value. By default, fields with empty
6264	// values are omitted from API requests. However, any field with an
6265	// empty value appearing in NullFields will be sent to the server as
6266	// null. It is an error if a field in this list has a non-empty value.
6267	// This may be used to include null fields in Patch requests.
6268	NullFields []string `json:"-"`
6269}
6270
6271func (s *GoogleCloudDialogflowCxV3beta1IntentInput) MarshalJSON() ([]byte, error) {
6272	type NoMethod GoogleCloudDialogflowCxV3beta1IntentInput
6273	raw := NoMethod(*s)
6274	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6275}
6276
6277// GoogleCloudDialogflowCxV3beta1IntentParameter: Represents an intent
6278// parameter.
6279type GoogleCloudDialogflowCxV3beta1IntentParameter struct {
6280	// EntityType: Required. The entity type of the parameter. Format:
6281	// `projects/-/locations/-/agents/-/entityTypes/` for system entity
6282	// types (for example,
6283	// `projects/-/locations/-/agents/-/entityTypes/sys.date`), or
6284	// `projects//locations//agents//entityTypes/` for developer entity
6285	// types.
6286	EntityType string `json:"entityType,omitempty"`
6287
6288	// Id: Required. The unique identifier of the parameter. This field is
6289	// used by training phrases to annotate their parts.
6290	Id string `json:"id,omitempty"`
6291
6292	// IsList: Indicates whether the parameter represents a list of values.
6293	IsList bool `json:"isList,omitempty"`
6294
6295	// Redact: Indicates whether the parameter content should be redacted in
6296	// log. If redaction is enabled, the parameter content will be replaced
6297	// by parameter name during logging. Note: the parameter content is
6298	// subject to redaction if either parameter level redaction or entity
6299	// type level redaction is enabled.
6300	Redact bool `json:"redact,omitempty"`
6301
6302	// ForceSendFields is a list of field names (e.g. "EntityType") to
6303	// unconditionally include in API requests. By default, fields with
6304	// empty or default values are omitted from API requests. However, any
6305	// non-pointer, non-interface field appearing in ForceSendFields will be
6306	// sent to the server regardless of whether the field is empty or not.
6307	// This may be used to include empty fields in Patch requests.
6308	ForceSendFields []string `json:"-"`
6309
6310	// NullFields is a list of field names (e.g. "EntityType") to include in
6311	// API requests with the JSON null value. By default, fields with empty
6312	// values are omitted from API requests. However, any field with an
6313	// empty value appearing in NullFields will be sent to the server as
6314	// null. It is an error if a field in this list has a non-empty value.
6315	// This may be used to include null fields in Patch requests.
6316	NullFields []string `json:"-"`
6317}
6318
6319func (s *GoogleCloudDialogflowCxV3beta1IntentParameter) MarshalJSON() ([]byte, error) {
6320	type NoMethod GoogleCloudDialogflowCxV3beta1IntentParameter
6321	raw := NoMethod(*s)
6322	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6323}
6324
6325// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase: Represents an
6326// example that the agent is trained on to identify the intent.
6327type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase struct {
6328	// Id: Output only. The unique identifier of the training phrase.
6329	Id string `json:"id,omitempty"`
6330
6331	// Parts: Required. The ordered list of training phrase parts. The parts
6332	// are concatenated in order to form the training phrase. Note: The API
6333	// does not automatically annotate training phrases like the Dialogflow
6334	// Console does. Note: Do not forget to include whitespace at part
6335	// boundaries, so the training phrase is well formatted when the parts
6336	// are concatenated. If the training phrase does not need to be
6337	// annotated with parameters, you just need a single part with only the
6338	// Part.text field set. If you want to annotate the training phrase, you
6339	// must create multiple parts, where the fields of each part are
6340	// populated in one of two ways: - `Part.text` is set to a part of the
6341	// phrase that has no parameters. - `Part.text` is set to a part of the
6342	// phrase that you want to annotate, and the `parameter_id` field is
6343	// set.
6344	Parts []*GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
6345
6346	// RepeatCount: Indicates how many times this example was added to the
6347	// intent.
6348	RepeatCount int64 `json:"repeatCount,omitempty"`
6349
6350	// ForceSendFields is a list of field names (e.g. "Id") to
6351	// unconditionally include in API requests. By default, fields with
6352	// empty or default values are omitted from API requests. However, any
6353	// non-pointer, non-interface field appearing in ForceSendFields will be
6354	// sent to the server regardless of whether the field is empty or not.
6355	// This may be used to include empty fields in Patch requests.
6356	ForceSendFields []string `json:"-"`
6357
6358	// NullFields is a list of field names (e.g. "Id") to include in API
6359	// requests with the JSON null value. By default, fields with empty
6360	// values are omitted from API requests. However, any field with an
6361	// empty value appearing in NullFields will be sent to the server as
6362	// null. It is an error if a field in this list has a non-empty value.
6363	// This may be used to include null fields in Patch requests.
6364	NullFields []string `json:"-"`
6365}
6366
6367func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
6368	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrase
6369	raw := NoMethod(*s)
6370	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6371}
6372
6373// GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart: Represents a
6374// part of a training phrase.
6375type GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart struct {
6376	// ParameterId: The parameter used to annotate this part of the training
6377	// phrase. This field is required for annotated parts of the training
6378	// phrase.
6379	ParameterId string `json:"parameterId,omitempty"`
6380
6381	// Text: Required. The text for this part.
6382	Text string `json:"text,omitempty"`
6383
6384	// ForceSendFields is a list of field names (e.g. "ParameterId") to
6385	// unconditionally include in API requests. By default, fields with
6386	// empty or default values are omitted from API requests. However, any
6387	// non-pointer, non-interface field appearing in ForceSendFields will be
6388	// sent to the server regardless of whether the field is empty or not.
6389	// This may be used to include empty fields in Patch requests.
6390	ForceSendFields []string `json:"-"`
6391
6392	// NullFields is a list of field names (e.g. "ParameterId") to include
6393	// in API requests with the JSON null value. By default, fields with
6394	// empty values are omitted from API requests. However, any field with
6395	// an empty value appearing in NullFields will be sent to the server as
6396	// null. It is an error if a field in this list has a non-empty value.
6397	// This may be used to include null fields in Patch requests.
6398	NullFields []string `json:"-"`
6399}
6400
6401func (s *GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
6402	type NoMethod GoogleCloudDialogflowCxV3beta1IntentTrainingPhrasePart
6403	raw := NoMethod(*s)
6404	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6405}
6406
6407// GoogleCloudDialogflowCxV3beta1ListAgentsResponse: The response
6408// message for Agents.ListAgents.
6409type GoogleCloudDialogflowCxV3beta1ListAgentsResponse struct {
6410	// Agents: The list of agents. There will be a maximum number of items
6411	// returned based on the page_size field in the request.
6412	Agents []*GoogleCloudDialogflowCxV3beta1Agent `json:"agents,omitempty"`
6413
6414	// NextPageToken: Token to retrieve the next page of results, or empty
6415	// if there are no more results in the list.
6416	NextPageToken string `json:"nextPageToken,omitempty"`
6417
6418	// ServerResponse contains the HTTP response code and headers from the
6419	// server.
6420	googleapi.ServerResponse `json:"-"`
6421
6422	// ForceSendFields is a list of field names (e.g. "Agents") to
6423	// unconditionally include in API requests. By default, fields with
6424	// empty or default values are omitted from API requests. However, any
6425	// non-pointer, non-interface field appearing in ForceSendFields will be
6426	// sent to the server regardless of whether the field is empty or not.
6427	// This may be used to include empty fields in Patch requests.
6428	ForceSendFields []string `json:"-"`
6429
6430	// NullFields is a list of field names (e.g. "Agents") to include in API
6431	// requests with the JSON null value. By default, fields with empty
6432	// values are omitted from API requests. However, any field with an
6433	// empty value appearing in NullFields will be sent to the server as
6434	// null. It is an error if a field in this list has a non-empty value.
6435	// This may be used to include null fields in Patch requests.
6436	NullFields []string `json:"-"`
6437}
6438
6439func (s *GoogleCloudDialogflowCxV3beta1ListAgentsResponse) MarshalJSON() ([]byte, error) {
6440	type NoMethod GoogleCloudDialogflowCxV3beta1ListAgentsResponse
6441	raw := NoMethod(*s)
6442	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6443}
6444
6445// GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse: The
6446// response message for Environments.ListTestCaseResults.
6447type GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse struct {
6448	// ContinuousTestResults: The list of continuous test results.
6449	ContinuousTestResults []*GoogleCloudDialogflowCxV3beta1ContinuousTestResult `json:"continuousTestResults,omitempty"`
6450
6451	// NextPageToken: Token to retrieve the next page of results, or empty
6452	// if there are no more results in the list.
6453	NextPageToken string `json:"nextPageToken,omitempty"`
6454
6455	// ServerResponse contains the HTTP response code and headers from the
6456	// server.
6457	googleapi.ServerResponse `json:"-"`
6458
6459	// ForceSendFields is a list of field names (e.g.
6460	// "ContinuousTestResults") to unconditionally include in API requests.
6461	// By default, fields with empty or default values are omitted from API
6462	// requests. However, any non-pointer, non-interface field appearing in
6463	// ForceSendFields will be sent to the server regardless of whether the
6464	// field is empty or not. This may be used to include empty fields in
6465	// Patch requests.
6466	ForceSendFields []string `json:"-"`
6467
6468	// NullFields is a list of field names (e.g. "ContinuousTestResults") to
6469	// include in API requests with the JSON null value. By default, fields
6470	// with empty values are omitted from API requests. However, any field
6471	// with an empty value appearing in NullFields will be sent to the
6472	// server as null. It is an error if a field in this list has a
6473	// non-empty value. This may be used to include null fields in Patch
6474	// requests.
6475	NullFields []string `json:"-"`
6476}
6477
6478func (s *GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse) MarshalJSON() ([]byte, error) {
6479	type NoMethod GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse
6480	raw := NoMethod(*s)
6481	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6482}
6483
6484// GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse: The response
6485// message for EntityTypes.ListEntityTypes.
6486type GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse struct {
6487	// EntityTypes: The list of entity types. There will be a maximum number
6488	// of items returned based on the page_size field in the request.
6489	EntityTypes []*GoogleCloudDialogflowCxV3beta1EntityType `json:"entityTypes,omitempty"`
6490
6491	// NextPageToken: Token to retrieve the next page of results, or empty
6492	// if there are no more results in the list.
6493	NextPageToken string `json:"nextPageToken,omitempty"`
6494
6495	// ServerResponse contains the HTTP response code and headers from the
6496	// server.
6497	googleapi.ServerResponse `json:"-"`
6498
6499	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
6500	// unconditionally include in API requests. By default, fields with
6501	// empty or default values are omitted from API requests. However, any
6502	// non-pointer, non-interface field appearing in ForceSendFields will be
6503	// sent to the server regardless of whether the field is empty or not.
6504	// This may be used to include empty fields in Patch requests.
6505	ForceSendFields []string `json:"-"`
6506
6507	// NullFields is a list of field names (e.g. "EntityTypes") to include
6508	// in API requests with the JSON null value. By default, fields with
6509	// empty values are omitted from API requests. However, any field with
6510	// an empty value appearing in NullFields will be sent to the server as
6511	// null. It is an error if a field in this list has a non-empty value.
6512	// This may be used to include null fields in Patch requests.
6513	NullFields []string `json:"-"`
6514}
6515
6516func (s *GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse) MarshalJSON() ([]byte, error) {
6517	type NoMethod GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse
6518	raw := NoMethod(*s)
6519	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6520}
6521
6522// GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse: The response
6523// message for Environments.ListEnvironments.
6524type GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse struct {
6525	// Environments: The list of environments. There will be a maximum
6526	// number of items returned based on the page_size field in the request.
6527	// The list may in some cases be empty or contain fewer entries than
6528	// page_size even if this isn't the last page.
6529	Environments []*GoogleCloudDialogflowCxV3beta1Environment `json:"environments,omitempty"`
6530
6531	// NextPageToken: Token to retrieve the next page of results, or empty
6532	// if there are no more results in the list.
6533	NextPageToken string `json:"nextPageToken,omitempty"`
6534
6535	// ServerResponse contains the HTTP response code and headers from the
6536	// server.
6537	googleapi.ServerResponse `json:"-"`
6538
6539	// ForceSendFields is a list of field names (e.g. "Environments") to
6540	// unconditionally include in API requests. By default, fields with
6541	// empty or default values are omitted from API requests. However, any
6542	// non-pointer, non-interface field appearing in ForceSendFields will be
6543	// sent to the server regardless of whether the field is empty or not.
6544	// This may be used to include empty fields in Patch requests.
6545	ForceSendFields []string `json:"-"`
6546
6547	// NullFields is a list of field names (e.g. "Environments") to include
6548	// in API requests with the JSON null value. By default, fields with
6549	// empty values are omitted from API requests. However, any field with
6550	// an empty value appearing in NullFields will be sent to the server as
6551	// null. It is an error if a field in this list has a non-empty value.
6552	// This may be used to include null fields in Patch requests.
6553	NullFields []string `json:"-"`
6554}
6555
6556func (s *GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse) MarshalJSON() ([]byte, error) {
6557	type NoMethod GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse
6558	raw := NoMethod(*s)
6559	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6560}
6561
6562// GoogleCloudDialogflowCxV3beta1ListExperimentsResponse: The response
6563// message for Experiments.ListExperiments.
6564type GoogleCloudDialogflowCxV3beta1ListExperimentsResponse struct {
6565	// Experiments: The list of experiments. There will be a maximum number
6566	// of items returned based on the page_size field in the request. The
6567	// list may in some cases be empty or contain fewer entries than
6568	// page_size even if this isn't the last page.
6569	Experiments []*GoogleCloudDialogflowCxV3beta1Experiment `json:"experiments,omitempty"`
6570
6571	// NextPageToken: Token to retrieve the next page of results, or empty
6572	// if there are no more results in the list.
6573	NextPageToken string `json:"nextPageToken,omitempty"`
6574
6575	// ServerResponse contains the HTTP response code and headers from the
6576	// server.
6577	googleapi.ServerResponse `json:"-"`
6578
6579	// ForceSendFields is a list of field names (e.g. "Experiments") to
6580	// unconditionally include in API requests. By default, fields with
6581	// empty or default values are omitted from API requests. However, any
6582	// non-pointer, non-interface field appearing in ForceSendFields will be
6583	// sent to the server regardless of whether the field is empty or not.
6584	// This may be used to include empty fields in Patch requests.
6585	ForceSendFields []string `json:"-"`
6586
6587	// NullFields is a list of field names (e.g. "Experiments") to include
6588	// in API requests with the JSON null value. By default, fields with
6589	// empty values are omitted from API requests. However, any field with
6590	// an empty value appearing in NullFields will be sent to the server as
6591	// null. It is an error if a field in this list has a non-empty value.
6592	// This may be used to include null fields in Patch requests.
6593	NullFields []string `json:"-"`
6594}
6595
6596func (s *GoogleCloudDialogflowCxV3beta1ListExperimentsResponse) MarshalJSON() ([]byte, error) {
6597	type NoMethod GoogleCloudDialogflowCxV3beta1ListExperimentsResponse
6598	raw := NoMethod(*s)
6599	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6600}
6601
6602// GoogleCloudDialogflowCxV3beta1ListFlowsResponse: The response message
6603// for Flows.ListFlows.
6604type GoogleCloudDialogflowCxV3beta1ListFlowsResponse struct {
6605	// Flows: The list of flows. There will be a maximum number of items
6606	// returned based on the page_size field in the request.
6607	Flows []*GoogleCloudDialogflowCxV3beta1Flow `json:"flows,omitempty"`
6608
6609	// NextPageToken: Token to retrieve the next page of results, or empty
6610	// if there are no more results in the list.
6611	NextPageToken string `json:"nextPageToken,omitempty"`
6612
6613	// ServerResponse contains the HTTP response code and headers from the
6614	// server.
6615	googleapi.ServerResponse `json:"-"`
6616
6617	// ForceSendFields is a list of field names (e.g. "Flows") to
6618	// unconditionally include in API requests. By default, fields with
6619	// empty or default values are omitted from API requests. However, any
6620	// non-pointer, non-interface field appearing in ForceSendFields will be
6621	// sent to the server regardless of whether the field is empty or not.
6622	// This may be used to include empty fields in Patch requests.
6623	ForceSendFields []string `json:"-"`
6624
6625	// NullFields is a list of field names (e.g. "Flows") to include in API
6626	// requests with the JSON null value. By default, fields with empty
6627	// values are omitted from API requests. However, any field with an
6628	// empty value appearing in NullFields will be sent to the server as
6629	// null. It is an error if a field in this list has a non-empty value.
6630	// This may be used to include null fields in Patch requests.
6631	NullFields []string `json:"-"`
6632}
6633
6634func (s *GoogleCloudDialogflowCxV3beta1ListFlowsResponse) MarshalJSON() ([]byte, error) {
6635	type NoMethod GoogleCloudDialogflowCxV3beta1ListFlowsResponse
6636	raw := NoMethod(*s)
6637	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6638}
6639
6640// GoogleCloudDialogflowCxV3beta1ListIntentsResponse: The response
6641// message for Intents.ListIntents.
6642type GoogleCloudDialogflowCxV3beta1ListIntentsResponse struct {
6643	// Intents: The list of intents. There will be a maximum number of items
6644	// returned based on the page_size field in the request.
6645	Intents []*GoogleCloudDialogflowCxV3beta1Intent `json:"intents,omitempty"`
6646
6647	// NextPageToken: Token to retrieve the next page of results, or empty
6648	// if there are no more results in the list.
6649	NextPageToken string `json:"nextPageToken,omitempty"`
6650
6651	// ServerResponse contains the HTTP response code and headers from the
6652	// server.
6653	googleapi.ServerResponse `json:"-"`
6654
6655	// ForceSendFields is a list of field names (e.g. "Intents") to
6656	// unconditionally include in API requests. By default, fields with
6657	// empty or default values are omitted from API requests. However, any
6658	// non-pointer, non-interface field appearing in ForceSendFields will be
6659	// sent to the server regardless of whether the field is empty or not.
6660	// This may be used to include empty fields in Patch requests.
6661	ForceSendFields []string `json:"-"`
6662
6663	// NullFields is a list of field names (e.g. "Intents") to include in
6664	// API requests with the JSON null value. By default, fields with empty
6665	// values are omitted from API requests. However, any field with an
6666	// empty value appearing in NullFields will be sent to the server as
6667	// null. It is an error if a field in this list has a non-empty value.
6668	// This may be used to include null fields in Patch requests.
6669	NullFields []string `json:"-"`
6670}
6671
6672func (s *GoogleCloudDialogflowCxV3beta1ListIntentsResponse) MarshalJSON() ([]byte, error) {
6673	type NoMethod GoogleCloudDialogflowCxV3beta1ListIntentsResponse
6674	raw := NoMethod(*s)
6675	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6676}
6677
6678// GoogleCloudDialogflowCxV3beta1ListPagesResponse: The response message
6679// for Pages.ListPages.
6680type GoogleCloudDialogflowCxV3beta1ListPagesResponse struct {
6681	// NextPageToken: Token to retrieve the next page of results, or empty
6682	// if there are no more results in the list.
6683	NextPageToken string `json:"nextPageToken,omitempty"`
6684
6685	// Pages: The list of pages. There will be a maximum number of items
6686	// returned based on the page_size field in the request.
6687	Pages []*GoogleCloudDialogflowCxV3beta1Page `json:"pages,omitempty"`
6688
6689	// ServerResponse contains the HTTP response code and headers from the
6690	// server.
6691	googleapi.ServerResponse `json:"-"`
6692
6693	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6694	// unconditionally include in API requests. By default, fields with
6695	// empty or default values are omitted from API requests. However, any
6696	// non-pointer, non-interface field appearing in ForceSendFields will be
6697	// sent to the server regardless of whether the field is empty or not.
6698	// This may be used to include empty fields in Patch requests.
6699	ForceSendFields []string `json:"-"`
6700
6701	// NullFields is a list of field names (e.g. "NextPageToken") to include
6702	// in API requests with the JSON null value. By default, fields with
6703	// empty values are omitted from API requests. However, any field with
6704	// an empty value appearing in NullFields will be sent to the server as
6705	// null. It is an error if a field in this list has a non-empty value.
6706	// This may be used to include null fields in Patch requests.
6707	NullFields []string `json:"-"`
6708}
6709
6710func (s *GoogleCloudDialogflowCxV3beta1ListPagesResponse) MarshalJSON() ([]byte, error) {
6711	type NoMethod GoogleCloudDialogflowCxV3beta1ListPagesResponse
6712	raw := NoMethod(*s)
6713	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6714}
6715
6716// GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse: The
6717// response message for SecuritySettings.ListSecuritySettings.
6718type GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse struct {
6719	// NextPageToken: Token to retrieve the next page of results, or empty
6720	// if there are no more results in the list.
6721	NextPageToken string `json:"nextPageToken,omitempty"`
6722
6723	// SecuritySettings: The list of security settings.
6724	SecuritySettings []*GoogleCloudDialogflowCxV3beta1SecuritySettings `json:"securitySettings,omitempty"`
6725
6726	// ServerResponse contains the HTTP response code and headers from the
6727	// server.
6728	googleapi.ServerResponse `json:"-"`
6729
6730	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6731	// unconditionally include in API requests. By default, fields with
6732	// empty or default values are omitted from API requests. However, any
6733	// non-pointer, non-interface field appearing in ForceSendFields will be
6734	// sent to the server regardless of whether the field is empty or not.
6735	// This may be used to include empty fields in Patch requests.
6736	ForceSendFields []string `json:"-"`
6737
6738	// NullFields is a list of field names (e.g. "NextPageToken") to include
6739	// in API requests with the JSON null value. By default, fields with
6740	// empty values are omitted from API requests. However, any field with
6741	// an empty value appearing in NullFields will be sent to the server as
6742	// null. It is an error if a field in this list has a non-empty value.
6743	// This may be used to include null fields in Patch requests.
6744	NullFields []string `json:"-"`
6745}
6746
6747func (s *GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse) MarshalJSON() ([]byte, error) {
6748	type NoMethod GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse
6749	raw := NoMethod(*s)
6750	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6751}
6752
6753// GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse: The
6754// response message for SessionEntityTypes.ListSessionEntityTypes.
6755type GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse struct {
6756	// NextPageToken: Token to retrieve the next page of results, or empty
6757	// if there are no more results in the list.
6758	NextPageToken string `json:"nextPageToken,omitempty"`
6759
6760	// SessionEntityTypes: The list of session entity types. There will be a
6761	// maximum number of items returned based on the page_size field in the
6762	// request.
6763	SessionEntityTypes []*GoogleCloudDialogflowCxV3beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
6764
6765	// ServerResponse contains the HTTP response code and headers from the
6766	// server.
6767	googleapi.ServerResponse `json:"-"`
6768
6769	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6770	// unconditionally include in API requests. By default, fields with
6771	// empty or default values are omitted from API requests. However, any
6772	// non-pointer, non-interface field appearing in ForceSendFields will be
6773	// sent to the server regardless of whether the field is empty or not.
6774	// This may be used to include empty fields in Patch requests.
6775	ForceSendFields []string `json:"-"`
6776
6777	// NullFields is a list of field names (e.g. "NextPageToken") to include
6778	// in API requests with the JSON null value. By default, fields with
6779	// empty values are omitted from API requests. However, any field with
6780	// an empty value appearing in NullFields will be sent to the server as
6781	// null. It is an error if a field in this list has a non-empty value.
6782	// This may be used to include null fields in Patch requests.
6783	NullFields []string `json:"-"`
6784}
6785
6786func (s *GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse) MarshalJSON() ([]byte, error) {
6787	type NoMethod GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse
6788	raw := NoMethod(*s)
6789	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6790}
6791
6792// GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse: The
6793// response message for TestCases.ListTestCaseResults.
6794type GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse struct {
6795	// NextPageToken: Token to retrieve the next page of results, or empty
6796	// if there are no more results in the list.
6797	NextPageToken string `json:"nextPageToken,omitempty"`
6798
6799	// TestCaseResults: The list of test case results.
6800	TestCaseResults []*GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"testCaseResults,omitempty"`
6801
6802	// ServerResponse contains the HTTP response code and headers from the
6803	// server.
6804	googleapi.ServerResponse `json:"-"`
6805
6806	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6807	// unconditionally include in API requests. By default, fields with
6808	// empty or default values are omitted from API requests. However, any
6809	// non-pointer, non-interface field appearing in ForceSendFields will be
6810	// sent to the server regardless of whether the field is empty or not.
6811	// This may be used to include empty fields in Patch requests.
6812	ForceSendFields []string `json:"-"`
6813
6814	// NullFields is a list of field names (e.g. "NextPageToken") to include
6815	// in API requests with the JSON null value. By default, fields with
6816	// empty values are omitted from API requests. However, any field with
6817	// an empty value appearing in NullFields will be sent to the server as
6818	// null. It is an error if a field in this list has a non-empty value.
6819	// This may be used to include null fields in Patch requests.
6820	NullFields []string `json:"-"`
6821}
6822
6823func (s *GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse) MarshalJSON() ([]byte, error) {
6824	type NoMethod GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse
6825	raw := NoMethod(*s)
6826	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6827}
6828
6829// GoogleCloudDialogflowCxV3beta1ListTestCasesResponse: The response
6830// message for TestCases.ListTestCases.
6831type GoogleCloudDialogflowCxV3beta1ListTestCasesResponse struct {
6832	// NextPageToken: Token to retrieve the next page of results, or empty
6833	// if there are no more results in the list.
6834	NextPageToken string `json:"nextPageToken,omitempty"`
6835
6836	// TestCases: The list of test cases. There will be a maximum number of
6837	// items returned based on the page_size field in the request.
6838	TestCases []*GoogleCloudDialogflowCxV3beta1TestCase `json:"testCases,omitempty"`
6839
6840	// ServerResponse contains the HTTP response code and headers from the
6841	// server.
6842	googleapi.ServerResponse `json:"-"`
6843
6844	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6845	// unconditionally include in API requests. By default, fields with
6846	// empty or default values are omitted from API requests. However, any
6847	// non-pointer, non-interface field appearing in ForceSendFields will be
6848	// sent to the server regardless of whether the field is empty or not.
6849	// This may be used to include empty fields in Patch requests.
6850	ForceSendFields []string `json:"-"`
6851
6852	// NullFields is a list of field names (e.g. "NextPageToken") to include
6853	// in API requests with the JSON null value. By default, fields with
6854	// empty values are omitted from API requests. However, any field with
6855	// an empty value appearing in NullFields will be sent to the server as
6856	// null. It is an error if a field in this list has a non-empty value.
6857	// This may be used to include null fields in Patch requests.
6858	NullFields []string `json:"-"`
6859}
6860
6861func (s *GoogleCloudDialogflowCxV3beta1ListTestCasesResponse) MarshalJSON() ([]byte, error) {
6862	type NoMethod GoogleCloudDialogflowCxV3beta1ListTestCasesResponse
6863	raw := NoMethod(*s)
6864	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6865}
6866
6867// GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse: The
6868// response message for TransitionRouteGroups.ListTransitionRouteGroups.
6869type GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse struct {
6870	// NextPageToken: Token to retrieve the next page of results, or empty
6871	// if there are no more results in the list.
6872	NextPageToken string `json:"nextPageToken,omitempty"`
6873
6874	// TransitionRouteGroups: The list of transition route groups. There
6875	// will be a maximum number of items returned based on the page_size
6876	// field in the request. The list may in some cases be empty or contain
6877	// fewer entries than page_size even if this isn't the last page.
6878	TransitionRouteGroups []*GoogleCloudDialogflowCxV3beta1TransitionRouteGroup `json:"transitionRouteGroups,omitempty"`
6879
6880	// ServerResponse contains the HTTP response code and headers from the
6881	// server.
6882	googleapi.ServerResponse `json:"-"`
6883
6884	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6885	// unconditionally include in API requests. By default, fields with
6886	// empty or default values are omitted from API requests. However, any
6887	// non-pointer, non-interface field appearing in ForceSendFields will be
6888	// sent to the server regardless of whether the field is empty or not.
6889	// This may be used to include empty fields in Patch requests.
6890	ForceSendFields []string `json:"-"`
6891
6892	// NullFields is a list of field names (e.g. "NextPageToken") to include
6893	// in API requests with the JSON null value. By default, fields with
6894	// empty values are omitted from API requests. However, any field with
6895	// an empty value appearing in NullFields will be sent to the server as
6896	// null. It is an error if a field in this list has a non-empty value.
6897	// This may be used to include null fields in Patch requests.
6898	NullFields []string `json:"-"`
6899}
6900
6901func (s *GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse) MarshalJSON() ([]byte, error) {
6902	type NoMethod GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse
6903	raw := NoMethod(*s)
6904	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6905}
6906
6907// GoogleCloudDialogflowCxV3beta1ListVersionsResponse: The response
6908// message for Versions.ListVersions.
6909type GoogleCloudDialogflowCxV3beta1ListVersionsResponse struct {
6910	// NextPageToken: Token to retrieve the next page of results, or empty
6911	// if there are no more results in the list.
6912	NextPageToken string `json:"nextPageToken,omitempty"`
6913
6914	// Versions: A list of versions. There will be a maximum number of items
6915	// returned based on the page_size field in the request. The list may in
6916	// some cases be empty or contain fewer entries than page_size even if
6917	// this isn't the last page.
6918	Versions []*GoogleCloudDialogflowCxV3beta1Version `json:"versions,omitempty"`
6919
6920	// ServerResponse contains the HTTP response code and headers from the
6921	// server.
6922	googleapi.ServerResponse `json:"-"`
6923
6924	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6925	// unconditionally include in API requests. By default, fields with
6926	// empty or default values are omitted from API requests. However, any
6927	// non-pointer, non-interface field appearing in ForceSendFields will be
6928	// sent to the server regardless of whether the field is empty or not.
6929	// This may be used to include empty fields in Patch requests.
6930	ForceSendFields []string `json:"-"`
6931
6932	// NullFields is a list of field names (e.g. "NextPageToken") to include
6933	// in API requests with the JSON null value. By default, fields with
6934	// empty values are omitted from API requests. However, any field with
6935	// an empty value appearing in NullFields will be sent to the server as
6936	// null. It is an error if a field in this list has a non-empty value.
6937	// This may be used to include null fields in Patch requests.
6938	NullFields []string `json:"-"`
6939}
6940
6941func (s *GoogleCloudDialogflowCxV3beta1ListVersionsResponse) MarshalJSON() ([]byte, error) {
6942	type NoMethod GoogleCloudDialogflowCxV3beta1ListVersionsResponse
6943	raw := NoMethod(*s)
6944	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6945}
6946
6947// GoogleCloudDialogflowCxV3beta1ListWebhooksResponse: The response
6948// message for Webhooks.ListWebhooks.
6949type GoogleCloudDialogflowCxV3beta1ListWebhooksResponse struct {
6950	// NextPageToken: Token to retrieve the next page of results, or empty
6951	// if there are no more results in the list.
6952	NextPageToken string `json:"nextPageToken,omitempty"`
6953
6954	// Webhooks: The list of webhooks. There will be a maximum number of
6955	// items returned based on the page_size field in the request.
6956	Webhooks []*GoogleCloudDialogflowCxV3beta1Webhook `json:"webhooks,omitempty"`
6957
6958	// ServerResponse contains the HTTP response code and headers from the
6959	// server.
6960	googleapi.ServerResponse `json:"-"`
6961
6962	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
6963	// unconditionally include in API requests. By default, fields with
6964	// empty or default values are omitted from API requests. However, any
6965	// non-pointer, non-interface field appearing in ForceSendFields will be
6966	// sent to the server regardless of whether the field is empty or not.
6967	// This may be used to include empty fields in Patch requests.
6968	ForceSendFields []string `json:"-"`
6969
6970	// NullFields is a list of field names (e.g. "NextPageToken") to include
6971	// in API requests with the JSON null value. By default, fields with
6972	// empty values are omitted from API requests. However, any field with
6973	// an empty value appearing in NullFields will be sent to the server as
6974	// null. It is an error if a field in this list has a non-empty value.
6975	// This may be used to include null fields in Patch requests.
6976	NullFields []string `json:"-"`
6977}
6978
6979func (s *GoogleCloudDialogflowCxV3beta1ListWebhooksResponse) MarshalJSON() ([]byte, error) {
6980	type NoMethod GoogleCloudDialogflowCxV3beta1ListWebhooksResponse
6981	raw := NoMethod(*s)
6982	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
6983}
6984
6985// GoogleCloudDialogflowCxV3beta1LoadVersionRequest: The request message
6986// for Versions.LoadVersion.
6987type GoogleCloudDialogflowCxV3beta1LoadVersionRequest struct {
6988	// AllowOverrideAgentResources: This field is used to prevent accidental
6989	// overwrite of other agent resources, which can potentially impact
6990	// other flow's behavior. If `allow_override_agent_resources` is false,
6991	// conflicted agent-level resources will not be overridden (i.e.
6992	// intents, entities, webhooks).
6993	AllowOverrideAgentResources bool `json:"allowOverrideAgentResources,omitempty"`
6994
6995	// ForceSendFields is a list of field names (e.g.
6996	// "AllowOverrideAgentResources") to unconditionally include in API
6997	// requests. By default, fields with empty or default values are omitted
6998	// from API requests. However, any non-pointer, non-interface field
6999	// appearing in ForceSendFields will be sent to the server regardless of
7000	// whether the field is empty or not. This may be used to include empty
7001	// fields in Patch requests.
7002	ForceSendFields []string `json:"-"`
7003
7004	// NullFields is a list of field names (e.g.
7005	// "AllowOverrideAgentResources") to include in API requests with the
7006	// JSON null value. By default, fields with empty values are omitted
7007	// from API requests. However, any field with an empty value appearing
7008	// in NullFields will be sent to the server as null. It is an error if a
7009	// field in this list has a non-empty value. This may be used to include
7010	// null fields in Patch requests.
7011	NullFields []string `json:"-"`
7012}
7013
7014func (s *GoogleCloudDialogflowCxV3beta1LoadVersionRequest) MarshalJSON() ([]byte, error) {
7015	type NoMethod GoogleCloudDialogflowCxV3beta1LoadVersionRequest
7016	raw := NoMethod(*s)
7017	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7018}
7019
7020// GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse: The
7021// response message for Environments.LookupEnvironmentHistory.
7022type GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse struct {
7023	// Environments: Represents a list of snapshots for an environment. Time
7024	// of the snapshots is stored in `update_time`.
7025	Environments []*GoogleCloudDialogflowCxV3beta1Environment `json:"environments,omitempty"`
7026
7027	// NextPageToken: Token to retrieve the next page of results, or empty
7028	// if there are no more results in the list.
7029	NextPageToken string `json:"nextPageToken,omitempty"`
7030
7031	// ServerResponse contains the HTTP response code and headers from the
7032	// server.
7033	googleapi.ServerResponse `json:"-"`
7034
7035	// ForceSendFields is a list of field names (e.g. "Environments") to
7036	// unconditionally include in API requests. By default, fields with
7037	// empty or default values are omitted from API requests. However, any
7038	// non-pointer, non-interface field appearing in ForceSendFields will be
7039	// sent to the server regardless of whether the field is empty or not.
7040	// This may be used to include empty fields in Patch requests.
7041	ForceSendFields []string `json:"-"`
7042
7043	// NullFields is a list of field names (e.g. "Environments") to include
7044	// in API requests with the JSON null value. By default, fields with
7045	// empty values are omitted from API requests. However, any field with
7046	// an empty value appearing in NullFields will be sent to the server as
7047	// null. It is an error if a field in this list has a non-empty value.
7048	// This may be used to include null fields in Patch requests.
7049	NullFields []string `json:"-"`
7050}
7051
7052func (s *GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse) MarshalJSON() ([]byte, error) {
7053	type NoMethod GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse
7054	raw := NoMethod(*s)
7055	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7056}
7057
7058// GoogleCloudDialogflowCxV3beta1Match: Represents one match result of
7059// MatchIntent.
7060type GoogleCloudDialogflowCxV3beta1Match struct {
7061	// Confidence: The confidence of this match. Values range from 0.0
7062	// (completely uncertain) to 1.0 (completely certain). This value is for
7063	// informational purpose only and is only used to help match the best
7064	// intent within the classification threshold. This value may change for
7065	// the same end-user expression at any time due to a model retraining or
7066	// change in implementation.
7067	Confidence float64 `json:"confidence,omitempty"`
7068
7069	// Event: The event that matched the query. Only filled for `EVENT`
7070	// match type.
7071	Event string `json:"event,omitempty"`
7072
7073	// Intent: The Intent that matched the query. Some, not all fields are
7074	// filled in this message, including but not limited to: `name` and
7075	// `display_name`. Only filled for `INTENT` match type.
7076	Intent *GoogleCloudDialogflowCxV3beta1Intent `json:"intent,omitempty"`
7077
7078	// MatchType: Type of this Match.
7079	//
7080	// Possible values:
7081	//   "MATCH_TYPE_UNSPECIFIED" - Not specified. Should never be used.
7082	//   "INTENT" - The query was matched to an intent.
7083	//   "DIRECT_INTENT" - The query directly triggered an intent.
7084	//   "PARAMETER_FILLING" - The query was used for parameter filling.
7085	//   "NO_MATCH" - No match was found for the query.
7086	//   "NO_INPUT" - Indicates an empty query.
7087	//   "EVENT" - The query directly triggered an event.
7088	MatchType string `json:"matchType,omitempty"`
7089
7090	// Parameters: The collection of parameters extracted from the query.
7091	// Depending on your protocol or client library language, this is a map,
7092	// associative array, symbol table, dictionary, or JSON object composed
7093	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
7094	// MapKey value: parameter name - MapValue type: - If parameter's entity
7095	// type is a composite entity: map - Else: depending on parameter value
7096	// type, could be one of string, number, boolean, null, list or map -
7097	// MapValue value: - If parameter's entity type is a composite entity:
7098	// map from composite entity property names to property values - Else:
7099	// parameter value
7100	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
7101
7102	// ResolvedInput: Final text input which was matched during MatchIntent.
7103	// This value can be different from original input sent in request
7104	// because of spelling correction or other processing.
7105	ResolvedInput string `json:"resolvedInput,omitempty"`
7106
7107	// ForceSendFields is a list of field names (e.g. "Confidence") to
7108	// unconditionally include in API requests. By default, fields with
7109	// empty or default values are omitted from API requests. However, any
7110	// non-pointer, non-interface field appearing in ForceSendFields will be
7111	// sent to the server regardless of whether the field is empty or not.
7112	// This may be used to include empty fields in Patch requests.
7113	ForceSendFields []string `json:"-"`
7114
7115	// NullFields is a list of field names (e.g. "Confidence") to include in
7116	// API requests with the JSON null value. By default, fields with empty
7117	// values are omitted from API requests. However, any field with an
7118	// empty value appearing in NullFields will be sent to the server as
7119	// null. It is an error if a field in this list has a non-empty value.
7120	// This may be used to include null fields in Patch requests.
7121	NullFields []string `json:"-"`
7122}
7123
7124func (s *GoogleCloudDialogflowCxV3beta1Match) MarshalJSON() ([]byte, error) {
7125	type NoMethod GoogleCloudDialogflowCxV3beta1Match
7126	raw := NoMethod(*s)
7127	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7128}
7129
7130func (s *GoogleCloudDialogflowCxV3beta1Match) UnmarshalJSON(data []byte) error {
7131	type NoMethod GoogleCloudDialogflowCxV3beta1Match
7132	var s1 struct {
7133		Confidence gensupport.JSONFloat64 `json:"confidence"`
7134		*NoMethod
7135	}
7136	s1.NoMethod = (*NoMethod)(s)
7137	if err := json.Unmarshal(data, &s1); err != nil {
7138		return err
7139	}
7140	s.Confidence = float64(s1.Confidence)
7141	return nil
7142}
7143
7144// GoogleCloudDialogflowCxV3beta1MatchIntentRequest: Request of
7145// MatchIntent.
7146type GoogleCloudDialogflowCxV3beta1MatchIntentRequest struct {
7147	// QueryInput: Required. The input specification.
7148	QueryInput *GoogleCloudDialogflowCxV3beta1QueryInput `json:"queryInput,omitempty"`
7149
7150	// QueryParams: The parameters of this query.
7151	QueryParams *GoogleCloudDialogflowCxV3beta1QueryParameters `json:"queryParams,omitempty"`
7152
7153	// ForceSendFields is a list of field names (e.g. "QueryInput") to
7154	// unconditionally include in API requests. By default, fields with
7155	// empty or default values are omitted from API requests. However, any
7156	// non-pointer, non-interface field appearing in ForceSendFields will be
7157	// sent to the server regardless of whether the field is empty or not.
7158	// This may be used to include empty fields in Patch requests.
7159	ForceSendFields []string `json:"-"`
7160
7161	// NullFields is a list of field names (e.g. "QueryInput") to include in
7162	// API requests with the JSON null value. By default, fields with empty
7163	// values are omitted from API requests. However, any field with an
7164	// empty value appearing in NullFields will be sent to the server as
7165	// null. It is an error if a field in this list has a non-empty value.
7166	// This may be used to include null fields in Patch requests.
7167	NullFields []string `json:"-"`
7168}
7169
7170func (s *GoogleCloudDialogflowCxV3beta1MatchIntentRequest) MarshalJSON() ([]byte, error) {
7171	type NoMethod GoogleCloudDialogflowCxV3beta1MatchIntentRequest
7172	raw := NoMethod(*s)
7173	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7174}
7175
7176// GoogleCloudDialogflowCxV3beta1MatchIntentResponse: Response of
7177// MatchIntent.
7178type GoogleCloudDialogflowCxV3beta1MatchIntentResponse struct {
7179	// CurrentPage: The current Page. Some, not all fields are filled in
7180	// this message, including but not limited to `name` and `display_name`.
7181	CurrentPage *GoogleCloudDialogflowCxV3beta1Page `json:"currentPage,omitempty"`
7182
7183	// Matches: Match results, if more than one, ordered descendingly by the
7184	// confidence we have that the particular intent matches the query.
7185	Matches []*GoogleCloudDialogflowCxV3beta1Match `json:"matches,omitempty"`
7186
7187	// Text: If natural language text was provided as input, this field will
7188	// contain a copy of the text.
7189	Text string `json:"text,omitempty"`
7190
7191	// Transcript: If natural language speech audio was provided as input,
7192	// this field will contain the transcript for the audio.
7193	Transcript string `json:"transcript,omitempty"`
7194
7195	// TriggerEvent: If an event was provided as input, this field will
7196	// contain a copy of the event name.
7197	TriggerEvent string `json:"triggerEvent,omitempty"`
7198
7199	// TriggerIntent: If an intent was provided as input, this field will
7200	// contain a copy of the intent identifier. Format:
7201	// `projects//locations//agents//intents/`.
7202	TriggerIntent string `json:"triggerIntent,omitempty"`
7203
7204	// ServerResponse contains the HTTP response code and headers from the
7205	// server.
7206	googleapi.ServerResponse `json:"-"`
7207
7208	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
7209	// unconditionally include in API requests. By default, fields with
7210	// empty or default values are omitted from API requests. However, any
7211	// non-pointer, non-interface field appearing in ForceSendFields will be
7212	// sent to the server regardless of whether the field is empty or not.
7213	// This may be used to include empty fields in Patch requests.
7214	ForceSendFields []string `json:"-"`
7215
7216	// NullFields is a list of field names (e.g. "CurrentPage") to include
7217	// in API requests with the JSON null value. By default, fields with
7218	// empty values are omitted from API requests. However, any field with
7219	// an empty value appearing in NullFields will be sent to the server as
7220	// null. It is an error if a field in this list has a non-empty value.
7221	// This may be used to include null fields in Patch requests.
7222	NullFields []string `json:"-"`
7223}
7224
7225func (s *GoogleCloudDialogflowCxV3beta1MatchIntentResponse) MarshalJSON() ([]byte, error) {
7226	type NoMethod GoogleCloudDialogflowCxV3beta1MatchIntentResponse
7227	raw := NoMethod(*s)
7228	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7229}
7230
7231// GoogleCloudDialogflowCxV3beta1NluSettings: Settings related to NLU.
7232type GoogleCloudDialogflowCxV3beta1NluSettings struct {
7233	// ClassificationThreshold: To filter out false positive results and
7234	// still get variety in matched natural language inputs for your agent,
7235	// you can tune the machine learning classification threshold. If the
7236	// returned score value is less than the threshold value, then a
7237	// no-match event will be triggered. The score values range from 0.0
7238	// (completely uncertain) to 1.0 (completely certain). If set to 0.0,
7239	// the default of 0.3 is used.
7240	ClassificationThreshold float64 `json:"classificationThreshold,omitempty"`
7241
7242	// ModelTrainingMode: Indicates NLU model training mode.
7243	//
7244	// Possible values:
7245	//   "MODEL_TRAINING_MODE_UNSPECIFIED" - Not specified.
7246	// `MODEL_TRAINING_MODE_AUTOMATIC` will be used.
7247	//   "MODEL_TRAINING_MODE_AUTOMATIC" - NLU model training is
7248	// automatically triggered when a flow gets modified. User can also
7249	// manually trigger model training in this mode.
7250	//   "MODEL_TRAINING_MODE_MANUAL" - User needs to manually trigger NLU
7251	// model training. Best for large flows whose models take long time to
7252	// train.
7253	ModelTrainingMode string `json:"modelTrainingMode,omitempty"`
7254
7255	// ModelType: Indicates the type of NLU model.
7256	//
7257	// Possible values:
7258	//   "MODEL_TYPE_UNSPECIFIED" - Not specified. `MODEL_TYPE_STANDARD`
7259	// will be used.
7260	//   "MODEL_TYPE_STANDARD" - Use standard NLU model.
7261	//   "MODEL_TYPE_ADVANCED" - Use advanced NLU model.
7262	ModelType string `json:"modelType,omitempty"`
7263
7264	// ForceSendFields is a list of field names (e.g.
7265	// "ClassificationThreshold") to unconditionally include in API
7266	// requests. By default, fields with empty or default values are omitted
7267	// from API requests. However, any non-pointer, non-interface field
7268	// appearing in ForceSendFields will be sent to the server regardless of
7269	// whether the field is empty or not. This may be used to include empty
7270	// fields in Patch requests.
7271	ForceSendFields []string `json:"-"`
7272
7273	// NullFields is a list of field names (e.g. "ClassificationThreshold")
7274	// to include in API requests with the JSON null value. By default,
7275	// fields with empty values are omitted from API requests. However, any
7276	// field with an empty value appearing in NullFields will be sent to the
7277	// server as null. It is an error if a field in this list has a
7278	// non-empty value. This may be used to include null fields in Patch
7279	// requests.
7280	NullFields []string `json:"-"`
7281}
7282
7283func (s *GoogleCloudDialogflowCxV3beta1NluSettings) MarshalJSON() ([]byte, error) {
7284	type NoMethod GoogleCloudDialogflowCxV3beta1NluSettings
7285	raw := NoMethod(*s)
7286	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7287}
7288
7289func (s *GoogleCloudDialogflowCxV3beta1NluSettings) UnmarshalJSON(data []byte) error {
7290	type NoMethod GoogleCloudDialogflowCxV3beta1NluSettings
7291	var s1 struct {
7292		ClassificationThreshold gensupport.JSONFloat64 `json:"classificationThreshold"`
7293		*NoMethod
7294	}
7295	s1.NoMethod = (*NoMethod)(s)
7296	if err := json.Unmarshal(data, &s1); err != nil {
7297		return err
7298	}
7299	s.ClassificationThreshold = float64(s1.ClassificationThreshold)
7300	return nil
7301}
7302
7303// GoogleCloudDialogflowCxV3beta1OutputAudioConfig: Instructs the speech
7304// synthesizer how to generate the output audio content.
7305type GoogleCloudDialogflowCxV3beta1OutputAudioConfig struct {
7306	// AudioEncoding: Required. Audio encoding of the synthesized audio
7307	// content.
7308	//
7309	// Possible values:
7310	//   "OUTPUT_AUDIO_ENCODING_UNSPECIFIED" - Not specified.
7311	//   "OUTPUT_AUDIO_ENCODING_LINEAR_16" - Uncompressed 16-bit signed
7312	// little-endian samples (Linear PCM). Audio content returned as
7313	// LINEAR16 also contains a WAV header.
7314	//   "OUTPUT_AUDIO_ENCODING_MP3" - MP3 audio at 32kbps.
7315	//   "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS" - MP3 audio at 64kbps.
7316	//   "OUTPUT_AUDIO_ENCODING_OGG_OPUS" - Opus encoded audio wrapped in an
7317	// ogg container. The result will be a file which can be played natively
7318	// on Android, and in browsers (at least Chrome and Firefox). The
7319	// quality of the encoding is considerably higher than MP3 while using
7320	// approximately the same bitrate.
7321	//   "OUTPUT_AUDIO_ENCODING_MULAW" - 8-bit samples that compand 14-bit
7322	// audio samples using G.711 PCMU/mu-law.
7323	AudioEncoding string `json:"audioEncoding,omitempty"`
7324
7325	// SampleRateHertz: Optional. The synthesis sample rate (in hertz) for
7326	// this audio. If not provided, then the synthesizer will use the
7327	// default sample rate based on the audio encoding. If this is different
7328	// from the voice's natural sample rate, then the synthesizer will honor
7329	// this request by converting to the desired sample rate (which might
7330	// result in worse audio quality).
7331	SampleRateHertz int64 `json:"sampleRateHertz,omitempty"`
7332
7333	// SynthesizeSpeechConfig: Optional. Configuration of how speech should
7334	// be synthesized.
7335	SynthesizeSpeechConfig *GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig `json:"synthesizeSpeechConfig,omitempty"`
7336
7337	// ForceSendFields is a list of field names (e.g. "AudioEncoding") to
7338	// unconditionally include in API requests. By default, fields with
7339	// empty or default values are omitted from API requests. However, any
7340	// non-pointer, non-interface field appearing in ForceSendFields will be
7341	// sent to the server regardless of whether the field is empty or not.
7342	// This may be used to include empty fields in Patch requests.
7343	ForceSendFields []string `json:"-"`
7344
7345	// NullFields is a list of field names (e.g. "AudioEncoding") to include
7346	// in API requests with the JSON null value. By default, fields with
7347	// empty values are omitted from API requests. However, any field with
7348	// an empty value appearing in NullFields will be sent to the server as
7349	// null. It is an error if a field in this list has a non-empty value.
7350	// This may be used to include null fields in Patch requests.
7351	NullFields []string `json:"-"`
7352}
7353
7354func (s *GoogleCloudDialogflowCxV3beta1OutputAudioConfig) MarshalJSON() ([]byte, error) {
7355	type NoMethod GoogleCloudDialogflowCxV3beta1OutputAudioConfig
7356	raw := NoMethod(*s)
7357	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7358}
7359
7360// GoogleCloudDialogflowCxV3beta1Page: A Dialogflow CX conversation
7361// (session) can be described and visualized as a state machine. The
7362// states of a CX session are represented by pages. For each flow, you
7363// define many pages, where your combined pages can handle a complete
7364// conversation on the topics the flow is designed for. At any given
7365// moment, exactly one page is the current page, the current page is
7366// considered active, and the flow associated with that page is
7367// considered active. Every flow has a special start page. When a flow
7368// initially becomes active, the start page page becomes the current
7369// page. For each conversational turn, the current page will either stay
7370// the same or transition to another page. You configure each page to
7371// collect information from the end-user that is relevant for the
7372// conversational state represented by the page. For more information,
7373// see the Page guide
7374// (https://cloud.google.com/dialogflow/cx/docs/concept/page).
7375type GoogleCloudDialogflowCxV3beta1Page struct {
7376	// DisplayName: Required. The human-readable name of the page, unique
7377	// within the agent.
7378	DisplayName string `json:"displayName,omitempty"`
7379
7380	// EntryFulfillment: The fulfillment to call when the session is
7381	// entering the page.
7382	EntryFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"entryFulfillment,omitempty"`
7383
7384	// EventHandlers: Handlers associated with the page to handle events
7385	// such as webhook errors, no match or no input.
7386	EventHandlers []*GoogleCloudDialogflowCxV3beta1EventHandler `json:"eventHandlers,omitempty"`
7387
7388	// Form: The form associated with the page, used for collecting
7389	// parameters relevant to the page.
7390	Form *GoogleCloudDialogflowCxV3beta1Form `json:"form,omitempty"`
7391
7392	// Name: The unique identifier of the page. Required for the
7393	// Pages.UpdatePage method. Pages.CreatePage populates the name
7394	// automatically. Format: `projects//locations//agents//flows//pages/`.
7395	Name string `json:"name,omitempty"`
7396
7397	// TransitionRouteGroups: Ordered list of `TransitionRouteGroups`
7398	// associated with the page. Transition route groups must be unique
7399	// within a page. * If multiple transition routes within a page scope
7400	// refer to the same intent, then the precedence order is: page's
7401	// transition route -> page's transition route group -> flow's
7402	// transition routes. * If multiple transition route groups within a
7403	// page contain the same intent, then the first group in the ordered
7404	// list takes precedence.
7405	// Format:`projects//locations//agents//flows//transitionRouteGroups/`.
7406	TransitionRouteGroups []string `json:"transitionRouteGroups,omitempty"`
7407
7408	// TransitionRoutes: A list of transitions for the transition rules of
7409	// this page. They route the conversation to another page in the same
7410	// flow, or another flow. When we are in a certain page, the
7411	// TransitionRoutes are evalauted in the following order: *
7412	// TransitionRoutes defined in the page with intent specified. *
7413	// TransitionRoutes defined in the transition route groups with intent
7414	// specified. * TransitionRoutes defined in flow with intent specified.
7415	// * TransitionRoutes defined in the transition route groups with intent
7416	// specified. * TransitionRoutes defined in the page with only condition
7417	// specified. * TransitionRoutes defined in the transition route groups
7418	// with only condition specified.
7419	TransitionRoutes []*GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoutes,omitempty"`
7420
7421	// ServerResponse contains the HTTP response code and headers from the
7422	// server.
7423	googleapi.ServerResponse `json:"-"`
7424
7425	// ForceSendFields is a list of field names (e.g. "DisplayName") to
7426	// unconditionally include in API requests. By default, fields with
7427	// empty or default values are omitted from API requests. However, any
7428	// non-pointer, non-interface field appearing in ForceSendFields will be
7429	// sent to the server regardless of whether the field is empty or not.
7430	// This may be used to include empty fields in Patch requests.
7431	ForceSendFields []string `json:"-"`
7432
7433	// NullFields is a list of field names (e.g. "DisplayName") to include
7434	// in API requests with the JSON null value. By default, fields with
7435	// empty values are omitted from API requests. However, any field with
7436	// an empty value appearing in NullFields will be sent to the server as
7437	// null. It is an error if a field in this list has a non-empty value.
7438	// This may be used to include null fields in Patch requests.
7439	NullFields []string `json:"-"`
7440}
7441
7442func (s *GoogleCloudDialogflowCxV3beta1Page) MarshalJSON() ([]byte, error) {
7443	type NoMethod GoogleCloudDialogflowCxV3beta1Page
7444	raw := NoMethod(*s)
7445	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7446}
7447
7448// GoogleCloudDialogflowCxV3beta1PageInfo: Represents page information
7449// communicated to and from the webhook.
7450type GoogleCloudDialogflowCxV3beta1PageInfo struct {
7451	// CurrentPage: Always present for WebhookRequest. Ignored for
7452	// WebhookResponse. The unique identifier of the current page. Format:
7453	// `projects//locations//agents//flows//pages/`.
7454	CurrentPage string `json:"currentPage,omitempty"`
7455
7456	// FormInfo: Optional for both WebhookRequest and WebhookResponse.
7457	// Information about the form.
7458	FormInfo *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo `json:"formInfo,omitempty"`
7459
7460	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
7461	// unconditionally include in API requests. By default, fields with
7462	// empty or default values are omitted from API requests. However, any
7463	// non-pointer, non-interface field appearing in ForceSendFields will be
7464	// sent to the server regardless of whether the field is empty or not.
7465	// This may be used to include empty fields in Patch requests.
7466	ForceSendFields []string `json:"-"`
7467
7468	// NullFields is a list of field names (e.g. "CurrentPage") to include
7469	// in API requests with the JSON null value. By default, fields with
7470	// empty values are omitted from API requests. However, any field with
7471	// an empty value appearing in NullFields will be sent to the server as
7472	// null. It is an error if a field in this list has a non-empty value.
7473	// This may be used to include null fields in Patch requests.
7474	NullFields []string `json:"-"`
7475}
7476
7477func (s *GoogleCloudDialogflowCxV3beta1PageInfo) MarshalJSON() ([]byte, error) {
7478	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfo
7479	raw := NoMethod(*s)
7480	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7481}
7482
7483// GoogleCloudDialogflowCxV3beta1PageInfoFormInfo: Represents form
7484// information.
7485type GoogleCloudDialogflowCxV3beta1PageInfoFormInfo struct {
7486	// ParameterInfo: Optional for both WebhookRequest and WebhookResponse.
7487	// The parameters contained in the form. Note that the webhook cannot
7488	// add or remove any form parameter.
7489	ParameterInfo []*GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo `json:"parameterInfo,omitempty"`
7490
7491	// ForceSendFields is a list of field names (e.g. "ParameterInfo") to
7492	// unconditionally include in API requests. By default, fields with
7493	// empty or default values are omitted from API requests. However, any
7494	// non-pointer, non-interface field appearing in ForceSendFields will be
7495	// sent to the server regardless of whether the field is empty or not.
7496	// This may be used to include empty fields in Patch requests.
7497	ForceSendFields []string `json:"-"`
7498
7499	// NullFields is a list of field names (e.g. "ParameterInfo") 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 *GoogleCloudDialogflowCxV3beta1PageInfoFormInfo) MarshalJSON() ([]byte, error) {
7509	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfo
7510	raw := NoMethod(*s)
7511	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7512}
7513
7514// GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo:
7515// Represents parameter information.
7516type GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo struct {
7517	// DisplayName: Always present for WebhookRequest. Required for
7518	// WebhookResponse. The human-readable name of the parameter, unique
7519	// within the form. This field cannot be modified by the webhook.
7520	DisplayName string `json:"displayName,omitempty"`
7521
7522	// JustCollected: Optional for WebhookRequest. Ignored for
7523	// WebhookResponse. Indicates if the parameter value was just collected
7524	// on the last conversation turn.
7525	JustCollected bool `json:"justCollected,omitempty"`
7526
7527	// Required: Optional for both WebhookRequest and WebhookResponse.
7528	// Indicates whether the parameter is required. Optional parameters will
7529	// not trigger prompts; however, they are filled if the user specifies
7530	// them. Required parameters must be filled before form filling
7531	// concludes.
7532	Required bool `json:"required,omitempty"`
7533
7534	// State: Always present for WebhookRequest. Required for
7535	// WebhookResponse. The state of the parameter. This field can be set to
7536	// INVALID by the webhook to invalidate the parameter; other values set
7537	// by the webhook will be ignored.
7538	//
7539	// Possible values:
7540	//   "PARAMETER_STATE_UNSPECIFIED" - Not specified. This value should be
7541	// never used.
7542	//   "EMPTY" - Indicates that the parameter does not have a value.
7543	//   "INVALID" - Indicates that the parameter value is invalid. This
7544	// field can be used by the webhook to invalidate the parameter and ask
7545	// the server to collect it from the user again.
7546	//   "FILLED" - Indicates that the parameter has a value.
7547	State string `json:"state,omitempty"`
7548
7549	// Value: Optional for both WebhookRequest and WebhookResponse. The
7550	// value of the parameter. This field can be set by the webhook to
7551	// change the parameter value.
7552	Value interface{} `json:"value,omitempty"`
7553
7554	// ForceSendFields is a list of field names (e.g. "DisplayName") to
7555	// unconditionally include in API requests. By default, fields with
7556	// empty or default values are omitted from API requests. However, any
7557	// non-pointer, non-interface field appearing in ForceSendFields will be
7558	// sent to the server regardless of whether the field is empty or not.
7559	// This may be used to include empty fields in Patch requests.
7560	ForceSendFields []string `json:"-"`
7561
7562	// NullFields is a list of field names (e.g. "DisplayName") to include
7563	// in API requests with the JSON null value. By default, fields with
7564	// empty values are omitted from API requests. However, any field with
7565	// an empty value appearing in NullFields will be sent to the server as
7566	// null. It is an error if a field in this list has a non-empty value.
7567	// This may be used to include null fields in Patch requests.
7568	NullFields []string `json:"-"`
7569}
7570
7571func (s *GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo) MarshalJSON() ([]byte, error) {
7572	type NoMethod GoogleCloudDialogflowCxV3beta1PageInfoFormInfoParameterInfo
7573	raw := NoMethod(*s)
7574	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7575}
7576
7577// GoogleCloudDialogflowCxV3beta1QueryInput: Represents the query input.
7578// It can contain one of: 1. A conversational query in the form of text.
7579// 2. An intent query that specifies which intent to trigger. 3. Natural
7580// language speech audio to be processed. 4. An event to be triggered.
7581type GoogleCloudDialogflowCxV3beta1QueryInput struct {
7582	// Audio: The natural language speech audio to be processed.
7583	Audio *GoogleCloudDialogflowCxV3beta1AudioInput `json:"audio,omitempty"`
7584
7585	// Dtmf: The DTMF event to be handled.
7586	Dtmf *GoogleCloudDialogflowCxV3beta1DtmfInput `json:"dtmf,omitempty"`
7587
7588	// Event: The event to be triggered.
7589	Event *GoogleCloudDialogflowCxV3beta1EventInput `json:"event,omitempty"`
7590
7591	// Intent: The intent to be triggered.
7592	Intent *GoogleCloudDialogflowCxV3beta1IntentInput `json:"intent,omitempty"`
7593
7594	// LanguageCode: Required. The language of the input. See Language
7595	// Support
7596	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
7597	// a list of the currently supported language codes. Note that queries
7598	// in the same session do not necessarily need to specify the same
7599	// language.
7600	LanguageCode string `json:"languageCode,omitempty"`
7601
7602	// Text: The natural language text to be processed.
7603	Text *GoogleCloudDialogflowCxV3beta1TextInput `json:"text,omitempty"`
7604
7605	// ForceSendFields is a list of field names (e.g. "Audio") to
7606	// unconditionally include in API requests. By default, fields with
7607	// empty or default values are omitted from API requests. However, any
7608	// non-pointer, non-interface field appearing in ForceSendFields will be
7609	// sent to the server regardless of whether the field is empty or not.
7610	// This may be used to include empty fields in Patch requests.
7611	ForceSendFields []string `json:"-"`
7612
7613	// NullFields is a list of field names (e.g. "Audio") to include in API
7614	// requests with the JSON null value. By default, fields with empty
7615	// values are omitted from API requests. However, any field with an
7616	// empty value appearing in NullFields will be sent to the server as
7617	// null. It is an error if a field in this list has a non-empty value.
7618	// This may be used to include null fields in Patch requests.
7619	NullFields []string `json:"-"`
7620}
7621
7622func (s *GoogleCloudDialogflowCxV3beta1QueryInput) MarshalJSON() ([]byte, error) {
7623	type NoMethod GoogleCloudDialogflowCxV3beta1QueryInput
7624	raw := NoMethod(*s)
7625	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7626}
7627
7628// GoogleCloudDialogflowCxV3beta1QueryParameters: Represents the
7629// parameters of a conversational query.
7630type GoogleCloudDialogflowCxV3beta1QueryParameters struct {
7631	// AnalyzeQueryTextSentiment: Configures whether sentiment analysis
7632	// should be performed. If not provided, sentiment analysis is not
7633	// performed.
7634	AnalyzeQueryTextSentiment bool `json:"analyzeQueryTextSentiment,omitempty"`
7635
7636	// CurrentPage: The unique identifier of the page to override the
7637	// current page in the session. Format:
7638	// `projects//locations//agents//flows//pages/`. If `current_page` is
7639	// specified, the previous state of the session will be ignored by
7640	// Dialogflow, including the previous page and the previous session
7641	// parameters. In most cases, current_page and parameters should be
7642	// configured together to direct a session to a specific state.
7643	CurrentPage string `json:"currentPage,omitempty"`
7644
7645	// DisableWebhook: Whether to disable webhook calls for this request.
7646	DisableWebhook bool `json:"disableWebhook,omitempty"`
7647
7648	// FlowVersions: A list of flow versions to override for the request.
7649	// Format: `projects//locations//agents//flows//versions/`. If version 1
7650	// of flow X is included in this list, the traffic of flow X will go
7651	// through version 1 regardless of the version configuration in the
7652	// environment. Each flow can have at most one version specified in this
7653	// list.
7654	FlowVersions []string `json:"flowVersions,omitempty"`
7655
7656	// GeoLocation: The geo location of this conversational query.
7657	GeoLocation *GoogleTypeLatLng `json:"geoLocation,omitempty"`
7658
7659	// Parameters: Additional parameters to be put into session parameters.
7660	// To remove a parameter from the session, clients should explicitly set
7661	// the parameter value to null. You can reference the session parameters
7662	// in the agent with the following format: $session.params.parameter-id.
7663	// Depending on your protocol or client library language, this is a map,
7664	// associative array, symbol table, dictionary, or JSON object composed
7665	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
7666	// MapKey value: parameter name - MapValue type: - If parameter's entity
7667	// type is a composite entity: map - Else: depending on parameter value
7668	// type, could be one of string, number, boolean, null, list or map -
7669	// MapValue value: - If parameter's entity type is a composite entity:
7670	// map from composite entity property names to property values - Else:
7671	// parameter value
7672	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
7673
7674	// Payload: This field can be used to pass custom data into the webhook
7675	// associated with the agent. Arbitrary JSON objects are supported. Some
7676	// integrations that query a Dialogflow agent may provide additional
7677	// information in the payload. In particular, for the Dialogflow Phone
7678	// Gateway integration, this field has the form: ``` { "telephony": {
7679	// "caller_id": "+18558363987" } } ```
7680	Payload googleapi.RawMessage `json:"payload,omitempty"`
7681
7682	// SessionEntityTypes: Additional session entity types to replace or
7683	// extend developer entity types with. The entity synonyms apply to all
7684	// languages and persist for the session of this query.
7685	SessionEntityTypes []*GoogleCloudDialogflowCxV3beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
7686
7687	// TimeZone: The time zone of this conversational query from the time
7688	// zone database (https://www.iana.org/time-zones), e.g.,
7689	// America/New_York, Europe/Paris. If not provided, the time zone
7690	// specified in the agent is used.
7691	TimeZone string `json:"timeZone,omitempty"`
7692
7693	// WebhookHeaders: This field can be used to pass HTTP headers for a
7694	// webhook call. These headers will be sent to webhook along with the
7695	// headers that have been configured through Dialogflow web console. The
7696	// headers defined within this field will overwrite the headers
7697	// configured through Dialogflow console if there is a conflict. Header
7698	// names are case-insensitive. Google's specified headers are not
7699	// allowed. Including: "Host", "Content-Length", "Connection", "From",
7700	// "User-Agent", "Accept-Encoding", "If-Modified-Since",
7701	// "If-None-Match", "X-Forwarded-For", etc.
7702	WebhookHeaders map[string]string `json:"webhookHeaders,omitempty"`
7703
7704	// ForceSendFields is a list of field names (e.g.
7705	// "AnalyzeQueryTextSentiment") to unconditionally include in API
7706	// requests. By default, fields with empty or default values are omitted
7707	// from API requests. However, any non-pointer, non-interface field
7708	// appearing in ForceSendFields will be sent to the server regardless of
7709	// whether the field is empty or not. This may be used to include empty
7710	// fields in Patch requests.
7711	ForceSendFields []string `json:"-"`
7712
7713	// NullFields is a list of field names (e.g.
7714	// "AnalyzeQueryTextSentiment") to include in API requests with the JSON
7715	// null value. By default, fields with empty values are omitted from API
7716	// requests. However, any field with an empty value appearing in
7717	// NullFields will be sent to the server as null. It is an error if a
7718	// field in this list has a non-empty value. This may be used to include
7719	// null fields in Patch requests.
7720	NullFields []string `json:"-"`
7721}
7722
7723func (s *GoogleCloudDialogflowCxV3beta1QueryParameters) MarshalJSON() ([]byte, error) {
7724	type NoMethod GoogleCloudDialogflowCxV3beta1QueryParameters
7725	raw := NoMethod(*s)
7726	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7727}
7728
7729// GoogleCloudDialogflowCxV3beta1QueryResult: Represents the result of a
7730// conversational query.
7731type GoogleCloudDialogflowCxV3beta1QueryResult struct {
7732	// CurrentPage: The current Page. Some, not all fields are filled in
7733	// this message, including but not limited to `name` and `display_name`.
7734	CurrentPage *GoogleCloudDialogflowCxV3beta1Page `json:"currentPage,omitempty"`
7735
7736	// DiagnosticInfo: The free-form diagnostic info. For example, this
7737	// field could contain webhook call latency. The string keys of the
7738	// Struct's fields map can change without notice.
7739	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
7740
7741	// Intent: The Intent that matched the conversational query. Some, not
7742	// all fields are filled in this message, including but not limited to:
7743	// `name` and `display_name`. This field is deprecated, please use
7744	// QueryResult.match instead.
7745	Intent *GoogleCloudDialogflowCxV3beta1Intent `json:"intent,omitempty"`
7746
7747	// IntentDetectionConfidence: The intent detection confidence. Values
7748	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
7749	// This value is for informational purpose only and is only used to help
7750	// match the best intent within the classification threshold. This value
7751	// may change for the same end-user expression at any time due to a
7752	// model retraining or change in implementation. This field is
7753	// deprecated, please use QueryResult.match instead.
7754	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
7755
7756	// LanguageCode: The language that was triggered during intent
7757	// detection. See Language Support
7758	// (https://cloud.google.com/dialogflow/cx/docs/reference/language) for
7759	// a list of the currently supported language codes.
7760	LanguageCode string `json:"languageCode,omitempty"`
7761
7762	// Match: Intent match result, could be an intent or an event.
7763	Match *GoogleCloudDialogflowCxV3beta1Match `json:"match,omitempty"`
7764
7765	// Parameters: The collected session parameters. Depending on your
7766	// protocol or client library language, this is a map, associative
7767	// array, symbol table, dictionary, or JSON object composed of a
7768	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
7769	// MapKey value: parameter name - MapValue type: - If parameter's entity
7770	// type is a composite entity: map - Else: depending on parameter value
7771	// type, could be one of string, number, boolean, null, list or map -
7772	// MapValue value: - If parameter's entity type is a composite entity:
7773	// map from composite entity property names to property values - Else:
7774	// parameter value
7775	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
7776
7777	// ResponseMessages: The list of rich messages returned to the client.
7778	// Responses vary from simple text messages to more sophisticated,
7779	// structured payloads used to drive complex logic.
7780	ResponseMessages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"responseMessages,omitempty"`
7781
7782	// SentimentAnalysisResult: The sentiment analyss result, which depends
7783	// on `analyze_query_text_sentiment`, specified in the request.
7784	SentimentAnalysisResult *GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
7785
7786	// Text: If natural language text was provided as input, this field will
7787	// contain a copy of the text.
7788	Text string `json:"text,omitempty"`
7789
7790	// Transcript: If natural language speech audio was provided as input,
7791	// this field will contain the transcript for the audio.
7792	Transcript string `json:"transcript,omitempty"`
7793
7794	// TriggerEvent: If an event was provided as input, this field will
7795	// contain the name of the event.
7796	TriggerEvent string `json:"triggerEvent,omitempty"`
7797
7798	// TriggerIntent: If an intent was provided as input, this field will
7799	// contain a copy of the intent identifier. Format:
7800	// `projects//locations//agents//intents/`.
7801	TriggerIntent string `json:"triggerIntent,omitempty"`
7802
7803	// WebhookPayloads: The list of webhook payload in
7804	// WebhookResponse.payload, in the order of call sequence. If some
7805	// webhook call fails or doesn't return any payload, an empty `Struct`
7806	// would be used instead.
7807	WebhookPayloads []googleapi.RawMessage `json:"webhookPayloads,omitempty"`
7808
7809	// WebhookStatuses: The list of webhook call status in the order of call
7810	// sequence.
7811	WebhookStatuses []*GoogleRpcStatus `json:"webhookStatuses,omitempty"`
7812
7813	// ForceSendFields is a list of field names (e.g. "CurrentPage") to
7814	// unconditionally include in API requests. By default, fields with
7815	// empty or default values are omitted from API requests. However, any
7816	// non-pointer, non-interface field appearing in ForceSendFields will be
7817	// sent to the server regardless of whether the field is empty or not.
7818	// This may be used to include empty fields in Patch requests.
7819	ForceSendFields []string `json:"-"`
7820
7821	// NullFields is a list of field names (e.g. "CurrentPage") to include
7822	// in API requests with the JSON null value. By default, fields with
7823	// empty values are omitted from API requests. However, any field with
7824	// an empty value appearing in NullFields will be sent to the server as
7825	// null. It is an error if a field in this list has a non-empty value.
7826	// This may be used to include null fields in Patch requests.
7827	NullFields []string `json:"-"`
7828}
7829
7830func (s *GoogleCloudDialogflowCxV3beta1QueryResult) MarshalJSON() ([]byte, error) {
7831	type NoMethod GoogleCloudDialogflowCxV3beta1QueryResult
7832	raw := NoMethod(*s)
7833	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7834}
7835
7836func (s *GoogleCloudDialogflowCxV3beta1QueryResult) UnmarshalJSON(data []byte) error {
7837	type NoMethod GoogleCloudDialogflowCxV3beta1QueryResult
7838	var s1 struct {
7839		IntentDetectionConfidence gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
7840		*NoMethod
7841	}
7842	s1.NoMethod = (*NoMethod)(s)
7843	if err := json.Unmarshal(data, &s1); err != nil {
7844		return err
7845	}
7846	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
7847	return nil
7848}
7849
7850// GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata:
7851// Metadata for ReloadDocument operation.
7852type GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata struct {
7853	// GenericMetadata: The generic information of the operation.
7854	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
7855
7856	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
7857	// unconditionally include in API requests. By default, fields with
7858	// empty or default values are omitted from API requests. However, any
7859	// non-pointer, non-interface field appearing in ForceSendFields will be
7860	// sent to the server regardless of whether the field is empty or not.
7861	// This may be used to include empty fields in Patch requests.
7862	ForceSendFields []string `json:"-"`
7863
7864	// NullFields is a list of field names (e.g. "GenericMetadata") to
7865	// include in API requests with the JSON null value. By default, fields
7866	// with empty values are omitted from API requests. However, any field
7867	// with an empty value appearing in NullFields will be sent to the
7868	// server as null. It is an error if a field in this list has a
7869	// non-empty value. This may be used to include null fields in Patch
7870	// requests.
7871	NullFields []string `json:"-"`
7872}
7873
7874func (s *GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
7875	type NoMethod GoogleCloudDialogflowCxV3beta1ReloadDocumentOperationMetadata
7876	raw := NoMethod(*s)
7877	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7878}
7879
7880// GoogleCloudDialogflowCxV3beta1ResourceName: Resource name and display
7881// name.
7882type GoogleCloudDialogflowCxV3beta1ResourceName struct {
7883	// DisplayName: Display name.
7884	DisplayName string `json:"displayName,omitempty"`
7885
7886	// Name: Name.
7887	Name string `json:"name,omitempty"`
7888
7889	// ForceSendFields is a list of field names (e.g. "DisplayName") to
7890	// unconditionally include in API requests. By default, fields with
7891	// empty or default values are omitted from API requests. However, any
7892	// non-pointer, non-interface field appearing in ForceSendFields will be
7893	// sent to the server regardless of whether the field is empty or not.
7894	// This may be used to include empty fields in Patch requests.
7895	ForceSendFields []string `json:"-"`
7896
7897	// NullFields is a list of field names (e.g. "DisplayName") to include
7898	// in API requests with the JSON null value. By default, fields with
7899	// empty values are omitted from API requests. However, any field with
7900	// an empty value appearing in NullFields will be sent to the server as
7901	// null. It is an error if a field in this list has a non-empty value.
7902	// This may be used to include null fields in Patch requests.
7903	NullFields []string `json:"-"`
7904}
7905
7906func (s *GoogleCloudDialogflowCxV3beta1ResourceName) MarshalJSON() ([]byte, error) {
7907	type NoMethod GoogleCloudDialogflowCxV3beta1ResourceName
7908	raw := NoMethod(*s)
7909	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7910}
7911
7912// GoogleCloudDialogflowCxV3beta1ResponseMessage: Represents a response
7913// message that can be returned by a conversational agent. Response
7914// messages are also used for output audio synthesis. The approach is as
7915// follows: * If at least one OutputAudioText response is present, then
7916// all OutputAudioText responses are linearly concatenated, and the
7917// result is used for output audio synthesis. * If the OutputAudioText
7918// responses are a mixture of text and SSML, then the concatenated
7919// result is treated as SSML; otherwise, the result is treated as either
7920// text or SSML as appropriate. The agent designer should ideally use
7921// either text or SSML consistently throughout the bot design. *
7922// Otherwise, all Text responses are linearly concatenated, and the
7923// result is used for output audio synthesis. This approach allows for
7924// more sophisticated user experience scenarios, where the text
7925// displayed to the user may differ from what is heard.
7926type GoogleCloudDialogflowCxV3beta1ResponseMessage struct {
7927	// ConversationSuccess: Indicates that the conversation succeeded.
7928	ConversationSuccess *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess `json:"conversationSuccess,omitempty"`
7929
7930	// EndInteraction: Output only. A signal that indicates the interaction
7931	// with the Dialogflow agent has ended. This message is generated by
7932	// Dialogflow only when the conversation reaches `END_SESSION` page. It
7933	// is not supposed to be defined by the user. It's guaranteed that there
7934	// is at most one such message in each response.
7935	EndInteraction *GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction `json:"endInteraction,omitempty"`
7936
7937	// LiveAgentHandoff: Hands off conversation to a human agent.
7938	LiveAgentHandoff *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff `json:"liveAgentHandoff,omitempty"`
7939
7940	// MixedAudio: Output only. An audio response message composed of both
7941	// the synthesized Dialogflow agent responses and responses defined via
7942	// play_audio. This message is generated by Dialogflow only and not
7943	// supposed to be defined by the user.
7944	MixedAudio *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio `json:"mixedAudio,omitempty"`
7945
7946	// OutputAudioText: A text or ssml response that is preferentially used
7947	// for TTS output audio synthesis, as described in the comment on the
7948	// ResponseMessage message.
7949	OutputAudioText *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText `json:"outputAudioText,omitempty"`
7950
7951	// Payload: Returns a response containing a custom, platform-specific
7952	// payload.
7953	Payload googleapi.RawMessage `json:"payload,omitempty"`
7954
7955	// PlayAudio: Signal that the client should play an audio clip hosted at
7956	// a client-specific URI. Dialogflow uses this to construct mixed_audio.
7957	// However, Dialogflow itself does not try to read or process the URI in
7958	// any way.
7959	PlayAudio *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio `json:"playAudio,omitempty"`
7960
7961	// Text: Returns a text response.
7962	Text *GoogleCloudDialogflowCxV3beta1ResponseMessageText `json:"text,omitempty"`
7963
7964	// ForceSendFields is a list of field names (e.g. "ConversationSuccess")
7965	// to unconditionally include in API requests. By default, fields with
7966	// empty or default values are omitted from API requests. However, any
7967	// non-pointer, non-interface field appearing in ForceSendFields will be
7968	// sent to the server regardless of whether the field is empty or not.
7969	// This may be used to include empty fields in Patch requests.
7970	ForceSendFields []string `json:"-"`
7971
7972	// NullFields is a list of field names (e.g. "ConversationSuccess") to
7973	// include in API requests with the JSON null value. By default, fields
7974	// with empty values are omitted from API requests. However, any field
7975	// with an empty value appearing in NullFields will be sent to the
7976	// server as null. It is an error if a field in this list has a
7977	// non-empty value. This may be used to include null fields in Patch
7978	// requests.
7979	NullFields []string `json:"-"`
7980}
7981
7982func (s *GoogleCloudDialogflowCxV3beta1ResponseMessage) MarshalJSON() ([]byte, error) {
7983	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessage
7984	raw := NoMethod(*s)
7985	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
7986}
7987
7988// GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess:
7989// Indicates that the conversation succeeded, i.e., the bot handled the
7990// issue that the customer talked to it about. Dialogflow only uses this
7991// to determine which conversations should be counted as successful and
7992// doesn't process the metadata in this message in any way. Note that
7993// Dialogflow also considers conversations that get to the conversation
7994// end page as successful even if they don't return ConversationSuccess.
7995// You may set this, for example: * In the entry_fulfillment of a Page
7996// if entering the page indicates that the conversation succeeded. * In
7997// a webhook response when you determine that you handled the customer
7998// issue.
7999type GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess struct {
8000	// Metadata: Custom metadata. Dialogflow doesn't impose any structure on
8001	// this.
8002	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
8003
8004	// ForceSendFields is a list of field names (e.g. "Metadata") to
8005	// unconditionally include in API requests. By default, fields with
8006	// empty or default values are omitted from API requests. However, any
8007	// non-pointer, non-interface field appearing in ForceSendFields will be
8008	// sent to the server regardless of whether the field is empty or not.
8009	// This may be used to include empty fields in Patch requests.
8010	ForceSendFields []string `json:"-"`
8011
8012	// NullFields is a list of field names (e.g. "Metadata") to include in
8013	// API requests with the JSON null value. By default, fields with empty
8014	// values are omitted from API requests. However, any field with an
8015	// empty value appearing in NullFields will be sent to the server as
8016	// null. It is an error if a field in this list has a non-empty value.
8017	// This may be used to include null fields in Patch requests.
8018	NullFields []string `json:"-"`
8019}
8020
8021func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess) MarshalJSON() ([]byte, error) {
8022	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageConversationSuccess
8023	raw := NoMethod(*s)
8024	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8025}
8026
8027// GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction:
8028// Indicates that interaction with the Dialogflow agent has ended. This
8029// message is generated by Dialogflow only and not supposed to be
8030// defined by the user.
8031type GoogleCloudDialogflowCxV3beta1ResponseMessageEndInteraction struct {
8032}
8033
8034// GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff:
8035// Indicates that the conversation should be handed off to a live agent.
8036// Dialogflow only uses this to determine which conversations were
8037// handed off to a human agent for measurement purposes. What else to do
8038// with this signal is up to you and your handoff procedures. You may
8039// set this, for example: * In the entry_fulfillment of a Page if
8040// entering the page indicates something went extremely wrong in the
8041// conversation. * In a webhook response when you determine that the
8042// customer issue can only be handled by a human.
8043type GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff struct {
8044	// Metadata: Custom metadata for your handoff procedure. Dialogflow
8045	// doesn't impose any structure on this.
8046	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
8047
8048	// ForceSendFields is a list of field names (e.g. "Metadata") to
8049	// unconditionally include in API requests. By default, fields with
8050	// empty or default values are omitted from API requests. However, any
8051	// non-pointer, non-interface field appearing in ForceSendFields will be
8052	// sent to the server regardless of whether the field is empty or not.
8053	// This may be used to include empty fields in Patch requests.
8054	ForceSendFields []string `json:"-"`
8055
8056	// NullFields is a list of field names (e.g. "Metadata") to include in
8057	// API requests with the JSON null value. By default, fields with empty
8058	// values are omitted from API requests. However, any field with an
8059	// empty value appearing in NullFields will be sent to the server as
8060	// null. It is an error if a field in this list has a non-empty value.
8061	// This may be used to include null fields in Patch requests.
8062	NullFields []string `json:"-"`
8063}
8064
8065func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff) MarshalJSON() ([]byte, error) {
8066	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageLiveAgentHandoff
8067	raw := NoMethod(*s)
8068	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8069}
8070
8071// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio: Represents
8072// an audio message that is composed of both segments synthesized from
8073// the Dialogflow agent prompts and ones hosted externally at the
8074// specified URIs. The external URIs are specified via play_audio. This
8075// message is generated by Dialogflow only and not supposed to be
8076// defined by the user.
8077type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio struct {
8078	// Segments: Segments this audio response is composed of.
8079	Segments []*GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment `json:"segments,omitempty"`
8080
8081	// ForceSendFields is a list of field names (e.g. "Segments") to
8082	// unconditionally include in API requests. By default, fields with
8083	// empty or default values are omitted from API requests. However, any
8084	// non-pointer, non-interface field appearing in ForceSendFields will be
8085	// sent to the server regardless of whether the field is empty or not.
8086	// This may be used to include empty fields in Patch requests.
8087	ForceSendFields []string `json:"-"`
8088
8089	// NullFields is a list of field names (e.g. "Segments") to include in
8090	// API requests with the JSON null value. By default, fields with empty
8091	// values are omitted from API requests. However, any field with an
8092	// 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 *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio) MarshalJSON() ([]byte, error) {
8099	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudio
8100	raw := NoMethod(*s)
8101	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8102}
8103
8104// GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment:
8105// Represents one segment of audio.
8106type GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment struct {
8107	// AllowPlaybackInterruption: Output only. Whether the playback of this
8108	// segment can be interrupted by the end user's speech and the client
8109	// should then start the next Dialogflow request.
8110	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
8111
8112	// Audio: Raw audio synthesized from the Dialogflow agent's response
8113	// using the output config specified in the request.
8114	Audio string `json:"audio,omitempty"`
8115
8116	// Uri: Client-specific URI that points to an audio clip accessible to
8117	// the client. Dialogflow does not impose any validation on it.
8118	Uri string `json:"uri,omitempty"`
8119
8120	// ForceSendFields is a list of field names (e.g.
8121	// "AllowPlaybackInterruption") to unconditionally include in API
8122	// requests. By default, fields with empty or default values are omitted
8123	// from API requests. However, any non-pointer, non-interface field
8124	// appearing in ForceSendFields will be sent to the server regardless of
8125	// whether the field is empty or not. This may be used to include empty
8126	// fields in Patch requests.
8127	ForceSendFields []string `json:"-"`
8128
8129	// NullFields is a list of field names (e.g.
8130	// "AllowPlaybackInterruption") to include in API requests with the JSON
8131	// null value. By default, fields with empty values are omitted from API
8132	// requests. However, any field with an empty value appearing in
8133	// NullFields will be sent to the server as null. It is an error if a
8134	// field in this list has a non-empty value. This may be used to include
8135	// null fields in Patch requests.
8136	NullFields []string `json:"-"`
8137}
8138
8139func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment) MarshalJSON() ([]byte, error) {
8140	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageMixedAudioSegment
8141	raw := NoMethod(*s)
8142	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8143}
8144
8145// GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText: A text
8146// or ssml response that is preferentially used for TTS output audio
8147// synthesis, as described in the comment on the ResponseMessage
8148// message.
8149type GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText struct {
8150	// AllowPlaybackInterruption: Output only. Whether the playback of this
8151	// message can be interrupted by the end user's speech and the client
8152	// can then starts the next Dialogflow request.
8153	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
8154
8155	// Ssml: The SSML text to be synthesized. For more information, see SSML
8156	// (/speech/text-to-speech/docs/ssml).
8157	Ssml string `json:"ssml,omitempty"`
8158
8159	// Text: The raw text to be synthesized.
8160	Text string `json:"text,omitempty"`
8161
8162	// ForceSendFields is a list of field names (e.g.
8163	// "AllowPlaybackInterruption") to unconditionally include in API
8164	// requests. By default, fields with empty or default values are omitted
8165	// from API requests. However, any non-pointer, non-interface field
8166	// appearing in ForceSendFields will be sent to the server regardless of
8167	// whether the field is empty or not. This may be used to include empty
8168	// fields in Patch requests.
8169	ForceSendFields []string `json:"-"`
8170
8171	// NullFields is a list of field names (e.g.
8172	// "AllowPlaybackInterruption") to include in API requests with the JSON
8173	// null value. By default, fields with empty values are omitted from API
8174	// requests. However, any field with an empty value appearing in
8175	// NullFields will be sent to the server as null. It is an error if a
8176	// field in this list has a non-empty value. This may be used to include
8177	// null fields in Patch requests.
8178	NullFields []string `json:"-"`
8179}
8180
8181func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText) MarshalJSON() ([]byte, error) {
8182	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageOutputAudioText
8183	raw := NoMethod(*s)
8184	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8185}
8186
8187// GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio: Specifies an
8188// audio clip to be played by the client as part of the response.
8189type GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio struct {
8190	// AllowPlaybackInterruption: Output only. Whether the playback of this
8191	// message can be interrupted by the end user's speech and the client
8192	// can then starts the next Dialogflow request.
8193	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
8194
8195	// AudioUri: Required. URI of the audio clip. Dialogflow does not impose
8196	// any validation on this value. It is specific to the client that reads
8197	// it.
8198	AudioUri string `json:"audioUri,omitempty"`
8199
8200	// ForceSendFields is a list of field names (e.g.
8201	// "AllowPlaybackInterruption") to unconditionally include in API
8202	// requests. By default, fields with empty or default values are omitted
8203	// from API requests. However, any non-pointer, non-interface field
8204	// appearing in ForceSendFields will be sent to the server regardless of
8205	// whether the field is empty or not. This may be used to include empty
8206	// fields in Patch requests.
8207	ForceSendFields []string `json:"-"`
8208
8209	// NullFields is a list of field names (e.g.
8210	// "AllowPlaybackInterruption") to include in API requests with the JSON
8211	// null value. By default, fields with empty values are omitted from API
8212	// requests. However, any field with an empty value appearing in
8213	// NullFields will be sent to the server as null. It is an error if a
8214	// field in this list has a non-empty value. This may be used to include
8215	// null fields in Patch requests.
8216	NullFields []string `json:"-"`
8217}
8218
8219func (s *GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio) MarshalJSON() ([]byte, error) {
8220	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessagePlayAudio
8221	raw := NoMethod(*s)
8222	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8223}
8224
8225// GoogleCloudDialogflowCxV3beta1ResponseMessageText: The text response
8226// message.
8227type GoogleCloudDialogflowCxV3beta1ResponseMessageText struct {
8228	// AllowPlaybackInterruption: Output only. Whether the playback of this
8229	// message can be interrupted by the end user's speech and the client
8230	// can then starts the next Dialogflow request.
8231	AllowPlaybackInterruption bool `json:"allowPlaybackInterruption,omitempty"`
8232
8233	// Text: Required. A collection of text responses.
8234	Text []string `json:"text,omitempty"`
8235
8236	// ForceSendFields is a list of field names (e.g.
8237	// "AllowPlaybackInterruption") to unconditionally include in API
8238	// requests. By default, fields with empty or default values are omitted
8239	// from API requests. However, any non-pointer, non-interface field
8240	// appearing in ForceSendFields will be sent to the server regardless of
8241	// whether the field is empty or not. This may be used to include empty
8242	// fields in Patch requests.
8243	ForceSendFields []string `json:"-"`
8244
8245	// NullFields is a list of field names (e.g.
8246	// "AllowPlaybackInterruption") to include in API requests with the JSON
8247	// null value. By default, fields with empty values are omitted from API
8248	// requests. However, any field with an empty value appearing in
8249	// NullFields will be sent to the server as null. It is an error if a
8250	// field in this list has a non-empty value. This may be used to include
8251	// null fields in Patch requests.
8252	NullFields []string `json:"-"`
8253}
8254
8255func (s *GoogleCloudDialogflowCxV3beta1ResponseMessageText) MarshalJSON() ([]byte, error) {
8256	type NoMethod GoogleCloudDialogflowCxV3beta1ResponseMessageText
8257	raw := NoMethod(*s)
8258	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8259}
8260
8261// GoogleCloudDialogflowCxV3beta1RestoreAgentRequest: The request
8262// message for Agents.RestoreAgent.
8263type GoogleCloudDialogflowCxV3beta1RestoreAgentRequest struct {
8264	// AgentContent: Uncompressed raw byte content for agent.
8265	AgentContent string `json:"agentContent,omitempty"`
8266
8267	// AgentUri: The Google Cloud Storage
8268	// (https://cloud.google.com/storage/docs/) URI to restore agent from.
8269	// The format of this URI must be `gs:///`.
8270	AgentUri string `json:"agentUri,omitempty"`
8271
8272	// RestoreOption: Agent restore mode. If not specified, `KEEP` is
8273	// assumed.
8274	//
8275	// Possible values:
8276	//   "RESTORE_OPTION_UNSPECIFIED" - Unspecified. Treated as KEEP.
8277	//   "KEEP" - Always respect the settings from the exported agent file.
8278	// It may cause a restoration failure if some settings (e.g. model type)
8279	// are not supported in the target agent.
8280	//   "FALLBACK" - Fallback to default settings if some settings are not
8281	// supported in the target agent.
8282	RestoreOption string `json:"restoreOption,omitempty"`
8283
8284	// ForceSendFields is a list of field names (e.g. "AgentContent") to
8285	// unconditionally include in API requests. By default, fields with
8286	// empty or default values are omitted from API requests. However, any
8287	// non-pointer, non-interface field appearing in ForceSendFields will be
8288	// sent to the server regardless of whether the field is empty or not.
8289	// This may be used to include empty fields in Patch requests.
8290	ForceSendFields []string `json:"-"`
8291
8292	// NullFields is a list of field names (e.g. "AgentContent") to include
8293	// in API requests with the JSON null value. By default, fields with
8294	// empty values are omitted from API requests. However, any field with
8295	// an empty value appearing in NullFields will be sent to the server as
8296	// null. It is an error if a field in this list has a non-empty value.
8297	// This may be used to include null fields in Patch requests.
8298	NullFields []string `json:"-"`
8299}
8300
8301func (s *GoogleCloudDialogflowCxV3beta1RestoreAgentRequest) MarshalJSON() ([]byte, error) {
8302	type NoMethod GoogleCloudDialogflowCxV3beta1RestoreAgentRequest
8303	raw := NoMethod(*s)
8304	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8305}
8306
8307// GoogleCloudDialogflowCxV3beta1RolloutConfig: The configuration for
8308// auto rollout.
8309type GoogleCloudDialogflowCxV3beta1RolloutConfig struct {
8310	// FailureCondition: The conditions that are used to evaluate the
8311	// failure of a rollout step. If not specified, no rollout steps will
8312	// fail. E.g. "containment_rate < 10% OR average_turn_count < 3". See
8313	// the conditions reference
8314	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
8315	FailureCondition string `json:"failureCondition,omitempty"`
8316
8317	// RolloutCondition: The conditions that are used to evaluate the
8318	// success of a rollout step. If not specified, all rollout steps will
8319	// proceed to the next one unless failure conditions are met. E.g.
8320	// "containment_rate > 60% AND callback_rate < 20%". See the conditions
8321	// reference
8322	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition).
8323	RolloutCondition string `json:"rolloutCondition,omitempty"`
8324
8325	// RolloutSteps: Steps to roll out a flow version. Steps should be
8326	// sorted by percentage in ascending order.
8327	RolloutSteps []*GoogleCloudDialogflowCxV3beta1RolloutConfigRolloutStep `json:"rolloutSteps,omitempty"`
8328
8329	// ForceSendFields is a list of field names (e.g. "FailureCondition") to
8330	// unconditionally include in API requests. By default, fields with
8331	// empty or default values are omitted from API requests. However, any
8332	// non-pointer, non-interface field appearing in ForceSendFields will be
8333	// sent to the server regardless of whether the field is empty or not.
8334	// This may be used to include empty fields in Patch requests.
8335	ForceSendFields []string `json:"-"`
8336
8337	// NullFields is a list of field names (e.g. "FailureCondition") to
8338	// include in API requests with the JSON null value. By default, fields
8339	// with empty values are omitted from API requests. However, any field
8340	// with an empty value appearing in NullFields will be sent to the
8341	// server as null. It is an error if a field in this list has a
8342	// non-empty value. This may be used to include null fields in Patch
8343	// requests.
8344	NullFields []string `json:"-"`
8345}
8346
8347func (s *GoogleCloudDialogflowCxV3beta1RolloutConfig) MarshalJSON() ([]byte, error) {
8348	type NoMethod GoogleCloudDialogflowCxV3beta1RolloutConfig
8349	raw := NoMethod(*s)
8350	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8351}
8352
8353// GoogleCloudDialogflowCxV3beta1RolloutConfigRolloutStep: A single
8354// rollout step with specified traffic allocation.
8355type GoogleCloudDialogflowCxV3beta1RolloutConfigRolloutStep struct {
8356	// DisplayName: The name of the rollout step;
8357	DisplayName string `json:"displayName,omitempty"`
8358
8359	// MinDuration: The minimum time that this step should last. Should be
8360	// longer than 1 hour. If not set, the default minimum duration for each
8361	// step will be 1 hour.
8362	MinDuration string `json:"minDuration,omitempty"`
8363
8364	// TrafficPercent: The percentage of traffic allocated to the flow
8365	// version of this rollout step. (0%, 100%].
8366	TrafficPercent int64 `json:"trafficPercent,omitempty"`
8367
8368	// ForceSendFields is a list of field names (e.g. "DisplayName") to
8369	// unconditionally include in API requests. By default, fields with
8370	// empty or default values are omitted from API requests. However, any
8371	// non-pointer, non-interface field appearing in ForceSendFields will be
8372	// sent to the server regardless of whether the field is empty or not.
8373	// This may be used to include empty fields in Patch requests.
8374	ForceSendFields []string `json:"-"`
8375
8376	// NullFields is a list of field names (e.g. "DisplayName") to include
8377	// in API requests with the JSON null value. By default, fields with
8378	// empty values are omitted from API requests. However, any field with
8379	// an empty value appearing in NullFields will be sent to the server as
8380	// null. It is an error if a field in this list has a non-empty value.
8381	// This may be used to include null fields in Patch requests.
8382	NullFields []string `json:"-"`
8383}
8384
8385func (s *GoogleCloudDialogflowCxV3beta1RolloutConfigRolloutStep) MarshalJSON() ([]byte, error) {
8386	type NoMethod GoogleCloudDialogflowCxV3beta1RolloutConfigRolloutStep
8387	raw := NoMethod(*s)
8388	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8389}
8390
8391// GoogleCloudDialogflowCxV3beta1RolloutState: State of the auto-rollout
8392// process.
8393type GoogleCloudDialogflowCxV3beta1RolloutState struct {
8394	// StartTime: Start time of the current step.
8395	StartTime string `json:"startTime,omitempty"`
8396
8397	// Step: Display name of the current auto rollout step.
8398	Step string `json:"step,omitempty"`
8399
8400	// StepIndex: Index of the current step in the auto rollout steps list.
8401	StepIndex int64 `json:"stepIndex,omitempty"`
8402
8403	// ForceSendFields is a list of field names (e.g. "StartTime") to
8404	// unconditionally include in API requests. By default, fields with
8405	// empty or default values are omitted from API requests. However, any
8406	// non-pointer, non-interface field appearing in ForceSendFields will be
8407	// sent to the server regardless of whether the field is empty or not.
8408	// This may be used to include empty fields in Patch requests.
8409	ForceSendFields []string `json:"-"`
8410
8411	// NullFields is a list of field names (e.g. "StartTime") to include in
8412	// API requests with the JSON null value. By default, fields with empty
8413	// values are omitted from API requests. However, any field with an
8414	// empty value appearing in NullFields will be sent to the server as
8415	// null. It is an error if a field in this list has a non-empty value.
8416	// This may be used to include null fields in Patch requests.
8417	NullFields []string `json:"-"`
8418}
8419
8420func (s *GoogleCloudDialogflowCxV3beta1RolloutState) MarshalJSON() ([]byte, error) {
8421	type NoMethod GoogleCloudDialogflowCxV3beta1RolloutState
8422	raw := NoMethod(*s)
8423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8424}
8425
8426// GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata: Metadata
8427// returned for the Environments.RunContinuousTest long running
8428// operation.
8429type GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata struct {
8430	// Errors: The test errors.
8431	Errors []*GoogleCloudDialogflowCxV3beta1TestError `json:"errors,omitempty"`
8432
8433	// ForceSendFields is a list of field names (e.g. "Errors") to
8434	// unconditionally include in API requests. By default, fields with
8435	// empty or default values are omitted from API requests. However, any
8436	// non-pointer, non-interface field appearing in ForceSendFields will be
8437	// sent to the server regardless of whether the field is empty or not.
8438	// This may be used to include empty fields in Patch requests.
8439	ForceSendFields []string `json:"-"`
8440
8441	// NullFields is a list of field names (e.g. "Errors") to include in API
8442	// requests with the JSON null value. By default, fields with empty
8443	// values are omitted from API requests. However, any field with an
8444	// empty value appearing in NullFields will be sent to the server as
8445	// null. It is an error if a field in this list has a non-empty value.
8446	// This may be used to include null fields in Patch requests.
8447	NullFields []string `json:"-"`
8448}
8449
8450func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata) MarshalJSON() ([]byte, error) {
8451	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestMetadata
8452	raw := NoMethod(*s)
8453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8454}
8455
8456// GoogleCloudDialogflowCxV3beta1RunContinuousTestRequest: The request
8457// message for Environments.RunContinuousTest.
8458type GoogleCloudDialogflowCxV3beta1RunContinuousTestRequest struct {
8459}
8460
8461// GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse: The response
8462// message for Environments.RunContinuousTest.
8463type GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse struct {
8464	// ContinuousTestResult: The result for a continuous test run.
8465	ContinuousTestResult *GoogleCloudDialogflowCxV3beta1ContinuousTestResult `json:"continuousTestResult,omitempty"`
8466
8467	// ForceSendFields is a list of field names (e.g.
8468	// "ContinuousTestResult") to unconditionally include in API requests.
8469	// By default, fields with empty or default values are omitted from API
8470	// requests. However, any non-pointer, non-interface field appearing in
8471	// ForceSendFields will be sent to the server regardless of whether the
8472	// field is empty or not. This may be used to include empty fields in
8473	// Patch requests.
8474	ForceSendFields []string `json:"-"`
8475
8476	// NullFields is a list of field names (e.g. "ContinuousTestResult") to
8477	// include in API requests with the JSON null value. By default, fields
8478	// with empty values are omitted from API requests. However, any field
8479	// with an empty value appearing in NullFields will be sent to the
8480	// server as null. It is an error if a field in this list has a
8481	// non-empty value. This may be used to include null fields in Patch
8482	// requests.
8483	NullFields []string `json:"-"`
8484}
8485
8486func (s *GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse) MarshalJSON() ([]byte, error) {
8487	type NoMethod GoogleCloudDialogflowCxV3beta1RunContinuousTestResponse
8488	raw := NoMethod(*s)
8489	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8490}
8491
8492// GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata: Metadata returned
8493// for the TestCases.RunTestCase long running operation. This message
8494// currently has no fields.
8495type GoogleCloudDialogflowCxV3beta1RunTestCaseMetadata struct {
8496}
8497
8498// GoogleCloudDialogflowCxV3beta1RunTestCaseRequest: The request message
8499// for TestCases.RunTestCase.
8500type GoogleCloudDialogflowCxV3beta1RunTestCaseRequest struct {
8501	// Environment: Optional. Environment name. If not set, draft
8502	// environment is assumed. Format:
8503	// `projects//locations//agents//environments/`.
8504	Environment string `json:"environment,omitempty"`
8505
8506	// ForceSendFields is a list of field names (e.g. "Environment") to
8507	// unconditionally include in API requests. By default, fields with
8508	// empty or default values are omitted from API requests. However, any
8509	// non-pointer, non-interface field appearing in ForceSendFields will be
8510	// sent to the server regardless of whether the field is empty or not.
8511	// This may be used to include empty fields in Patch requests.
8512	ForceSendFields []string `json:"-"`
8513
8514	// NullFields is a list of field names (e.g. "Environment") to include
8515	// in API requests with the JSON null value. By default, fields with
8516	// empty values are omitted from API requests. However, any field with
8517	// an empty value appearing in NullFields will be sent to the server as
8518	// null. It is an error if a field in this list has a non-empty value.
8519	// This may be used to include null fields in Patch requests.
8520	NullFields []string `json:"-"`
8521}
8522
8523func (s *GoogleCloudDialogflowCxV3beta1RunTestCaseRequest) MarshalJSON() ([]byte, error) {
8524	type NoMethod GoogleCloudDialogflowCxV3beta1RunTestCaseRequest
8525	raw := NoMethod(*s)
8526	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8527}
8528
8529// GoogleCloudDialogflowCxV3beta1RunTestCaseResponse: The response
8530// message for TestCases.RunTestCase.
8531type GoogleCloudDialogflowCxV3beta1RunTestCaseResponse struct {
8532	// Result: The result.
8533	Result *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"result,omitempty"`
8534
8535	// ForceSendFields is a list of field names (e.g. "Result") to
8536	// unconditionally include in API requests. By default, fields with
8537	// empty or default values are omitted from API requests. However, any
8538	// non-pointer, non-interface field appearing in ForceSendFields will be
8539	// sent to the server regardless of whether the field is empty or not.
8540	// This may be used to include empty fields in Patch requests.
8541	ForceSendFields []string `json:"-"`
8542
8543	// NullFields is a list of field names (e.g. "Result") to include in API
8544	// requests with the JSON null value. By default, fields with empty
8545	// values are omitted from API requests. However, any field with an
8546	// empty value appearing in NullFields will be sent to the server as
8547	// null. It is an error if a field in this list has a non-empty value.
8548	// This may be used to include null fields in Patch requests.
8549	NullFields []string `json:"-"`
8550}
8551
8552func (s *GoogleCloudDialogflowCxV3beta1RunTestCaseResponse) MarshalJSON() ([]byte, error) {
8553	type NoMethod GoogleCloudDialogflowCxV3beta1RunTestCaseResponse
8554	raw := NoMethod(*s)
8555	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8556}
8557
8558// GoogleCloudDialogflowCxV3beta1SecuritySettings: Represents the
8559// settings related to security issues, such as data redaction and data
8560// retention. It may take hours for updates on the settings to propagate
8561// to all the related components and take effect.
8562type GoogleCloudDialogflowCxV3beta1SecuritySettings struct {
8563	// DeidentifyTemplate: DLP (https://cloud.google.com/dlp/docs)
8564	// deidentify template name. Use this template to define
8565	// de-identification configuration for the content. If empty, Dialogflow
8566	// replaces sensitive info with `[redacted]` text. The template name
8567	// will have one of the following formats:
8568	// `projects//locations//deidentifyTemplates/` OR
8569	// `organizations//locations//deidentifyTemplates/` Note:
8570	// `deidentify_template` must be located in the same region as the
8571	// `SecuritySettings`.
8572	DeidentifyTemplate string `json:"deidentifyTemplate,omitempty"`
8573
8574	// DisplayName: Required. The human-readable name of the security
8575	// settings, unique within the location.
8576	DisplayName string `json:"displayName,omitempty"`
8577
8578	// InsightsExportSettings: Controls conversation exporting settings to
8579	// Insights after conversation is completed. If retention_strategy is
8580	// set to REMOVE_AFTER_CONVERSATION, Insights export is disabled no
8581	// matter what you configure here.
8582	InsightsExportSettings *GoogleCloudDialogflowCxV3beta1SecuritySettingsInsightsExportSettings `json:"insightsExportSettings,omitempty"`
8583
8584	// InspectTemplate: DLP (https://cloud.google.com/dlp/docs) inspect
8585	// template name. Use this template to define inspect base settings. If
8586	// empty, we use the default DLP inspect config. The template name will
8587	// have one of the following formats:
8588	// `projects//locations//inspectTemplates/` OR
8589	// `organizations//locations//inspectTemplates/` Note:
8590	// `inspect_template` must be located in the same region as the
8591	// `SecuritySettings`.
8592	InspectTemplate string `json:"inspectTemplate,omitempty"`
8593
8594	// Name: Required. Resource name of the settings. Format:
8595	// `projects//locations//securitySettings/`.
8596	Name string `json:"name,omitempty"`
8597
8598	// PurgeDataTypes: List of types of data to remove when retention
8599	// settings triggers purge.
8600	//
8601	// Possible values:
8602	//   "PURGE_DATA_TYPE_UNSPECIFIED" - Unspecified. Do not use.
8603	//   "DIALOGFLOW_HISTORY" - Dialogflow history. This does not include
8604	// Cloud logging, which is owned by the user - not Dialogflow.
8605	PurgeDataTypes []string `json:"purgeDataTypes,omitempty"`
8606
8607	// RedactionScope: Defines the data for which Dialogflow applies
8608	// redaction. Dialogflow does not redact data that it does not have
8609	// access to – for example, Cloud logging.
8610	//
8611	// Possible values:
8612	//   "REDACTION_SCOPE_UNSPECIFIED" - Don't redact any kind of data.
8613	//   "REDACT_DISK_STORAGE" - On data to be written to disk or similar
8614	// devices that are capable of holding data even if power is
8615	// disconnected. This includes data that are temporarily saved on disk.
8616	RedactionScope string `json:"redactionScope,omitempty"`
8617
8618	// RedactionStrategy: Strategy that defines how we do redaction.
8619	//
8620	// Possible values:
8621	//   "REDACTION_STRATEGY_UNSPECIFIED" - Do not redact.
8622	//   "REDACT_WITH_SERVICE" - Call redaction service to clean up the data
8623	// to be persisted.
8624	RedactionStrategy string `json:"redactionStrategy,omitempty"`
8625
8626	// RetentionWindowDays: Retains data in interaction logging for the
8627	// specified number of days. This does not apply to Cloud logging, which
8628	// is owned by the user - not Dialogflow. User must Set a value lower
8629	// than Dialogflow's default 30d TTL. Setting a value higher than that
8630	// has no effect. A missing value or setting to 0 also means we use
8631	// Dialogflow's default TTL. Note: Interaction logging is a limited
8632	// access feature. Talk to your Google representative to check
8633	// availability for you.
8634	RetentionWindowDays int64 `json:"retentionWindowDays,omitempty"`
8635
8636	// ServerResponse contains the HTTP response code and headers from the
8637	// server.
8638	googleapi.ServerResponse `json:"-"`
8639
8640	// ForceSendFields is a list of field names (e.g. "DeidentifyTemplate")
8641	// to unconditionally include in API requests. By default, fields with
8642	// empty or default values are omitted from API requests. However, any
8643	// non-pointer, non-interface field appearing in ForceSendFields will be
8644	// sent to the server regardless of whether the field is empty or not.
8645	// This may be used to include empty fields in Patch requests.
8646	ForceSendFields []string `json:"-"`
8647
8648	// NullFields is a list of field names (e.g. "DeidentifyTemplate") to
8649	// include in API requests with the JSON null value. By default, fields
8650	// with empty values are omitted from API requests. However, any field
8651	// with an empty value appearing in NullFields will be sent to the
8652	// server as null. It is an error if a field in this list has a
8653	// non-empty value. This may be used to include null fields in Patch
8654	// requests.
8655	NullFields []string `json:"-"`
8656}
8657
8658func (s *GoogleCloudDialogflowCxV3beta1SecuritySettings) MarshalJSON() ([]byte, error) {
8659	type NoMethod GoogleCloudDialogflowCxV3beta1SecuritySettings
8660	raw := NoMethod(*s)
8661	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8662}
8663
8664// GoogleCloudDialogflowCxV3beta1SecuritySettingsInsightsExportSettings:
8665// Settings for exporting conversations to Insights
8666// (https://cloud.google.com/dialogflow/priv/docs/insights).
8667type GoogleCloudDialogflowCxV3beta1SecuritySettingsInsightsExportSettings struct {
8668	// EnableInsightsExport: If enabled, we will automatically exports
8669	// conversations to Insights and Insights runs its analyzers.
8670	EnableInsightsExport bool `json:"enableInsightsExport,omitempty"`
8671
8672	// ForceSendFields is a list of field names (e.g.
8673	// "EnableInsightsExport") to unconditionally include in API requests.
8674	// By default, fields with empty or default values are omitted from API
8675	// requests. However, any non-pointer, non-interface field appearing in
8676	// ForceSendFields will be sent to the server regardless of whether the
8677	// field is empty or not. This may be used to include empty fields in
8678	// Patch requests.
8679	ForceSendFields []string `json:"-"`
8680
8681	// NullFields is a list of field names (e.g. "EnableInsightsExport") to
8682	// include in API requests with the JSON null value. By default, fields
8683	// with empty values are omitted from API requests. However, any field
8684	// with an empty value appearing in NullFields will be sent to the
8685	// server as null. It is an error if a field in this list has a
8686	// non-empty value. This may be used to include null fields in Patch
8687	// requests.
8688	NullFields []string `json:"-"`
8689}
8690
8691func (s *GoogleCloudDialogflowCxV3beta1SecuritySettingsInsightsExportSettings) MarshalJSON() ([]byte, error) {
8692	type NoMethod GoogleCloudDialogflowCxV3beta1SecuritySettingsInsightsExportSettings
8693	raw := NoMethod(*s)
8694	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8695}
8696
8697// GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult: The result of
8698// sentiment analysis. Sentiment analysis inspects user input and
8699// identifies the prevailing subjective opinion, especially to determine
8700// a user's attitude as positive, negative, or neutral.
8701type GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult struct {
8702	// Magnitude: A non-negative number in the [0, +inf) range, which
8703	// represents the absolute magnitude of sentiment, regardless of score
8704	// (positive or negative).
8705	Magnitude float64 `json:"magnitude,omitempty"`
8706
8707	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
8708	// (positive sentiment).
8709	Score float64 `json:"score,omitempty"`
8710
8711	// ForceSendFields is a list of field names (e.g. "Magnitude") to
8712	// unconditionally include in API requests. By default, fields with
8713	// empty or default values are omitted from API requests. However, any
8714	// non-pointer, non-interface field appearing in ForceSendFields will be
8715	// sent to the server regardless of whether the field is empty or not.
8716	// This may be used to include empty fields in Patch requests.
8717	ForceSendFields []string `json:"-"`
8718
8719	// NullFields is a list of field names (e.g. "Magnitude") to include in
8720	// API requests with the JSON null value. By default, fields with empty
8721	// values are omitted from API requests. However, any field with an
8722	// empty value appearing in NullFields will be sent to the server as
8723	// null. It is an error if a field in this list has a non-empty value.
8724	// This may be used to include null fields in Patch requests.
8725	NullFields []string `json:"-"`
8726}
8727
8728func (s *GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
8729	type NoMethod GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult
8730	raw := NoMethod(*s)
8731	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8732}
8733
8734func (s *GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult) UnmarshalJSON(data []byte) error {
8735	type NoMethod GoogleCloudDialogflowCxV3beta1SentimentAnalysisResult
8736	var s1 struct {
8737		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
8738		Score     gensupport.JSONFloat64 `json:"score"`
8739		*NoMethod
8740	}
8741	s1.NoMethod = (*NoMethod)(s)
8742	if err := json.Unmarshal(data, &s1); err != nil {
8743		return err
8744	}
8745	s.Magnitude = float64(s1.Magnitude)
8746	s.Score = float64(s1.Score)
8747	return nil
8748}
8749
8750// GoogleCloudDialogflowCxV3beta1SessionEntityType: Session entity types
8751// are referred to as **User** entity types and are entities that are
8752// built for an individual user such as favorites, preferences,
8753// playlists, and so on. You can redefine a session entity type at the
8754// session level to extend or replace a custom entity type at the user
8755// session level (we refer to the entity types defined at the agent
8756// level as "custom entity types"). Note: session entity types apply to
8757// all queries, regardless of the language. For more information about
8758// entity types, see the Dialogflow documentation
8759// (https://cloud.google.com/dialogflow/docs/entities-overview).
8760type GoogleCloudDialogflowCxV3beta1SessionEntityType struct {
8761	// Entities: Required. The collection of entities to override or
8762	// supplement the custom entity type.
8763	Entities []*GoogleCloudDialogflowCxV3beta1EntityTypeEntity `json:"entities,omitempty"`
8764
8765	// EntityOverrideMode: Required. Indicates whether the additional data
8766	// should override or supplement the custom entity type definition.
8767	//
8768	// Possible values:
8769	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
8770	// should be never used.
8771	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
8772	// entities overrides the collection of entities in the corresponding
8773	// custom entity type.
8774	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
8775	// entities extends the collection of entities in the corresponding
8776	// custom entity type. Note: Even in this override mode calls to
8777	// `ListSessionEntityTypes`, `GetSessionEntityType`,
8778	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
8779	// the additional entities added in this session entity type. If you
8780	// want to get the supplemented list, please call
8781	// EntityTypes.GetEntityType on the custom entity type and merge.
8782	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
8783
8784	// Name: Required. The unique identifier of the session entity type.
8785	// Format: `projects//locations//agents//sessions//entityTypes/` or
8786	// `projects//locations//agents//environments//sessions//entityTypes/`.
8787	// If `Environment ID` is not specified, we assume default 'draft'
8788	// environment.
8789	Name string `json:"name,omitempty"`
8790
8791	// ServerResponse contains the HTTP response code and headers from the
8792	// server.
8793	googleapi.ServerResponse `json:"-"`
8794
8795	// ForceSendFields is a list of field names (e.g. "Entities") to
8796	// unconditionally include in API requests. By default, fields with
8797	// empty or default values are omitted from API requests. However, any
8798	// non-pointer, non-interface field appearing in ForceSendFields will be
8799	// sent to the server regardless of whether the field is empty or not.
8800	// This may be used to include empty fields in Patch requests.
8801	ForceSendFields []string `json:"-"`
8802
8803	// NullFields is a list of field names (e.g. "Entities") to include in
8804	// API requests with the JSON null value. By default, fields with empty
8805	// values are omitted from API requests. However, any field with an
8806	// empty value appearing in NullFields will be sent to the server as
8807	// null. It is an error if a field in this list has a non-empty value.
8808	// This may be used to include null fields in Patch requests.
8809	NullFields []string `json:"-"`
8810}
8811
8812func (s *GoogleCloudDialogflowCxV3beta1SessionEntityType) MarshalJSON() ([]byte, error) {
8813	type NoMethod GoogleCloudDialogflowCxV3beta1SessionEntityType
8814	raw := NoMethod(*s)
8815	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8816}
8817
8818// GoogleCloudDialogflowCxV3beta1SessionInfo: Represents session
8819// information communicated to and from the webhook.
8820type GoogleCloudDialogflowCxV3beta1SessionInfo struct {
8821	// Parameters: Optional for WebhookRequest. Optional for
8822	// WebhookResponse. All parameters collected from forms and intents
8823	// during the session. Parameters can be created, updated, or removed by
8824	// the webhook. To remove a parameter from the session, the webhook
8825	// should explicitly set the parameter value to null in WebhookResponse.
8826	// The map is keyed by parameters' display names.
8827	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
8828
8829	// Session: Always present for WebhookRequest. Ignored for
8830	// WebhookResponse. The unique identifier of the session. This field can
8831	// be used by the webhook to identify a session. Format:
8832	// `projects//locations//agents//sessions/` or
8833	// `projects//locations//agents//environments//sessions/` if environment
8834	// is specified.
8835	Session string `json:"session,omitempty"`
8836
8837	// ForceSendFields is a list of field names (e.g. "Parameters") to
8838	// unconditionally include in API requests. By default, fields with
8839	// empty or default values are omitted from API requests. However, any
8840	// non-pointer, non-interface field appearing in ForceSendFields will be
8841	// sent to the server regardless of whether the field is empty or not.
8842	// This may be used to include empty fields in Patch requests.
8843	ForceSendFields []string `json:"-"`
8844
8845	// NullFields is a list of field names (e.g. "Parameters") to include in
8846	// API requests with the JSON null value. By default, fields with empty
8847	// values are omitted from API requests. However, any field with an
8848	// empty value appearing in NullFields will be sent to the server as
8849	// null. It is an error if a field in this list has a non-empty value.
8850	// This may be used to include null fields in Patch requests.
8851	NullFields []string `json:"-"`
8852}
8853
8854func (s *GoogleCloudDialogflowCxV3beta1SessionInfo) MarshalJSON() ([]byte, error) {
8855	type NoMethod GoogleCloudDialogflowCxV3beta1SessionInfo
8856	raw := NoMethod(*s)
8857	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8858}
8859
8860// GoogleCloudDialogflowCxV3beta1SpeechToTextSettings: Settings related
8861// to speech recognition.
8862type GoogleCloudDialogflowCxV3beta1SpeechToTextSettings struct {
8863	// EnableSpeechAdaptation: Whether to use speech adaptation for speech
8864	// recognition.
8865	EnableSpeechAdaptation bool `json:"enableSpeechAdaptation,omitempty"`
8866
8867	// ForceSendFields is a list of field names (e.g.
8868	// "EnableSpeechAdaptation") to unconditionally include in API requests.
8869	// By default, fields with empty or default values are omitted from API
8870	// requests. However, any non-pointer, non-interface field appearing in
8871	// ForceSendFields will be sent to the server regardless of whether the
8872	// field is empty or not. This may be used to include empty fields in
8873	// Patch requests.
8874	ForceSendFields []string `json:"-"`
8875
8876	// NullFields is a list of field names (e.g. "EnableSpeechAdaptation")
8877	// to include in API requests with the JSON null value. By default,
8878	// fields with empty values are omitted from API requests. However, any
8879	// field with an empty value appearing in NullFields will be sent to the
8880	// server as null. It is an error if a field in this list has a
8881	// non-empty value. This may be used to include null fields in Patch
8882	// requests.
8883	NullFields []string `json:"-"`
8884}
8885
8886func (s *GoogleCloudDialogflowCxV3beta1SpeechToTextSettings) MarshalJSON() ([]byte, error) {
8887	type NoMethod GoogleCloudDialogflowCxV3beta1SpeechToTextSettings
8888	raw := NoMethod(*s)
8889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8890}
8891
8892// GoogleCloudDialogflowCxV3beta1StartExperimentRequest: The request
8893// message for Experiments.StartExperiment.
8894type GoogleCloudDialogflowCxV3beta1StartExperimentRequest struct {
8895}
8896
8897// GoogleCloudDialogflowCxV3beta1StopExperimentRequest: The request
8898// message for Experiments.StopExperiment.
8899type GoogleCloudDialogflowCxV3beta1StopExperimentRequest struct {
8900}
8901
8902// GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig: Configuration
8903// of how speech should be synthesized.
8904type GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig struct {
8905	// EffectsProfileId: Optional. An identifier which selects 'audio
8906	// effects' profiles that are applied on (post synthesized) text to
8907	// speech. Effects are applied on top of each other in the order they
8908	// are given.
8909	EffectsProfileId []string `json:"effectsProfileId,omitempty"`
8910
8911	// Pitch: Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means
8912	// increase 20 semitones from the original pitch. -20 means decrease 20
8913	// semitones from the original pitch.
8914	Pitch float64 `json:"pitch,omitempty"`
8915
8916	// SpeakingRate: Optional. Speaking rate/speed, in the range [0.25,
8917	// 4.0]. 1.0 is the normal native speed supported by the specific voice.
8918	// 2.0 is twice as fast, and 0.5 is half as fast. If unset(0.0),
8919	// defaults to the native 1.0 speed. Any other values < 0.25 or > 4.0
8920	// will return an error.
8921	SpeakingRate float64 `json:"speakingRate,omitempty"`
8922
8923	// Voice: Optional. The desired voice of the synthesized audio.
8924	Voice *GoogleCloudDialogflowCxV3beta1VoiceSelectionParams `json:"voice,omitempty"`
8925
8926	// VolumeGainDb: Optional. Volume gain (in dB) of the normal native
8927	// volume supported by the specific voice, in the range [-96.0, 16.0].
8928	// If unset, or set to a value of 0.0 (dB), will play at normal native
8929	// signal amplitude. A value of -6.0 (dB) will play at approximately
8930	// half the amplitude of the normal native signal amplitude. A value of
8931	// +6.0 (dB) will play at approximately twice the amplitude of the
8932	// normal native signal amplitude. We strongly recommend not to exceed
8933	// +10 (dB) as there's usually no effective increase in loudness for any
8934	// value greater than that.
8935	VolumeGainDb float64 `json:"volumeGainDb,omitempty"`
8936
8937	// ForceSendFields is a list of field names (e.g. "EffectsProfileId") to
8938	// unconditionally include in API requests. By default, fields with
8939	// empty or default values are omitted from API requests. However, any
8940	// non-pointer, non-interface field appearing in ForceSendFields will be
8941	// sent to the server regardless of whether the field is empty or not.
8942	// This may be used to include empty fields in Patch requests.
8943	ForceSendFields []string `json:"-"`
8944
8945	// NullFields is a list of field names (e.g. "EffectsProfileId") to
8946	// include in API requests with the JSON null value. By default, fields
8947	// with empty values are omitted from API requests. However, any field
8948	// with an empty value appearing in NullFields will be sent to the
8949	// server as null. It is an error if a field in this list has a
8950	// non-empty value. This may be used to include null fields in Patch
8951	// requests.
8952	NullFields []string `json:"-"`
8953}
8954
8955func (s *GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig) MarshalJSON() ([]byte, error) {
8956	type NoMethod GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig
8957	raw := NoMethod(*s)
8958	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
8959}
8960
8961func (s *GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig) UnmarshalJSON(data []byte) error {
8962	type NoMethod GoogleCloudDialogflowCxV3beta1SynthesizeSpeechConfig
8963	var s1 struct {
8964		Pitch        gensupport.JSONFloat64 `json:"pitch"`
8965		SpeakingRate gensupport.JSONFloat64 `json:"speakingRate"`
8966		VolumeGainDb gensupport.JSONFloat64 `json:"volumeGainDb"`
8967		*NoMethod
8968	}
8969	s1.NoMethod = (*NoMethod)(s)
8970	if err := json.Unmarshal(data, &s1); err != nil {
8971		return err
8972	}
8973	s.Pitch = float64(s1.Pitch)
8974	s.SpeakingRate = float64(s1.SpeakingRate)
8975	s.VolumeGainDb = float64(s1.VolumeGainDb)
8976	return nil
8977}
8978
8979// GoogleCloudDialogflowCxV3beta1TestCase: Represents a test case.
8980type GoogleCloudDialogflowCxV3beta1TestCase struct {
8981	// CreationTime: Output only. When the test was created.
8982	CreationTime string `json:"creationTime,omitempty"`
8983
8984	// DisplayName: Required. The human-readable name of the test case,
8985	// unique within the agent. Limit of 200 characters.
8986	DisplayName string `json:"displayName,omitempty"`
8987
8988	// LastTestResult: The latest test result.
8989	LastTestResult *GoogleCloudDialogflowCxV3beta1TestCaseResult `json:"lastTestResult,omitempty"`
8990
8991	// Name: The unique identifier of the test case.
8992	// TestCases.CreateTestCase will populate the name automatically.
8993	// Otherwise use format: `projects//locations//agents/ /testCases/`.
8994	Name string `json:"name,omitempty"`
8995
8996	// Notes: Additional freeform notes about the test case. Limit of 400
8997	// characters.
8998	Notes string `json:"notes,omitempty"`
8999
9000	// Tags: Tags are short descriptions that users may apply to test cases
9001	// for organizational and filtering purposes. Each tag should start with
9002	// "#" and has a limit of 30 characters.
9003	Tags []string `json:"tags,omitempty"`
9004
9005	// TestCaseConversationTurns: The conversation turns uttered when the
9006	// test case was created, in chronological order. These include the
9007	// canonical set of agent utterances that should occur when the agent is
9008	// working properly.
9009	TestCaseConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"testCaseConversationTurns,omitempty"`
9010
9011	// TestConfig: Config for the test case.
9012	TestConfig *GoogleCloudDialogflowCxV3beta1TestConfig `json:"testConfig,omitempty"`
9013
9014	// ServerResponse contains the HTTP response code and headers from the
9015	// server.
9016	googleapi.ServerResponse `json:"-"`
9017
9018	// ForceSendFields is a list of field names (e.g. "CreationTime") to
9019	// unconditionally include in API requests. By default, fields with
9020	// empty or default values are omitted from API requests. However, any
9021	// non-pointer, non-interface field appearing in ForceSendFields will be
9022	// sent to the server regardless of whether the field is empty or not.
9023	// This may be used to include empty fields in Patch requests.
9024	ForceSendFields []string `json:"-"`
9025
9026	// NullFields is a list of field names (e.g. "CreationTime") to include
9027	// in API requests with the JSON null value. By default, fields with
9028	// empty values are omitted from API requests. However, any field with
9029	// an empty value appearing in NullFields will be sent to the server as
9030	// null. It is an error if a field in this list has a non-empty value.
9031	// This may be used to include null fields in Patch requests.
9032	NullFields []string `json:"-"`
9033}
9034
9035func (s *GoogleCloudDialogflowCxV3beta1TestCase) MarshalJSON() ([]byte, error) {
9036	type NoMethod GoogleCloudDialogflowCxV3beta1TestCase
9037	raw := NoMethod(*s)
9038	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9039}
9040
9041// GoogleCloudDialogflowCxV3beta1TestCaseError: Error info for importing
9042// a test.
9043type GoogleCloudDialogflowCxV3beta1TestCaseError struct {
9044	// Status: The status associated with the test case.
9045	Status *GoogleRpcStatus `json:"status,omitempty"`
9046
9047	// TestCase: The test case.
9048	TestCase *GoogleCloudDialogflowCxV3beta1TestCase `json:"testCase,omitempty"`
9049
9050	// ForceSendFields is a list of field names (e.g. "Status") to
9051	// unconditionally include in API requests. By default, fields with
9052	// empty or default values are omitted from API requests. However, any
9053	// non-pointer, non-interface field appearing in ForceSendFields will be
9054	// sent to the server regardless of whether the field is empty or not.
9055	// This may be used to include empty fields in Patch requests.
9056	ForceSendFields []string `json:"-"`
9057
9058	// NullFields is a list of field names (e.g. "Status") to include in API
9059	// requests with the JSON null value. By default, fields with empty
9060	// values are omitted from API requests. However, any field with an
9061	// empty value appearing in NullFields will be sent to the server as
9062	// null. It is an error if a field in this list has a non-empty value.
9063	// This may be used to include null fields in Patch requests.
9064	NullFields []string `json:"-"`
9065}
9066
9067func (s *GoogleCloudDialogflowCxV3beta1TestCaseError) MarshalJSON() ([]byte, error) {
9068	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseError
9069	raw := NoMethod(*s)
9070	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9071}
9072
9073// GoogleCloudDialogflowCxV3beta1TestCaseResult: Represents a result
9074// from running a test case in an agent environment.
9075type GoogleCloudDialogflowCxV3beta1TestCaseResult struct {
9076	// ConversationTurns: The conversation turns uttered during the test
9077	// case replay in chronological order.
9078	ConversationTurns []*GoogleCloudDialogflowCxV3beta1ConversationTurn `json:"conversationTurns,omitempty"`
9079
9080	// Environment: Environment where the test was run. If not set, it
9081	// indicates the draft environment.
9082	Environment string `json:"environment,omitempty"`
9083
9084	// Name: The resource name for the test case result. Format:
9085	// `projects//locations//agents//testCases/ /results/`.
9086	Name string `json:"name,omitempty"`
9087
9088	// TestResult: Whether the test case passed in the agent environment.
9089	//
9090	// Possible values:
9091	//   "TEST_RESULT_UNSPECIFIED" - Not specified. Should never be used.
9092	//   "PASSED" - The test passed.
9093	//   "FAILED" - The test did not pass.
9094	TestResult string `json:"testResult,omitempty"`
9095
9096	// TestTime: The time that the test was run.
9097	TestTime string `json:"testTime,omitempty"`
9098
9099	// ServerResponse contains the HTTP response code and headers from the
9100	// server.
9101	googleapi.ServerResponse `json:"-"`
9102
9103	// ForceSendFields is a list of field names (e.g. "ConversationTurns")
9104	// to unconditionally include in API requests. By default, fields with
9105	// empty or default values are omitted from API requests. However, any
9106	// non-pointer, non-interface field appearing in ForceSendFields will be
9107	// sent to the server regardless of whether the field is empty or not.
9108	// This may be used to include empty fields in Patch requests.
9109	ForceSendFields []string `json:"-"`
9110
9111	// NullFields is a list of field names (e.g. "ConversationTurns") to
9112	// include in API requests with the JSON null value. By default, fields
9113	// with empty values are omitted from API requests. However, any field
9114	// with an empty value appearing in NullFields will be sent to the
9115	// server as null. It is an error if a field in this list has a
9116	// non-empty value. This may be used to include null fields in Patch
9117	// requests.
9118	NullFields []string `json:"-"`
9119}
9120
9121func (s *GoogleCloudDialogflowCxV3beta1TestCaseResult) MarshalJSON() ([]byte, error) {
9122	type NoMethod GoogleCloudDialogflowCxV3beta1TestCaseResult
9123	raw := NoMethod(*s)
9124	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9125}
9126
9127// GoogleCloudDialogflowCxV3beta1TestConfig: Represents configurations
9128// for a test case.
9129type GoogleCloudDialogflowCxV3beta1TestConfig struct {
9130	// Flow: Flow name. If not set, default start flow is assumed. Format:
9131	// `projects//locations//agents//flows/`.
9132	Flow string `json:"flow,omitempty"`
9133
9134	// TrackingParameters: Session parameters to be compared when
9135	// calculating differences.
9136	TrackingParameters []string `json:"trackingParameters,omitempty"`
9137
9138	// ForceSendFields is a list of field names (e.g. "Flow") to
9139	// unconditionally include in API requests. By default, fields with
9140	// empty or default values are omitted from API requests. However, any
9141	// non-pointer, non-interface field appearing in ForceSendFields will be
9142	// sent to the server regardless of whether the field is empty or not.
9143	// This may be used to include empty fields in Patch requests.
9144	ForceSendFields []string `json:"-"`
9145
9146	// NullFields is a list of field names (e.g. "Flow") to include in API
9147	// requests with the JSON null value. By default, fields with empty
9148	// values are omitted from API requests. However, any field with an
9149	// empty value appearing in NullFields will be sent to the server as
9150	// null. It is an error if a field in this list has a non-empty value.
9151	// This may be used to include null fields in Patch requests.
9152	NullFields []string `json:"-"`
9153}
9154
9155func (s *GoogleCloudDialogflowCxV3beta1TestConfig) MarshalJSON() ([]byte, error) {
9156	type NoMethod GoogleCloudDialogflowCxV3beta1TestConfig
9157	raw := NoMethod(*s)
9158	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9159}
9160
9161// GoogleCloudDialogflowCxV3beta1TestError: Error info for running a
9162// test.
9163type GoogleCloudDialogflowCxV3beta1TestError struct {
9164	// Status: The status associated with the test.
9165	Status *GoogleRpcStatus `json:"status,omitempty"`
9166
9167	// TestCase: The test case resource name.
9168	TestCase string `json:"testCase,omitempty"`
9169
9170	// TestTime: The timestamp when the test was completed.
9171	TestTime string `json:"testTime,omitempty"`
9172
9173	// ForceSendFields is a list of field names (e.g. "Status") to
9174	// unconditionally include in API requests. By default, fields with
9175	// empty or default values are omitted from API requests. However, any
9176	// non-pointer, non-interface field appearing in ForceSendFields will be
9177	// sent to the server regardless of whether the field is empty or not.
9178	// This may be used to include empty fields in Patch requests.
9179	ForceSendFields []string `json:"-"`
9180
9181	// NullFields is a list of field names (e.g. "Status") to include in API
9182	// requests with the JSON null value. By default, fields with empty
9183	// values are omitted from API requests. However, any field with an
9184	// empty value appearing in NullFields will be sent to the server as
9185	// null. It is an error if a field in this list has a non-empty value.
9186	// This may be used to include null fields in Patch requests.
9187	NullFields []string `json:"-"`
9188}
9189
9190func (s *GoogleCloudDialogflowCxV3beta1TestError) MarshalJSON() ([]byte, error) {
9191	type NoMethod GoogleCloudDialogflowCxV3beta1TestError
9192	raw := NoMethod(*s)
9193	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9194}
9195
9196// GoogleCloudDialogflowCxV3beta1TestRunDifference: The description of
9197// differences between original and replayed agent output.
9198type GoogleCloudDialogflowCxV3beta1TestRunDifference struct {
9199	// Description: A description of the diff, showing the actual output vs
9200	// expected output.
9201	Description string `json:"description,omitempty"`
9202
9203	// Type: The type of diff.
9204	//
9205	// Possible values:
9206	//   "DIFF_TYPE_UNSPECIFIED" - Should never be used.
9207	//   "INTENT" - The intent.
9208	//   "PAGE" - The page.
9209	//   "PARAMETERS" - The parameters.
9210	//   "UTTERANCE" - The message utterance.
9211	Type string `json:"type,omitempty"`
9212
9213	// ForceSendFields is a list of field names (e.g. "Description") to
9214	// unconditionally include in API requests. By default, fields with
9215	// empty or default values are omitted from API requests. However, any
9216	// non-pointer, non-interface field appearing in ForceSendFields will be
9217	// sent to the server regardless of whether the field is empty or not.
9218	// This may be used to include empty fields in Patch requests.
9219	ForceSendFields []string `json:"-"`
9220
9221	// NullFields is a list of field names (e.g. "Description") to include
9222	// in API requests with the JSON null value. By default, fields with
9223	// empty values are omitted from API requests. However, any field with
9224	// an empty value appearing in NullFields will be sent to the server as
9225	// null. It is an error if a field in this list has a non-empty value.
9226	// This may be used to include null fields in Patch requests.
9227	NullFields []string `json:"-"`
9228}
9229
9230func (s *GoogleCloudDialogflowCxV3beta1TestRunDifference) MarshalJSON() ([]byte, error) {
9231	type NoMethod GoogleCloudDialogflowCxV3beta1TestRunDifference
9232	raw := NoMethod(*s)
9233	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9234}
9235
9236// GoogleCloudDialogflowCxV3beta1TextInput: Represents the natural
9237// language text to be processed.
9238type GoogleCloudDialogflowCxV3beta1TextInput struct {
9239	// Text: Required. The UTF-8 encoded natural language text to be
9240	// processed. Text length must not exceed 256 characters.
9241	Text string `json:"text,omitempty"`
9242
9243	// ForceSendFields is a list of field names (e.g. "Text") to
9244	// unconditionally include in API requests. By default, fields with
9245	// empty or default values are omitted from API requests. However, any
9246	// non-pointer, non-interface field appearing in ForceSendFields will be
9247	// sent to the server regardless of whether the field is empty or not.
9248	// This may be used to include empty fields in Patch requests.
9249	ForceSendFields []string `json:"-"`
9250
9251	// NullFields is a list of field names (e.g. "Text") to include in API
9252	// requests with the JSON null value. By default, fields with empty
9253	// values are omitted from API requests. However, any field with an
9254	// empty value appearing in NullFields will be sent to the server as
9255	// null. It is an error if a field in this list has a non-empty value.
9256	// This may be used to include null fields in Patch requests.
9257	NullFields []string `json:"-"`
9258}
9259
9260func (s *GoogleCloudDialogflowCxV3beta1TextInput) MarshalJSON() ([]byte, error) {
9261	type NoMethod GoogleCloudDialogflowCxV3beta1TextInput
9262	raw := NoMethod(*s)
9263	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9264}
9265
9266// GoogleCloudDialogflowCxV3beta1TrainFlowRequest: The request message
9267// for Flows.TrainFlow.
9268type GoogleCloudDialogflowCxV3beta1TrainFlowRequest struct {
9269}
9270
9271// GoogleCloudDialogflowCxV3beta1TransitionCoverage: Transition coverage
9272// represents the percentage of all possible page transitions
9273// (page-level transition routes and event handlers, excluding
9274// transition route groups) present within any of a parent's test cases.
9275type GoogleCloudDialogflowCxV3beta1TransitionCoverage struct {
9276	// CoverageScore: The percent of transitions in the agent that are
9277	// covered.
9278	CoverageScore float64 `json:"coverageScore,omitempty"`
9279
9280	// Transitions: The list of Transitions present in the agent.
9281	Transitions []*GoogleCloudDialogflowCxV3beta1TransitionCoverageTransition `json:"transitions,omitempty"`
9282
9283	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
9284	// unconditionally include in API requests. By default, fields with
9285	// empty or default values are omitted from API requests. However, any
9286	// non-pointer, non-interface field appearing in ForceSendFields will be
9287	// sent to the server regardless of whether the field is empty or not.
9288	// This may be used to include empty fields in Patch requests.
9289	ForceSendFields []string `json:"-"`
9290
9291	// NullFields is a list of field names (e.g. "CoverageScore") to include
9292	// in API requests with the JSON null value. By default, fields with
9293	// empty values are omitted from API requests. However, any field with
9294	// an empty value appearing in NullFields will be sent to the server as
9295	// null. It is an error if a field in this list has a non-empty value.
9296	// This may be used to include null fields in Patch requests.
9297	NullFields []string `json:"-"`
9298}
9299
9300func (s *GoogleCloudDialogflowCxV3beta1TransitionCoverage) MarshalJSON() ([]byte, error) {
9301	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionCoverage
9302	raw := NoMethod(*s)
9303	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9304}
9305
9306func (s *GoogleCloudDialogflowCxV3beta1TransitionCoverage) UnmarshalJSON(data []byte) error {
9307	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionCoverage
9308	var s1 struct {
9309		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
9310		*NoMethod
9311	}
9312	s1.NoMethod = (*NoMethod)(s)
9313	if err := json.Unmarshal(data, &s1); err != nil {
9314		return err
9315	}
9316	s.CoverageScore = float64(s1.CoverageScore)
9317	return nil
9318}
9319
9320// GoogleCloudDialogflowCxV3beta1TransitionCoverageTransition: A
9321// transition in a page.
9322type GoogleCloudDialogflowCxV3beta1TransitionCoverageTransition struct {
9323	// Covered: Whether or not the transition is covered by at least one of
9324	// the agent's test cases.
9325	Covered bool `json:"covered,omitempty"`
9326
9327	// EventHandler: Event handler.
9328	EventHandler *GoogleCloudDialogflowCxV3beta1EventHandler `json:"eventHandler,omitempty"`
9329
9330	// Index: The index of a transition in the transition list. Starting
9331	// from 0.
9332	Index int64 `json:"index,omitempty"`
9333
9334	// Source: The start node of a transition.
9335	Source *GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode `json:"source,omitempty"`
9336
9337	// Target: The end node of a transition.
9338	Target *GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode `json:"target,omitempty"`
9339
9340	// TransitionRoute: Intent route or condition route.
9341	TransitionRoute *GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoute,omitempty"`
9342
9343	// ForceSendFields is a list of field names (e.g. "Covered") to
9344	// unconditionally include in API requests. By default, fields with
9345	// empty or default values are omitted from API requests. However, any
9346	// non-pointer, non-interface field appearing in ForceSendFields will be
9347	// sent to the server regardless of whether the field is empty or not.
9348	// This may be used to include empty fields in Patch requests.
9349	ForceSendFields []string `json:"-"`
9350
9351	// NullFields is a list of field names (e.g. "Covered") to include in
9352	// API requests with the JSON null value. By default, fields with empty
9353	// values are omitted from API requests. However, any field with an
9354	// empty value appearing in NullFields will be sent to the server as
9355	// null. It is an error if a field in this list has a non-empty value.
9356	// This may be used to include null fields in Patch requests.
9357	NullFields []string `json:"-"`
9358}
9359
9360func (s *GoogleCloudDialogflowCxV3beta1TransitionCoverageTransition) MarshalJSON() ([]byte, error) {
9361	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionCoverageTransition
9362	raw := NoMethod(*s)
9363	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9364}
9365
9366// GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode: The
9367// source or target of a transition.
9368type GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode struct {
9369	// Flow: Indicates a transition to a Flow. Only some fields such as name
9370	// and displayname will be set.
9371	Flow *GoogleCloudDialogflowCxV3beta1Flow `json:"flow,omitempty"`
9372
9373	// Page: Indicates a transition to a Page. Only some fields such as name
9374	// and displayname will be set.
9375	Page *GoogleCloudDialogflowCxV3beta1Page `json:"page,omitempty"`
9376
9377	// ForceSendFields is a list of field names (e.g. "Flow") to
9378	// unconditionally include in API requests. By default, fields with
9379	// empty or default values are omitted from API requests. However, any
9380	// non-pointer, non-interface field appearing in ForceSendFields will be
9381	// sent to the server regardless of whether the field is empty or not.
9382	// This may be used to include empty fields in Patch requests.
9383	ForceSendFields []string `json:"-"`
9384
9385	// NullFields is a list of field names (e.g. "Flow") to include in API
9386	// requests with the JSON null value. By default, fields with empty
9387	// values are omitted from API requests. However, any field with an
9388	// empty value appearing in NullFields will be sent to the server as
9389	// null. It is an error if a field in this list has a non-empty value.
9390	// This may be used to include null fields in Patch requests.
9391	NullFields []string `json:"-"`
9392}
9393
9394func (s *GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode) MarshalJSON() ([]byte, error) {
9395	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionCoverageTransitionNode
9396	raw := NoMethod(*s)
9397	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9398}
9399
9400// GoogleCloudDialogflowCxV3beta1TransitionRoute: A transition route
9401// specifies a intent that can be matched and/or a data condition that
9402// can be evaluated during a session. When a specified transition is
9403// matched, the following actions are taken in order: * If there is a
9404// `trigger_fulfillment` associated with the transition, it will be
9405// called. * If there is a `target_page` associated with the transition,
9406// the session will transition into the specified page. * If there is a
9407// `target_flow` associated with the transition, the session will
9408// transition into the specified flow.
9409type GoogleCloudDialogflowCxV3beta1TransitionRoute struct {
9410	// Condition: The condition to evaluate against form parameters or
9411	// session parameters. See the conditions reference
9412	// (https://cloud.google.com/dialogflow/cx/docs/reference/condition). At
9413	// least one of `intent` or `condition` must be specified. When both
9414	// `intent` and `condition` are specified, the transition can only
9415	// happen when both are fulfilled.
9416	Condition string `json:"condition,omitempty"`
9417
9418	// Intent: The unique identifier of an Intent. Format:
9419	// `projects//locations//agents//intents/`. Indicates that the
9420	// transition can only happen when the given intent is matched. At least
9421	// one of `intent` or `condition` must be specified. When both `intent`
9422	// and `condition` are specified, the transition can only happen when
9423	// both are fulfilled.
9424	Intent string `json:"intent,omitempty"`
9425
9426	// Name: Output only. The unique identifier of this transition route.
9427	Name string `json:"name,omitempty"`
9428
9429	// TargetFlow: The target flow to transition to. Format:
9430	// `projects//locations//agents//flows/`.
9431	TargetFlow string `json:"targetFlow,omitempty"`
9432
9433	// TargetPage: The target page to transition to. Format:
9434	// `projects//locations//agents//flows//pages/`.
9435	TargetPage string `json:"targetPage,omitempty"`
9436
9437	// TriggerFulfillment: The fulfillment to call when the condition is
9438	// satisfied. At least one of `trigger_fulfillment` and `target` must be
9439	// specified. When both are defined, `trigger_fulfillment` is executed
9440	// first.
9441	TriggerFulfillment *GoogleCloudDialogflowCxV3beta1Fulfillment `json:"triggerFulfillment,omitempty"`
9442
9443	// ForceSendFields is a list of field names (e.g. "Condition") to
9444	// unconditionally include in API requests. By default, fields with
9445	// empty or default values are omitted from API requests. However, any
9446	// non-pointer, non-interface field appearing in ForceSendFields will be
9447	// sent to the server regardless of whether the field is empty or not.
9448	// This may be used to include empty fields in Patch requests.
9449	ForceSendFields []string `json:"-"`
9450
9451	// NullFields is a list of field names (e.g. "Condition") to include in
9452	// API requests with the JSON null value. By default, fields with empty
9453	// values are omitted from API requests. However, any field with an
9454	// empty value appearing in NullFields will be sent to the server as
9455	// null. It is an error if a field in this list has a non-empty value.
9456	// This may be used to include null fields in Patch requests.
9457	NullFields []string `json:"-"`
9458}
9459
9460func (s *GoogleCloudDialogflowCxV3beta1TransitionRoute) MarshalJSON() ([]byte, error) {
9461	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRoute
9462	raw := NoMethod(*s)
9463	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9464}
9465
9466// GoogleCloudDialogflowCxV3beta1TransitionRouteGroup: An
9467// TransitionRouteGroup represents a group of `TransitionRoutes` to be
9468// used by a Page.
9469type GoogleCloudDialogflowCxV3beta1TransitionRouteGroup struct {
9470	// DisplayName: Required. The human-readable name of the transition
9471	// route group, unique within the Agent. The display name can be no
9472	// longer than 30 characters.
9473	DisplayName string `json:"displayName,omitempty"`
9474
9475	// Name: The unique identifier of the transition route group.
9476	// TransitionRouteGroups.CreateTransitionRouteGroup populates the name
9477	// automatically. Format:
9478	// `projects//locations//agents//flows//transitionRouteGroups/`.
9479	Name string `json:"name,omitempty"`
9480
9481	// TransitionRoutes: Transition routes associated with the
9482	// TransitionRouteGroup.
9483	TransitionRoutes []*GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoutes,omitempty"`
9484
9485	// ServerResponse contains the HTTP response code and headers from the
9486	// server.
9487	googleapi.ServerResponse `json:"-"`
9488
9489	// ForceSendFields is a list of field names (e.g. "DisplayName") to
9490	// unconditionally include in API requests. By default, fields with
9491	// empty or default values are omitted from API requests. However, any
9492	// non-pointer, non-interface field appearing in ForceSendFields will be
9493	// sent to the server regardless of whether the field is empty or not.
9494	// This may be used to include empty fields in Patch requests.
9495	ForceSendFields []string `json:"-"`
9496
9497	// NullFields is a list of field names (e.g. "DisplayName") to include
9498	// in API requests with the JSON null value. By default, fields with
9499	// empty values are omitted from API requests. However, any field with
9500	// an empty value appearing in NullFields will be sent to the server as
9501	// null. It is an error if a field in this list has a non-empty value.
9502	// This may be used to include null fields in Patch requests.
9503	NullFields []string `json:"-"`
9504}
9505
9506func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup) MarshalJSON() ([]byte, error) {
9507	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroup
9508	raw := NoMethod(*s)
9509	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9510}
9511
9512// GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage:
9513// Transition route group coverage represents the percentage of all
9514// possible transition routes present within any of a parent's test
9515// cases. The results are grouped by the transition route group.
9516type GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage struct {
9517	// CoverageScore: The percent of transition routes in all the transition
9518	// route groups that are covered.
9519	CoverageScore float64 `json:"coverageScore,omitempty"`
9520
9521	// Coverages: Transition route group coverages.
9522	Coverages []*GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage `json:"coverages,omitempty"`
9523
9524	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
9525	// unconditionally include in API requests. By default, fields with
9526	// empty or default values are omitted from API requests. However, any
9527	// non-pointer, non-interface field appearing in ForceSendFields will be
9528	// sent to the server regardless of whether the field is empty or not.
9529	// This may be used to include empty fields in Patch requests.
9530	ForceSendFields []string `json:"-"`
9531
9532	// NullFields is a list of field names (e.g. "CoverageScore") to include
9533	// in API requests with the JSON null value. By default, fields with
9534	// empty values are omitted from API requests. However, any field with
9535	// an empty value appearing in NullFields will be sent to the server as
9536	// null. It is an error if a field in this list has a non-empty value.
9537	// This may be used to include null fields in Patch requests.
9538	NullFields []string `json:"-"`
9539}
9540
9541func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage) MarshalJSON() ([]byte, error) {
9542	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage
9543	raw := NoMethod(*s)
9544	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9545}
9546
9547func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage) UnmarshalJSON(data []byte) error {
9548	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverage
9549	var s1 struct {
9550		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
9551		*NoMethod
9552	}
9553	s1.NoMethod = (*NoMethod)(s)
9554	if err := json.Unmarshal(data, &s1); err != nil {
9555		return err
9556	}
9557	s.CoverageScore = float64(s1.CoverageScore)
9558	return nil
9559}
9560
9561// GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage:
9562// Coverage result message for one transition route group.
9563type GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage struct {
9564	// CoverageScore: The percent of transition routes in the transition
9565	// route group that are covered.
9566	CoverageScore float64 `json:"coverageScore,omitempty"`
9567
9568	// RouteGroup: Transition route group metadata. Only name and
9569	// displayName will be set.
9570	RouteGroup *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup `json:"routeGroup,omitempty"`
9571
9572	// Transitions: The list of transition routes and coverage in the
9573	// transition route group.
9574	Transitions []*GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverageTransition `json:"transitions,omitempty"`
9575
9576	// ForceSendFields is a list of field names (e.g. "CoverageScore") to
9577	// unconditionally include in API requests. By default, fields with
9578	// empty or default values are omitted from API requests. However, any
9579	// non-pointer, non-interface field appearing in ForceSendFields will be
9580	// sent to the server regardless of whether the field is empty or not.
9581	// This may be used to include empty fields in Patch requests.
9582	ForceSendFields []string `json:"-"`
9583
9584	// NullFields is a list of field names (e.g. "CoverageScore") to include
9585	// in API requests with the JSON null value. By default, fields with
9586	// empty values are omitted from API requests. However, any field with
9587	// an empty value appearing in NullFields will be sent to the server as
9588	// null. It is an error if a field in this list has a non-empty value.
9589	// This may be used to include null fields in Patch requests.
9590	NullFields []string `json:"-"`
9591}
9592
9593func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage) MarshalJSON() ([]byte, error) {
9594	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage
9595	raw := NoMethod(*s)
9596	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9597}
9598
9599func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage) UnmarshalJSON(data []byte) error {
9600	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverage
9601	var s1 struct {
9602		CoverageScore gensupport.JSONFloat64 `json:"coverageScore"`
9603		*NoMethod
9604	}
9605	s1.NoMethod = (*NoMethod)(s)
9606	if err := json.Unmarshal(data, &s1); err != nil {
9607		return err
9608	}
9609	s.CoverageScore = float64(s1.CoverageScore)
9610	return nil
9611}
9612
9613// GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverageTran
9614// sition: A transition coverage in a transition route group.
9615type GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverageTransition struct {
9616	// Covered: Whether or not the transition route is covered by at least
9617	// one of the agent's test cases.
9618	Covered bool `json:"covered,omitempty"`
9619
9620	// TransitionRoute: Intent route or condition route.
9621	TransitionRoute *GoogleCloudDialogflowCxV3beta1TransitionRoute `json:"transitionRoute,omitempty"`
9622
9623	// ForceSendFields is a list of field names (e.g. "Covered") to
9624	// unconditionally include in API requests. By default, fields with
9625	// empty or default values are omitted from API requests. However, any
9626	// non-pointer, non-interface field appearing in ForceSendFields will be
9627	// sent to the server regardless of whether the field is empty or not.
9628	// This may be used to include empty fields in Patch requests.
9629	ForceSendFields []string `json:"-"`
9630
9631	// NullFields is a list of field names (e.g. "Covered") to include in
9632	// API requests with the JSON null value. By default, fields with empty
9633	// values are omitted from API requests. However, any field with an
9634	// empty value appearing in NullFields will be sent to the server as
9635	// null. It is an error if a field in this list has a non-empty value.
9636	// This may be used to include null fields in Patch requests.
9637	NullFields []string `json:"-"`
9638}
9639
9640func (s *GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverageTransition) MarshalJSON() ([]byte, error) {
9641	type NoMethod GoogleCloudDialogflowCxV3beta1TransitionRouteGroupCoverageCoverageTransition
9642	raw := NoMethod(*s)
9643	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9644}
9645
9646// GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata:
9647// Metadata for UpdateDocument operation.
9648type GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata struct {
9649	// GenericMetadata: The generic information of the operation.
9650	GenericMetadata *GoogleCloudDialogflowCxV3beta1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
9651
9652	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
9653	// unconditionally include in API requests. By default, fields with
9654	// empty or default values are omitted from API requests. However, any
9655	// non-pointer, non-interface field appearing in ForceSendFields will be
9656	// sent to the server regardless of whether the field is empty or not.
9657	// This may be used to include empty fields in Patch requests.
9658	ForceSendFields []string `json:"-"`
9659
9660	// NullFields is a list of field names (e.g. "GenericMetadata") to
9661	// include in API requests with the JSON null value. By default, fields
9662	// with empty values are omitted from API requests. However, any field
9663	// with an empty value appearing in NullFields will be sent to the
9664	// server as null. It is an error if a field in this list has a
9665	// non-empty value. This may be used to include null fields in Patch
9666	// requests.
9667	NullFields []string `json:"-"`
9668}
9669
9670func (s *GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
9671	type NoMethod GoogleCloudDialogflowCxV3beta1UpdateDocumentOperationMetadata
9672	raw := NoMethod(*s)
9673	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9674}
9675
9676// GoogleCloudDialogflowCxV3beta1ValidateAgentRequest: The request
9677// message for Agents.ValidateAgent.
9678type GoogleCloudDialogflowCxV3beta1ValidateAgentRequest struct {
9679	// LanguageCode: If not specified, the agent's default language is used.
9680	LanguageCode string `json:"languageCode,omitempty"`
9681
9682	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
9683	// unconditionally include in API requests. By default, fields with
9684	// empty or default values are omitted from API requests. However, any
9685	// non-pointer, non-interface field appearing in ForceSendFields will be
9686	// sent to the server regardless of whether the field is empty or not.
9687	// This may be used to include empty fields in Patch requests.
9688	ForceSendFields []string `json:"-"`
9689
9690	// NullFields is a list of field names (e.g. "LanguageCode") to include
9691	// in API requests with the JSON null value. By default, fields with
9692	// empty values are omitted from API requests. However, any field with
9693	// an empty value appearing in NullFields will be sent to the server as
9694	// null. It is an error if a field in this list has a non-empty value.
9695	// This may be used to include null fields in Patch requests.
9696	NullFields []string `json:"-"`
9697}
9698
9699func (s *GoogleCloudDialogflowCxV3beta1ValidateAgentRequest) MarshalJSON() ([]byte, error) {
9700	type NoMethod GoogleCloudDialogflowCxV3beta1ValidateAgentRequest
9701	raw := NoMethod(*s)
9702	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9703}
9704
9705// GoogleCloudDialogflowCxV3beta1ValidateFlowRequest: The request
9706// message for Flows.ValidateFlow.
9707type GoogleCloudDialogflowCxV3beta1ValidateFlowRequest struct {
9708	// LanguageCode: If not specified, the agent's default language is used.
9709	LanguageCode string `json:"languageCode,omitempty"`
9710
9711	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
9712	// unconditionally include in API requests. By default, fields with
9713	// empty or default values are omitted from API requests. However, any
9714	// non-pointer, non-interface field appearing in ForceSendFields will be
9715	// sent to the server regardless of whether the field is empty or not.
9716	// This may be used to include empty fields in Patch requests.
9717	ForceSendFields []string `json:"-"`
9718
9719	// NullFields is a list of field names (e.g. "LanguageCode") to include
9720	// in API requests with the JSON null value. By default, fields with
9721	// empty values are omitted from API requests. However, any field with
9722	// an empty value appearing in NullFields will be sent to the server as
9723	// null. It is an error if a field in this list has a non-empty value.
9724	// This may be used to include null fields in Patch requests.
9725	NullFields []string `json:"-"`
9726}
9727
9728func (s *GoogleCloudDialogflowCxV3beta1ValidateFlowRequest) MarshalJSON() ([]byte, error) {
9729	type NoMethod GoogleCloudDialogflowCxV3beta1ValidateFlowRequest
9730	raw := NoMethod(*s)
9731	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9732}
9733
9734// GoogleCloudDialogflowCxV3beta1ValidationMessage: Agent/flow
9735// validation message.
9736type GoogleCloudDialogflowCxV3beta1ValidationMessage struct {
9737	// Detail: The message detail.
9738	Detail string `json:"detail,omitempty"`
9739
9740	// ResourceNames: The resource names of the resources where the message
9741	// is found.
9742	ResourceNames []*GoogleCloudDialogflowCxV3beta1ResourceName `json:"resourceNames,omitempty"`
9743
9744	// ResourceType: The type of the resources where the message is found.
9745	//
9746	// Possible values:
9747	//   "RESOURCE_TYPE_UNSPECIFIED" - Unspecified.
9748	//   "AGENT" - Agent.
9749	//   "INTENT" - Intent.
9750	//   "INTENT_TRAINING_PHRASE" - Intent training phrase.
9751	//   "INTENT_PARAMETER" - Intent parameter.
9752	//   "INTENTS" - Multiple intents.
9753	//   "INTENT_TRAINING_PHRASES" - Multiple training phrases.
9754	//   "ENTITY_TYPE" - Entity type.
9755	//   "ENTITY_TYPES" - Multiple entity types.
9756	//   "WEBHOOK" - Webhook.
9757	//   "FLOW" - Flow.
9758	//   "PAGE" - Page.
9759	//   "PAGES" - Multiple pages.
9760	//   "TRANSITION_ROUTE_GROUP" - Transition route group.
9761	ResourceType string `json:"resourceType,omitempty"`
9762
9763	// Resources: The names of the resources where the message is found.
9764	Resources []string `json:"resources,omitempty"`
9765
9766	// Severity: Indicates the severity of the message.
9767	//
9768	// Possible values:
9769	//   "SEVERITY_UNSPECIFIED" - Unspecified.
9770	//   "INFO" - The agent doesn't follow Dialogflow best practices.
9771	//   "WARNING" - The agent may not behave as expected.
9772	//   "ERROR" - The agent may experience failures.
9773	Severity string `json:"severity,omitempty"`
9774
9775	// ForceSendFields is a list of field names (e.g. "Detail") to
9776	// unconditionally include in API requests. By default, fields with
9777	// empty or default values are omitted from API requests. However, any
9778	// non-pointer, non-interface field appearing in ForceSendFields will be
9779	// sent to the server regardless of whether the field is empty or not.
9780	// This may be used to include empty fields in Patch requests.
9781	ForceSendFields []string `json:"-"`
9782
9783	// NullFields is a list of field names (e.g. "Detail") to include in API
9784	// requests with the JSON null value. By default, fields with empty
9785	// values are omitted from API requests. However, any field with an
9786	// empty value appearing in NullFields will be sent to the server as
9787	// null. It is an error if a field in this list has a non-empty value.
9788	// This may be used to include null fields in Patch requests.
9789	NullFields []string `json:"-"`
9790}
9791
9792func (s *GoogleCloudDialogflowCxV3beta1ValidationMessage) MarshalJSON() ([]byte, error) {
9793	type NoMethod GoogleCloudDialogflowCxV3beta1ValidationMessage
9794	raw := NoMethod(*s)
9795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9796}
9797
9798// GoogleCloudDialogflowCxV3beta1VariantsHistory: The history of
9799// variants update.
9800type GoogleCloudDialogflowCxV3beta1VariantsHistory struct {
9801	// UpdateTime: Update time of the variants.
9802	UpdateTime string `json:"updateTime,omitempty"`
9803
9804	// VersionVariants: The flow versions as the variants.
9805	VersionVariants *GoogleCloudDialogflowCxV3beta1VersionVariants `json:"versionVariants,omitempty"`
9806
9807	// ForceSendFields is a list of field names (e.g. "UpdateTime") to
9808	// unconditionally include in API requests. By default, fields with
9809	// empty or default values are omitted from API requests. However, any
9810	// non-pointer, non-interface field appearing in ForceSendFields will be
9811	// sent to the server regardless of whether the field is empty or not.
9812	// This may be used to include empty fields in Patch requests.
9813	ForceSendFields []string `json:"-"`
9814
9815	// NullFields is a list of field names (e.g. "UpdateTime") to include in
9816	// API requests with the JSON null value. By default, fields with empty
9817	// values are omitted from API requests. However, any field with an
9818	// empty value appearing in NullFields will be sent to the server as
9819	// null. It is an error if a field in this list has a non-empty value.
9820	// This may be used to include null fields in Patch requests.
9821	NullFields []string `json:"-"`
9822}
9823
9824func (s *GoogleCloudDialogflowCxV3beta1VariantsHistory) MarshalJSON() ([]byte, error) {
9825	type NoMethod GoogleCloudDialogflowCxV3beta1VariantsHistory
9826	raw := NoMethod(*s)
9827	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9828}
9829
9830// GoogleCloudDialogflowCxV3beta1Version: Represents a version of a
9831// flow.
9832type GoogleCloudDialogflowCxV3beta1Version struct {
9833	// CreateTime: Output only. Create time of the version.
9834	CreateTime string `json:"createTime,omitempty"`
9835
9836	// Description: The description of the version. The maximum length is
9837	// 500 characters. If exceeded, the request is rejected.
9838	Description string `json:"description,omitempty"`
9839
9840	// DisplayName: Required. The human-readable name of the version. Limit
9841	// of 64 characters.
9842	DisplayName string `json:"displayName,omitempty"`
9843
9844	// Name: Format: projects//locations//agents//flows//versions/. Version
9845	// ID is a self-increasing number generated by Dialogflow upon version
9846	// creation.
9847	Name string `json:"name,omitempty"`
9848
9849	// NluSettings: Output only. The NLU settings of the flow at version
9850	// creation.
9851	NluSettings *GoogleCloudDialogflowCxV3beta1NluSettings `json:"nluSettings,omitempty"`
9852
9853	// State: Output only. The state of this version. This field is
9854	// read-only and cannot be set by create and update methods.
9855	//
9856	// Possible values:
9857	//   "STATE_UNSPECIFIED" - Not specified. This value is not used.
9858	//   "RUNNING" - Version is not ready to serve (e.g. training is
9859	// running).
9860	//   "SUCCEEDED" - Training has succeeded and this version is ready to
9861	// serve.
9862	//   "FAILED" - Version training failed.
9863	State string `json:"state,omitempty"`
9864
9865	// ServerResponse contains the HTTP response code and headers from the
9866	// server.
9867	googleapi.ServerResponse `json:"-"`
9868
9869	// ForceSendFields is a list of field names (e.g. "CreateTime") to
9870	// unconditionally include in API requests. By default, fields with
9871	// empty or default values are omitted from API requests. However, any
9872	// non-pointer, non-interface field appearing in ForceSendFields will be
9873	// sent to the server regardless of whether the field is empty or not.
9874	// This may be used to include empty fields in Patch requests.
9875	ForceSendFields []string `json:"-"`
9876
9877	// NullFields is a list of field names (e.g. "CreateTime") to include in
9878	// API requests with the JSON null value. By default, fields with empty
9879	// values are omitted from API requests. However, any field with an
9880	// empty value appearing in NullFields will be sent to the server as
9881	// null. It is an error if a field in this list has a non-empty value.
9882	// This may be used to include null fields in Patch requests.
9883	NullFields []string `json:"-"`
9884}
9885
9886func (s *GoogleCloudDialogflowCxV3beta1Version) MarshalJSON() ([]byte, error) {
9887	type NoMethod GoogleCloudDialogflowCxV3beta1Version
9888	raw := NoMethod(*s)
9889	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9890}
9891
9892// GoogleCloudDialogflowCxV3beta1VersionVariants: A list of flow version
9893// variants.
9894type GoogleCloudDialogflowCxV3beta1VersionVariants struct {
9895	// Variants: A list of flow version variants.
9896	Variants []*GoogleCloudDialogflowCxV3beta1VersionVariantsVariant `json:"variants,omitempty"`
9897
9898	// ForceSendFields is a list of field names (e.g. "Variants") to
9899	// unconditionally include in API requests. By default, fields with
9900	// empty or default values are omitted from API requests. However, any
9901	// non-pointer, non-interface field appearing in ForceSendFields will be
9902	// sent to the server regardless of whether the field is empty or not.
9903	// This may be used to include empty fields in Patch requests.
9904	ForceSendFields []string `json:"-"`
9905
9906	// NullFields is a list of field names (e.g. "Variants") to include in
9907	// API requests with the JSON null value. By default, fields with empty
9908	// values are omitted from API requests. However, any field with an
9909	// empty value appearing in NullFields will be sent to the server as
9910	// null. It is an error if a field in this list has a non-empty value.
9911	// This may be used to include null fields in Patch requests.
9912	NullFields []string `json:"-"`
9913}
9914
9915func (s *GoogleCloudDialogflowCxV3beta1VersionVariants) MarshalJSON() ([]byte, error) {
9916	type NoMethod GoogleCloudDialogflowCxV3beta1VersionVariants
9917	raw := NoMethod(*s)
9918	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9919}
9920
9921// GoogleCloudDialogflowCxV3beta1VersionVariantsVariant: A single flow
9922// version with specified traffic allocation.
9923type GoogleCloudDialogflowCxV3beta1VersionVariantsVariant struct {
9924	// IsControlGroup: Whether the variant is for the control group.
9925	IsControlGroup bool `json:"isControlGroup,omitempty"`
9926
9927	// TrafficAllocation: Percentage of the traffic which should be routed
9928	// to this version of flow. Traffic allocation for a single flow must
9929	// sum up to 1.0.
9930	TrafficAllocation float64 `json:"trafficAllocation,omitempty"`
9931
9932	// Version: The name of the flow version. Format:
9933	// `projects//locations//agents//flows//versions/`.
9934	Version string `json:"version,omitempty"`
9935
9936	// ForceSendFields is a list of field names (e.g. "IsControlGroup") to
9937	// unconditionally include in API requests. By default, fields with
9938	// empty or default values are omitted from API requests. However, any
9939	// non-pointer, non-interface field appearing in ForceSendFields will be
9940	// sent to the server regardless of whether the field is empty or not.
9941	// This may be used to include empty fields in Patch requests.
9942	ForceSendFields []string `json:"-"`
9943
9944	// NullFields is a list of field names (e.g. "IsControlGroup") to
9945	// include in API requests with the JSON null value. By default, fields
9946	// with empty values are omitted from API requests. However, any field
9947	// with an empty value appearing in NullFields will be sent to the
9948	// server as null. It is an error if a field in this list has a
9949	// non-empty value. This may be used to include null fields in Patch
9950	// requests.
9951	NullFields []string `json:"-"`
9952}
9953
9954func (s *GoogleCloudDialogflowCxV3beta1VersionVariantsVariant) MarshalJSON() ([]byte, error) {
9955	type NoMethod GoogleCloudDialogflowCxV3beta1VersionVariantsVariant
9956	raw := NoMethod(*s)
9957	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
9958}
9959
9960func (s *GoogleCloudDialogflowCxV3beta1VersionVariantsVariant) UnmarshalJSON(data []byte) error {
9961	type NoMethod GoogleCloudDialogflowCxV3beta1VersionVariantsVariant
9962	var s1 struct {
9963		TrafficAllocation gensupport.JSONFloat64 `json:"trafficAllocation"`
9964		*NoMethod
9965	}
9966	s1.NoMethod = (*NoMethod)(s)
9967	if err := json.Unmarshal(data, &s1); err != nil {
9968		return err
9969	}
9970	s.TrafficAllocation = float64(s1.TrafficAllocation)
9971	return nil
9972}
9973
9974// GoogleCloudDialogflowCxV3beta1VoiceSelectionParams: Description of
9975// which voice to use for speech synthesis.
9976type GoogleCloudDialogflowCxV3beta1VoiceSelectionParams struct {
9977	// Name: Optional. The name of the voice. If not set, the service will
9978	// choose a voice based on the other parameters such as language_code
9979	// and ssml_gender. For the list of available voices, please refer to
9980	// Supported voices and languages
9981	// (https://cloud.google.com/text-to-speech/docs/voices).
9982	Name string `json:"name,omitempty"`
9983
9984	// SsmlGender: Optional. The preferred gender of the voice. If not set,
9985	// the service will choose a voice based on the other parameters such as
9986	// language_code and name. Note that this is only a preference, not
9987	// requirement. If a voice of the appropriate gender is not available,
9988	// the synthesizer should substitute a voice with a different gender
9989	// rather than failing the request.
9990	//
9991	// Possible values:
9992	//   "SSML_VOICE_GENDER_UNSPECIFIED" - An unspecified gender, which
9993	// means that the client doesn't care which gender the selected voice
9994	// will have.
9995	//   "SSML_VOICE_GENDER_MALE" - A male voice.
9996	//   "SSML_VOICE_GENDER_FEMALE" - A female voice.
9997	//   "SSML_VOICE_GENDER_NEUTRAL" - A gender-neutral voice.
9998	SsmlGender string `json:"ssmlGender,omitempty"`
9999
10000	// ForceSendFields is a list of field names (e.g. "Name") to
10001	// unconditionally include in API requests. By default, fields with
10002	// empty or default values are omitted from API requests. However, any
10003	// non-pointer, non-interface field appearing in ForceSendFields will be
10004	// sent to the server regardless of whether the field is empty or not.
10005	// This may be used to include empty fields in Patch requests.
10006	ForceSendFields []string `json:"-"`
10007
10008	// NullFields is a list of field names (e.g. "Name") to include in API
10009	// requests with the JSON null value. By default, fields with empty
10010	// values are omitted from API requests. However, any field with an
10011	// empty value appearing in NullFields will be sent to the server as
10012	// null. It is an error if a field in this list has a non-empty value.
10013	// This may be used to include null fields in Patch requests.
10014	NullFields []string `json:"-"`
10015}
10016
10017func (s *GoogleCloudDialogflowCxV3beta1VoiceSelectionParams) MarshalJSON() ([]byte, error) {
10018	type NoMethod GoogleCloudDialogflowCxV3beta1VoiceSelectionParams
10019	raw := NoMethod(*s)
10020	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10021}
10022
10023// GoogleCloudDialogflowCxV3beta1Webhook: Webhooks host the developer's
10024// business logic. During a session, webhooks allow the developer to use
10025// the data extracted by Dialogflow's natural language processing to
10026// generate dynamic responses, validate collected data, or trigger
10027// actions on the backend.
10028type GoogleCloudDialogflowCxV3beta1Webhook struct {
10029	// Disabled: Indicates whether the webhook is disabled.
10030	Disabled bool `json:"disabled,omitempty"`
10031
10032	// DisplayName: Required. The human-readable name of the webhook, unique
10033	// within the agent.
10034	DisplayName string `json:"displayName,omitempty"`
10035
10036	// GenericWebService: Configuration for a generic web service.
10037	GenericWebService *GoogleCloudDialogflowCxV3beta1WebhookGenericWebService `json:"genericWebService,omitempty"`
10038
10039	// Name: The unique identifier of the webhook. Required for the
10040	// Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
10041	// name automatically. Format: `projects//locations//agents//webhooks/`.
10042	Name string `json:"name,omitempty"`
10043
10044	// ServiceDirectory: Configuration for a Service Directory
10045	// (https://cloud.google.com/service-directory) service.
10046	ServiceDirectory *GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig `json:"serviceDirectory,omitempty"`
10047
10048	// Timeout: Webhook execution timeout. Execution is considered failed if
10049	// Dialogflow doesn't receive a response from webhook at the end of the
10050	// timeout period. Defaults to 5 seconds, maximum allowed timeout is 30
10051	// seconds.
10052	Timeout string `json:"timeout,omitempty"`
10053
10054	// ServerResponse contains the HTTP response code and headers from the
10055	// server.
10056	googleapi.ServerResponse `json:"-"`
10057
10058	// ForceSendFields is a list of field names (e.g. "Disabled") to
10059	// unconditionally include in API requests. By default, fields with
10060	// empty or default values are omitted from API requests. However, any
10061	// non-pointer, non-interface field appearing in ForceSendFields will be
10062	// sent to the server regardless of whether the field is empty or not.
10063	// This may be used to include empty fields in Patch requests.
10064	ForceSendFields []string `json:"-"`
10065
10066	// NullFields is a list of field names (e.g. "Disabled") to include in
10067	// API requests with the JSON null value. By default, fields with empty
10068	// values are omitted from API requests. However, any field with an
10069	// empty value appearing in NullFields will be sent to the server as
10070	// null. It is an error if a field in this list has a non-empty value.
10071	// This may be used to include null fields in Patch requests.
10072	NullFields []string `json:"-"`
10073}
10074
10075func (s *GoogleCloudDialogflowCxV3beta1Webhook) MarshalJSON() ([]byte, error) {
10076	type NoMethod GoogleCloudDialogflowCxV3beta1Webhook
10077	raw := NoMethod(*s)
10078	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10079}
10080
10081// GoogleCloudDialogflowCxV3beta1WebhookGenericWebService: Represents
10082// configuration for a generic web service.
10083type GoogleCloudDialogflowCxV3beta1WebhookGenericWebService struct {
10084	// Password: The password for HTTP Basic authentication.
10085	Password string `json:"password,omitempty"`
10086
10087	// RequestHeaders: The HTTP request headers to send together with
10088	// webhook requests.
10089	RequestHeaders map[string]string `json:"requestHeaders,omitempty"`
10090
10091	// Uri: Required. The webhook URI for receiving POST requests. It must
10092	// use https protocol.
10093	Uri string `json:"uri,omitempty"`
10094
10095	// Username: The user name for HTTP Basic authentication.
10096	Username string `json:"username,omitempty"`
10097
10098	// ForceSendFields is a list of field names (e.g. "Password") to
10099	// unconditionally include in API requests. By default, fields with
10100	// empty or default values are omitted from API requests. However, any
10101	// non-pointer, non-interface field appearing in ForceSendFields will be
10102	// sent to the server regardless of whether the field is empty or not.
10103	// This may be used to include empty fields in Patch requests.
10104	ForceSendFields []string `json:"-"`
10105
10106	// NullFields is a list of field names (e.g. "Password") to include in
10107	// API requests with the JSON null value. By default, fields with empty
10108	// values are omitted from API requests. However, any field with an
10109	// empty value appearing in NullFields will be sent to the server as
10110	// null. It is an error if a field in this list has a non-empty value.
10111	// This may be used to include null fields in Patch requests.
10112	NullFields []string `json:"-"`
10113}
10114
10115func (s *GoogleCloudDialogflowCxV3beta1WebhookGenericWebService) MarshalJSON() ([]byte, error) {
10116	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookGenericWebService
10117	raw := NoMethod(*s)
10118	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10119}
10120
10121// GoogleCloudDialogflowCxV3beta1WebhookRequest: The request message for
10122// a webhook call. The request is sent as a JSON object and the field
10123// names will be presented in camel cases.
10124type GoogleCloudDialogflowCxV3beta1WebhookRequest struct {
10125	// DetectIntentResponseId: Always present. The unique identifier of the
10126	// DetectIntentResponse that will be returned to the API caller.
10127	DetectIntentResponseId string `json:"detectIntentResponseId,omitempty"`
10128
10129	// FulfillmentInfo: Always present. Information about the fulfillment
10130	// that triggered this webhook call.
10131	FulfillmentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo `json:"fulfillmentInfo,omitempty"`
10132
10133	// IntentInfo: Information about the last matched intent.
10134	IntentInfo *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo `json:"intentInfo,omitempty"`
10135
10136	// LanguageCode: The language code specified in the original request.
10137	LanguageCode string `json:"languageCode,omitempty"`
10138
10139	// Messages: The list of rich message responses to present to the user.
10140	// Webhook can choose to append or replace this list in
10141	// WebhookResponse.fulfillment_response;
10142	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
10143
10144	// PageInfo: Information about page status.
10145	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
10146
10147	// Payload: Custom data set in QueryParameters.payload.
10148	Payload googleapi.RawMessage `json:"payload,omitempty"`
10149
10150	// SentimentAnalysisResult: The sentiment analysis result of the current
10151	// user request. The field is filled when sentiment analysis is
10152	// configured to be enabled for the request.
10153	SentimentAnalysisResult *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
10154
10155	// SessionInfo: Information about session status.
10156	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
10157
10158	// Text: If natural language text was provided as input, this field will
10159	// contain a copy of the text.
10160	Text string `json:"text,omitempty"`
10161
10162	// Transcript: If natural language speech audio was provided as input,
10163	// this field will contain the transcript for the audio.
10164	Transcript string `json:"transcript,omitempty"`
10165
10166	// TriggerEvent: If an event was provided as input, this field will
10167	// contain the name of the event.
10168	TriggerEvent string `json:"triggerEvent,omitempty"`
10169
10170	// TriggerIntent: If an intent was provided as input, this field will
10171	// contain a copy of the intent identifier. Format:
10172	// `projects//locations//agents//intents/`.
10173	TriggerIntent string `json:"triggerIntent,omitempty"`
10174
10175	// ForceSendFields is a list of field names (e.g.
10176	// "DetectIntentResponseId") to unconditionally include in API requests.
10177	// By default, fields with empty or default values are omitted from API
10178	// requests. However, any non-pointer, non-interface field appearing in
10179	// ForceSendFields will be sent to the server regardless of whether the
10180	// field is empty or not. This may be used to include empty fields in
10181	// Patch requests.
10182	ForceSendFields []string `json:"-"`
10183
10184	// NullFields is a list of field names (e.g. "DetectIntentResponseId")
10185	// to include in API requests with the JSON null value. By default,
10186	// fields with empty values are omitted from API requests. However, any
10187	// field with an empty value appearing in NullFields will be sent to the
10188	// server as null. It is an error if a field in this list has a
10189	// non-empty value. This may be used to include null fields in Patch
10190	// requests.
10191	NullFields []string `json:"-"`
10192}
10193
10194func (s *GoogleCloudDialogflowCxV3beta1WebhookRequest) MarshalJSON() ([]byte, error) {
10195	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequest
10196	raw := NoMethod(*s)
10197	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10198}
10199
10200// GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo:
10201// Represents fulfillment information communicated to the webhook.
10202type GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo struct {
10203	// Tag: Always present. The tag used to identify which fulfillment is
10204	// being called.
10205	Tag string `json:"tag,omitempty"`
10206
10207	// ForceSendFields is a list of field names (e.g. "Tag") to
10208	// unconditionally include in API requests. By default, fields with
10209	// empty or default values are omitted from API requests. However, any
10210	// non-pointer, non-interface field appearing in ForceSendFields will be
10211	// sent to the server regardless of whether the field is empty or not.
10212	// This may be used to include empty fields in Patch requests.
10213	ForceSendFields []string `json:"-"`
10214
10215	// NullFields is a list of field names (e.g. "Tag") to include in API
10216	// requests with the JSON null value. By default, fields with empty
10217	// values are omitted from API requests. However, any field with an
10218	// empty value appearing in NullFields will be sent to the server as
10219	// null. It is an error if a field in this list has a non-empty value.
10220	// This may be used to include null fields in Patch requests.
10221	NullFields []string `json:"-"`
10222}
10223
10224func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo) MarshalJSON() ([]byte, error) {
10225	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestFulfillmentInfo
10226	raw := NoMethod(*s)
10227	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10228}
10229
10230// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo: Represents
10231// intent information communicated to the webhook.
10232type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo struct {
10233	// Confidence: The confidence of the matched intent. Values range from
10234	// 0.0 (completely uncertain) to 1.0 (completely certain).
10235	Confidence float64 `json:"confidence,omitempty"`
10236
10237	// DisplayName: Always present. The display name of the last matched
10238	// intent.
10239	DisplayName string `json:"displayName,omitempty"`
10240
10241	// LastMatchedIntent: Always present. The unique identifier of the last
10242	// matched intent. Format: `projects//locations//agents//intents/`.
10243	LastMatchedIntent string `json:"lastMatchedIntent,omitempty"`
10244
10245	// Parameters: Parameters identified as a result of intent matching.
10246	// This is a map of the name of the identified parameter to the value of
10247	// the parameter identified from the user's utterance. All parameters
10248	// defined in the matched intent that are identified will be surfaced
10249	// here.
10250	Parameters map[string]GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue `json:"parameters,omitempty"`
10251
10252	// ForceSendFields is a list of field names (e.g. "Confidence") to
10253	// unconditionally include in API requests. By default, fields with
10254	// empty or default values are omitted from API requests. However, any
10255	// non-pointer, non-interface field appearing in ForceSendFields will be
10256	// sent to the server regardless of whether the field is empty or not.
10257	// This may be used to include empty fields in Patch requests.
10258	ForceSendFields []string `json:"-"`
10259
10260	// NullFields is a list of field names (e.g. "Confidence") to include in
10261	// API requests with the JSON null value. By default, fields with empty
10262	// values are omitted from API requests. However, any field with an
10263	// empty value appearing in NullFields will be sent to the server as
10264	// null. It is an error if a field in this list has a non-empty value.
10265	// This may be used to include null fields in Patch requests.
10266	NullFields []string `json:"-"`
10267}
10268
10269func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) MarshalJSON() ([]byte, error) {
10270	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10271	raw := NoMethod(*s)
10272	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10273}
10274
10275func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo) UnmarshalJSON(data []byte) error {
10276	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfo
10277	var s1 struct {
10278		Confidence gensupport.JSONFloat64 `json:"confidence"`
10279		*NoMethod
10280	}
10281	s1.NoMethod = (*NoMethod)(s)
10282	if err := json.Unmarshal(data, &s1); err != nil {
10283		return err
10284	}
10285	s.Confidence = float64(s1.Confidence)
10286	return nil
10287}
10288
10289// GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterV
10290// alue: Represents a value for an intent parameter.
10291type GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue struct {
10292	// OriginalValue: Always present. Original text value extracted from
10293	// user utterance.
10294	OriginalValue string `json:"originalValue,omitempty"`
10295
10296	// ResolvedValue: Always present. Structured value for the parameter
10297	// extracted from user utterance.
10298	ResolvedValue interface{} `json:"resolvedValue,omitempty"`
10299
10300	// ForceSendFields is a list of field names (e.g. "OriginalValue") to
10301	// unconditionally include in API requests. By default, fields with
10302	// empty or default values are omitted from API requests. However, any
10303	// non-pointer, non-interface field appearing in ForceSendFields will be
10304	// sent to the server regardless of whether the field is empty or not.
10305	// This may be used to include empty fields in Patch requests.
10306	ForceSendFields []string `json:"-"`
10307
10308	// NullFields is a list of field names (e.g. "OriginalValue") to include
10309	// in API requests with the JSON null value. By default, fields with
10310	// empty values are omitted from API requests. However, any field with
10311	// an empty value appearing in NullFields will be sent to the server as
10312	// null. It is an error if a field in this list has a non-empty value.
10313	// This may be used to include null fields in Patch requests.
10314	NullFields []string `json:"-"`
10315}
10316
10317func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue) MarshalJSON() ([]byte, error) {
10318	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestIntentInfoIntentParameterValue
10319	raw := NoMethod(*s)
10320	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10321}
10322
10323// GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult:
10324// Represents the result of sentiment analysis.
10325type GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult struct {
10326	// Magnitude: A non-negative number in the [0, +inf) range, which
10327	// represents the absolute magnitude of sentiment, regardless of score
10328	// (positive or negative).
10329	Magnitude float64 `json:"magnitude,omitempty"`
10330
10331	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
10332	// (positive sentiment).
10333	Score float64 `json:"score,omitempty"`
10334
10335	// ForceSendFields is a list of field names (e.g. "Magnitude") to
10336	// unconditionally include in API requests. By default, fields with
10337	// empty or default values are omitted from API requests. However, any
10338	// non-pointer, non-interface field appearing in ForceSendFields will be
10339	// sent to the server regardless of whether the field is empty or not.
10340	// This may be used to include empty fields in Patch requests.
10341	ForceSendFields []string `json:"-"`
10342
10343	// NullFields is a list of field names (e.g. "Magnitude") to include in
10344	// API requests with the JSON null value. By default, fields with empty
10345	// values are omitted from API requests. However, any field with an
10346	// empty value appearing in NullFields will be sent to the server as
10347	// null. It is an error if a field in this list has a non-empty value.
10348	// This may be used to include null fields in Patch requests.
10349	NullFields []string `json:"-"`
10350}
10351
10352func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) MarshalJSON() ([]byte, error) {
10353	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10354	raw := NoMethod(*s)
10355	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10356}
10357
10358func (s *GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult) UnmarshalJSON(data []byte) error {
10359	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookRequestSentimentAnalysisResult
10360	var s1 struct {
10361		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
10362		Score     gensupport.JSONFloat64 `json:"score"`
10363		*NoMethod
10364	}
10365	s1.NoMethod = (*NoMethod)(s)
10366	if err := json.Unmarshal(data, &s1); err != nil {
10367		return err
10368	}
10369	s.Magnitude = float64(s1.Magnitude)
10370	s.Score = float64(s1.Score)
10371	return nil
10372}
10373
10374// GoogleCloudDialogflowCxV3beta1WebhookResponse: The response message
10375// for a webhook call.
10376type GoogleCloudDialogflowCxV3beta1WebhookResponse struct {
10377	// FulfillmentResponse: The fulfillment response to send to the user.
10378	// This field can be omitted by the webhook if it does not intend to
10379	// send any response to the user.
10380	FulfillmentResponse *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse `json:"fulfillmentResponse,omitempty"`
10381
10382	// PageInfo: Information about page status. This field can be omitted by
10383	// the webhook if it does not intend to modify page status.
10384	PageInfo *GoogleCloudDialogflowCxV3beta1PageInfo `json:"pageInfo,omitempty"`
10385
10386	// Payload: Value to append directly to QueryResult.webhook_payloads.
10387	Payload googleapi.RawMessage `json:"payload,omitempty"`
10388
10389	// SessionInfo: Information about session status. This field can be
10390	// omitted by the webhook if it does not intend to modify session
10391	// status.
10392	SessionInfo *GoogleCloudDialogflowCxV3beta1SessionInfo `json:"sessionInfo,omitempty"`
10393
10394	// TargetFlow: The target flow to transition to. Format:
10395	// `projects//locations//agents//flows/`.
10396	TargetFlow string `json:"targetFlow,omitempty"`
10397
10398	// TargetPage: The target page to transition to. Format:
10399	// `projects//locations//agents//flows//pages/`.
10400	TargetPage string `json:"targetPage,omitempty"`
10401
10402	// ForceSendFields is a list of field names (e.g. "FulfillmentResponse")
10403	// to unconditionally include in API requests. By default, fields with
10404	// empty or default values are omitted from API requests. However, any
10405	// non-pointer, non-interface field appearing in ForceSendFields will be
10406	// sent to the server regardless of whether the field is empty or not.
10407	// This may be used to include empty fields in Patch requests.
10408	ForceSendFields []string `json:"-"`
10409
10410	// NullFields is a list of field names (e.g. "FulfillmentResponse") to
10411	// include in API requests with the JSON null value. By default, fields
10412	// with empty values are omitted from API requests. However, any field
10413	// with an empty value appearing in NullFields will be sent to the
10414	// server as null. It is an error if a field in this list has a
10415	// non-empty value. This may be used to include null fields in Patch
10416	// requests.
10417	NullFields []string `json:"-"`
10418}
10419
10420func (s *GoogleCloudDialogflowCxV3beta1WebhookResponse) MarshalJSON() ([]byte, error) {
10421	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponse
10422	raw := NoMethod(*s)
10423	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10424}
10425
10426// GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse:
10427// Represents a fulfillment response to the user.
10428type GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse struct {
10429	// MergeBehavior: Merge behavior for `messages`.
10430	//
10431	// Possible values:
10432	//   "MERGE_BEHAVIOR_UNSPECIFIED" - Not specified. `APPEND` will be
10433	// used.
10434	//   "APPEND" - `messages` will be appended to the list of messages
10435	// waiting to be sent to the user.
10436	//   "REPLACE" - `messages` will replace the list of messages waiting to
10437	// be sent to the user.
10438	MergeBehavior string `json:"mergeBehavior,omitempty"`
10439
10440	// Messages: The list of rich message responses to present to the user.
10441	Messages []*GoogleCloudDialogflowCxV3beta1ResponseMessage `json:"messages,omitempty"`
10442
10443	// ForceSendFields is a list of field names (e.g. "MergeBehavior") to
10444	// unconditionally include in API requests. By default, fields with
10445	// empty or default values are omitted from API requests. However, any
10446	// non-pointer, non-interface field appearing in ForceSendFields will be
10447	// sent to the server regardless of whether the field is empty or not.
10448	// This may be used to include empty fields in Patch requests.
10449	ForceSendFields []string `json:"-"`
10450
10451	// NullFields is a list of field names (e.g. "MergeBehavior") to include
10452	// in API requests with the JSON null value. By default, fields with
10453	// empty values are omitted from API requests. However, any field with
10454	// an empty value appearing in NullFields will be sent to the server as
10455	// null. It is an error if a field in this list has a non-empty value.
10456	// This may be used to include null fields in Patch requests.
10457	NullFields []string `json:"-"`
10458}
10459
10460func (s *GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse) MarshalJSON() ([]byte, error) {
10461	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookResponseFulfillmentResponse
10462	raw := NoMethod(*s)
10463	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10464}
10465
10466// GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig:
10467// Represents configuration for a Service Directory
10468// (https://cloud.google.com/service-directory) service.
10469type GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig struct {
10470	// GenericWebService: Generic Service configuration of this webhook.
10471	GenericWebService *GoogleCloudDialogflowCxV3beta1WebhookGenericWebService `json:"genericWebService,omitempty"`
10472
10473	// Service: Required. The name of Service Directory
10474	// (https://cloud.google.com/service-directory) service. Format:
10475	// `projects//locations//namespaces//services/`. `Location ID` of the
10476	// service directory must be the same as the location of the agent.
10477	Service string `json:"service,omitempty"`
10478
10479	// ForceSendFields is a list of field names (e.g. "GenericWebService")
10480	// to unconditionally include in API requests. By default, fields with
10481	// empty or default values are omitted from API requests. However, any
10482	// non-pointer, non-interface field appearing in ForceSendFields will be
10483	// sent to the server regardless of whether the field is empty or not.
10484	// This may be used to include empty fields in Patch requests.
10485	ForceSendFields []string `json:"-"`
10486
10487	// NullFields is a list of field names (e.g. "GenericWebService") to
10488	// include in API requests with the JSON null value. By default, fields
10489	// with empty values are omitted from API requests. However, any field
10490	// with an empty value appearing in NullFields will be sent to the
10491	// server as null. It is an error if a field in this list has a
10492	// non-empty value. This may be used to include null fields in Patch
10493	// requests.
10494	NullFields []string `json:"-"`
10495}
10496
10497func (s *GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig) MarshalJSON() ([]byte, error) {
10498	type NoMethod GoogleCloudDialogflowCxV3beta1WebhookServiceDirectoryConfig
10499	raw := NoMethod(*s)
10500	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10501}
10502
10503// GoogleCloudDialogflowV2AnnotatedMessagePart: Represents a part of a
10504// message possibly annotated with an entity. The part can be an entity
10505// or purely a part of the message between two entities or message
10506// start/end.
10507type GoogleCloudDialogflowV2AnnotatedMessagePart struct {
10508	// EntityType: The Dialogflow system entity type
10509	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10510	// of this message part. If this is empty, Dialogflow could not annotate
10511	// the phrase part with a system entity.
10512	EntityType string `json:"entityType,omitempty"`
10513
10514	// FormattedValue: The Dialogflow system entity formatted value
10515	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
10516	// of this message part. For example for a system entity of type
10517	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
10518	// "USD" }
10519	FormattedValue interface{} `json:"formattedValue,omitempty"`
10520
10521	// Text: A part of a message possibly annotated with an entity.
10522	Text string `json:"text,omitempty"`
10523
10524	// ForceSendFields is a list of field names (e.g. "EntityType") to
10525	// unconditionally include in API requests. By default, fields with
10526	// empty or default values are omitted from API requests. However, any
10527	// non-pointer, non-interface field appearing in ForceSendFields will be
10528	// sent to the server regardless of whether the field is empty or not.
10529	// This may be used to include empty fields in Patch requests.
10530	ForceSendFields []string `json:"-"`
10531
10532	// NullFields is a list of field names (e.g. "EntityType") to include in
10533	// API requests with the JSON null value. By default, fields with empty
10534	// values are omitted from API requests. However, any field with an
10535	// empty value appearing in NullFields will be sent to the server as
10536	// null. It is an error if a field in this list has a non-empty value.
10537	// This may be used to include null fields in Patch requests.
10538	NullFields []string `json:"-"`
10539}
10540
10541func (s *GoogleCloudDialogflowV2AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
10542	type NoMethod GoogleCloudDialogflowV2AnnotatedMessagePart
10543	raw := NoMethod(*s)
10544	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10545}
10546
10547// GoogleCloudDialogflowV2ArticleAnswer: Represents article answer.
10548type GoogleCloudDialogflowV2ArticleAnswer struct {
10549	// AnswerRecord: The name of answer record, in the format of
10550	// "projects//locations//answerRecords/"
10551	AnswerRecord string `json:"answerRecord,omitempty"`
10552
10553	// Confidence: Article match confidence. The system's confidence score
10554	// that this article is a good match for this conversation, as a value
10555	// from 0.0 (completely uncertain) to 1.0 (completely certain).
10556	Confidence float64 `json:"confidence,omitempty"`
10557
10558	// Metadata: A map that contains metadata about the answer and the
10559	// document from which it originates.
10560	Metadata map[string]string `json:"metadata,omitempty"`
10561
10562	// Snippets: Article snippets.
10563	Snippets []string `json:"snippets,omitempty"`
10564
10565	// Title: The article title.
10566	Title string `json:"title,omitempty"`
10567
10568	// Uri: The article URI.
10569	Uri string `json:"uri,omitempty"`
10570
10571	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
10572	// unconditionally include in API requests. By default, fields with
10573	// empty or default values are omitted from API requests. However, any
10574	// non-pointer, non-interface field appearing in ForceSendFields will be
10575	// sent to the server regardless of whether the field is empty or not.
10576	// This may be used to include empty fields in Patch requests.
10577	ForceSendFields []string `json:"-"`
10578
10579	// NullFields is a list of field names (e.g. "AnswerRecord") to include
10580	// in API requests with the JSON null value. By default, fields with
10581	// empty values are omitted from API requests. However, any field with
10582	// an empty value appearing in NullFields will be sent to the server as
10583	// null. It is an error if a field in this list has a non-empty value.
10584	// This may be used to include null fields in Patch requests.
10585	NullFields []string `json:"-"`
10586}
10587
10588func (s *GoogleCloudDialogflowV2ArticleAnswer) MarshalJSON() ([]byte, error) {
10589	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10590	raw := NoMethod(*s)
10591	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10592}
10593
10594func (s *GoogleCloudDialogflowV2ArticleAnswer) UnmarshalJSON(data []byte) error {
10595	type NoMethod GoogleCloudDialogflowV2ArticleAnswer
10596	var s1 struct {
10597		Confidence gensupport.JSONFloat64 `json:"confidence"`
10598		*NoMethod
10599	}
10600	s1.NoMethod = (*NoMethod)(s)
10601	if err := json.Unmarshal(data, &s1); err != nil {
10602		return err
10603	}
10604	s.Confidence = float64(s1.Confidence)
10605	return nil
10606}
10607
10608// GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse: The response
10609// message for EntityTypes.BatchUpdateEntityTypes.
10610type GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse struct {
10611	// EntityTypes: The collection of updated or created entity types.
10612	EntityTypes []*GoogleCloudDialogflowV2EntityType `json:"entityTypes,omitempty"`
10613
10614	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
10615	// unconditionally include in API requests. By default, fields with
10616	// empty or default values are omitted from API requests. However, any
10617	// non-pointer, non-interface field appearing in ForceSendFields will be
10618	// sent to the server regardless of whether the field is empty or not.
10619	// This may be used to include empty fields in Patch requests.
10620	ForceSendFields []string `json:"-"`
10621
10622	// NullFields is a list of field names (e.g. "EntityTypes") to include
10623	// in API requests with the JSON null value. By default, fields with
10624	// empty values are omitted from API requests. However, any field with
10625	// an empty value appearing in NullFields will be sent to the server as
10626	// null. It is an error if a field in this list has a non-empty value.
10627	// This may be used to include null fields in Patch requests.
10628	NullFields []string `json:"-"`
10629}
10630
10631func (s *GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
10632	type NoMethod GoogleCloudDialogflowV2BatchUpdateEntityTypesResponse
10633	raw := NoMethod(*s)
10634	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10635}
10636
10637// GoogleCloudDialogflowV2BatchUpdateIntentsResponse: The response
10638// message for Intents.BatchUpdateIntents.
10639type GoogleCloudDialogflowV2BatchUpdateIntentsResponse struct {
10640	// Intents: The collection of updated or created intents.
10641	Intents []*GoogleCloudDialogflowV2Intent `json:"intents,omitempty"`
10642
10643	// ForceSendFields is a list of field names (e.g. "Intents") to
10644	// unconditionally include in API requests. By default, fields with
10645	// empty or default values are omitted from API requests. However, any
10646	// non-pointer, non-interface field appearing in ForceSendFields will be
10647	// sent to the server regardless of whether the field is empty or not.
10648	// This may be used to include empty fields in Patch requests.
10649	ForceSendFields []string `json:"-"`
10650
10651	// NullFields is a list of field names (e.g. "Intents") to include in
10652	// API requests with the JSON null value. By default, fields with empty
10653	// values are omitted from API requests. However, any field with an
10654	// empty value appearing in NullFields will be sent to the server as
10655	// null. It is an error if a field in this list has a non-empty value.
10656	// This may be used to include null fields in Patch requests.
10657	NullFields []string `json:"-"`
10658}
10659
10660func (s *GoogleCloudDialogflowV2BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
10661	type NoMethod GoogleCloudDialogflowV2BatchUpdateIntentsResponse
10662	raw := NoMethod(*s)
10663	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10664}
10665
10666// GoogleCloudDialogflowV2Context: Dialogflow contexts are similar to
10667// natural language context. If a person says to you "they are orange",
10668// you need context in order to understand what "they" is referring to.
10669// Similarly, for Dialogflow to handle an end-user expression like that,
10670// it needs to be provided with context in order to correctly match an
10671// intent. Using contexts, you can control the flow of a conversation.
10672// You can configure contexts for an intent by setting input and output
10673// contexts, which are identified by string names. When an intent is
10674// matched, any configured output contexts for that intent become
10675// active. While any contexts are active, Dialogflow is more likely to
10676// match intents that are configured with input contexts that correspond
10677// to the currently active contexts. For more information about context,
10678// see the Contexts guide
10679// (https://cloud.google.com/dialogflow/docs/contexts-overview).
10680type GoogleCloudDialogflowV2Context struct {
10681	// LifespanCount: Optional. The number of conversational query requests
10682	// after which the context expires. The default is `0`. If set to `0`,
10683	// the context expires immediately. Contexts expire automatically after
10684	// 20 minutes if there are no matching queries.
10685	LifespanCount int64 `json:"lifespanCount,omitempty"`
10686
10687	// Name: Required. The unique identifier of the context. Format:
10688	// `projects//agent/sessions//contexts/`, or
10689	// `projects//agent/environments//users//sessions//contexts/`. The
10690	// `Context ID` is always converted to lowercase, may only contain
10691	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
10692	// `Environment ID` is not specified, we assume default 'draft'
10693	// environment. If `User ID` is not specified, we assume default '-'
10694	// user. The following context names are reserved for internal use by
10695	// Dialogflow. You should not use these contexts or create contexts with
10696	// these names: * `__system_counters__` * `*_id_dialog_context` *
10697	// `*_dialog_params_size`
10698	Name string `json:"name,omitempty"`
10699
10700	// Parameters: Optional. The collection of parameters associated with
10701	// this context. Depending on your protocol or client library language,
10702	// this is a map, associative array, symbol table, dictionary, or JSON
10703	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
10704	// type: string - MapKey value: parameter name - MapValue type: - If
10705	// parameter's entity type is a composite entity: map - Else: depending
10706	// on parameter value type, could be one of string, number, boolean,
10707	// null, list or map - MapValue value: - If parameter's entity type is a
10708	// composite entity: map from composite entity property names to
10709	// property values - Else: parameter value
10710	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10711
10712	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
10713	// unconditionally include in API requests. By default, fields with
10714	// empty or default values are omitted from API requests. However, any
10715	// non-pointer, non-interface field appearing in ForceSendFields will be
10716	// sent to the server regardless of whether the field is empty or not.
10717	// This may be used to include empty fields in Patch requests.
10718	ForceSendFields []string `json:"-"`
10719
10720	// NullFields is a list of field names (e.g. "LifespanCount") to include
10721	// in API requests with the JSON null value. By default, fields with
10722	// empty values are omitted from API requests. However, any field with
10723	// an empty value appearing in NullFields will be sent to the server as
10724	// null. It is an error if a field in this list has a non-empty value.
10725	// This may be used to include null fields in Patch requests.
10726	NullFields []string `json:"-"`
10727}
10728
10729func (s *GoogleCloudDialogflowV2Context) MarshalJSON() ([]byte, error) {
10730	type NoMethod GoogleCloudDialogflowV2Context
10731	raw := NoMethod(*s)
10732	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10733}
10734
10735// GoogleCloudDialogflowV2ConversationEvent: Represents a notification
10736// sent to Pub/Sub subscribers for conversation lifecycle events.
10737type GoogleCloudDialogflowV2ConversationEvent struct {
10738	// Conversation: The unique identifier of the conversation this
10739	// notification refers to. Format: `projects//conversations/`.
10740	Conversation string `json:"conversation,omitempty"`
10741
10742	// ErrorStatus: More detailed information about an error. Only set for
10743	// type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
10744	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
10745
10746	// NewMessagePayload: Payload of NEW_MESSAGE event.
10747	NewMessagePayload *GoogleCloudDialogflowV2Message `json:"newMessagePayload,omitempty"`
10748
10749	// Type: The type of the event that this notification refers to.
10750	//
10751	// Possible values:
10752	//   "TYPE_UNSPECIFIED" - Type not set.
10753	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
10754	// is fired when a telephone call is answered, or a conversation is
10755	// created via the API.
10756	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
10757	// is fired when a telephone call is terminated, or a conversation is
10758	// closed via the API.
10759	//   "HUMAN_INTERVENTION_NEEDED" - An existing conversation has received
10760	// notification from Dialogflow that human intervention is required.
10761	//   "NEW_MESSAGE" - An existing conversation has received a new
10762	// message, either from API or telephony. It is configured in
10763	// ConversationProfile.new_message_event_notification_config
10764	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
10765	// call. In general non-recoverable errors only occur if something was
10766	// misconfigured in the ConversationProfile corresponding to the call.
10767	// After a non-recoverable error, Dialogflow may stop responding. We
10768	// don't fire this event: * in an API call because we can directly
10769	// return the error, or, * when we can recover from an error.
10770	Type string `json:"type,omitempty"`
10771
10772	// ForceSendFields is a list of field names (e.g. "Conversation") to
10773	// unconditionally include in API requests. By default, fields with
10774	// empty or default values are omitted from API requests. However, any
10775	// non-pointer, non-interface field appearing in ForceSendFields will be
10776	// sent to the server regardless of whether the field is empty or not.
10777	// This may be used to include empty fields in Patch requests.
10778	ForceSendFields []string `json:"-"`
10779
10780	// NullFields is a list of field names (e.g. "Conversation") to include
10781	// in API requests with the JSON null value. By default, fields with
10782	// empty values are omitted from API requests. However, any field with
10783	// an empty value appearing in NullFields will be sent to the server as
10784	// null. It is an error if a field in this list has a non-empty value.
10785	// This may be used to include null fields in Patch requests.
10786	NullFields []string `json:"-"`
10787}
10788
10789func (s *GoogleCloudDialogflowV2ConversationEvent) MarshalJSON() ([]byte, error) {
10790	type NoMethod GoogleCloudDialogflowV2ConversationEvent
10791	raw := NoMethod(*s)
10792	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10793}
10794
10795// GoogleCloudDialogflowV2EntityType: Each intent parameter has a type,
10796// called the entity type, which dictates exactly how data from an
10797// end-user expression is extracted. Dialogflow provides predefined
10798// system entities that can match many common types of data. For
10799// example, there are system entities for matching dates, times, colors,
10800// email addresses, and so on. You can also create your own custom
10801// entities for matching custom data. For example, you could define a
10802// vegetable entity that can match the types of vegetables available for
10803// purchase with a grocery store agent. For more information, see the
10804// Entity guide
10805// (https://cloud.google.com/dialogflow/docs/entities-overview).
10806type GoogleCloudDialogflowV2EntityType struct {
10807	// AutoExpansionMode: Optional. Indicates whether the entity type can be
10808	// automatically expanded.
10809	//
10810	// Possible values:
10811	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
10812	// entity.
10813	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
10814	// that have not been explicitly listed in the entity.
10815	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
10816
10817	// DisplayName: Required. The name of the entity type.
10818	DisplayName string `json:"displayName,omitempty"`
10819
10820	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
10821	// during classification.
10822	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
10823
10824	// Entities: Optional. The collection of entity entries associated with
10825	// the entity type.
10826	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
10827
10828	// Kind: Required. Indicates the kind of entity type.
10829	//
10830	// Possible values:
10831	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
10832	// used.
10833	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
10834	// to a reference value.
10835	//   "KIND_LIST" - List entity types contain a set of entries that do
10836	// not map to reference values. However, list entity types can contain
10837	// references to other entity types (with or without aliases).
10838	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
10839	// expressions in entries values.
10840	Kind string `json:"kind,omitempty"`
10841
10842	// Name: The unique identifier of the entity type. Required for
10843	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
10844	// methods. Format: `projects//agent/entityTypes/`.
10845	Name string `json:"name,omitempty"`
10846
10847	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
10848	// to unconditionally include in API requests. By default, fields with
10849	// empty or default values are omitted from API requests. However, any
10850	// non-pointer, non-interface field appearing in ForceSendFields will be
10851	// sent to the server regardless of whether the field is empty or not.
10852	// This may be used to include empty fields in Patch requests.
10853	ForceSendFields []string `json:"-"`
10854
10855	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
10856	// include in API requests with the JSON null value. By default, fields
10857	// with empty values are omitted from API requests. However, any field
10858	// with an empty value appearing in NullFields will be sent to the
10859	// server as null. It is an error if a field in this list has a
10860	// non-empty value. This may be used to include null fields in Patch
10861	// requests.
10862	NullFields []string `json:"-"`
10863}
10864
10865func (s *GoogleCloudDialogflowV2EntityType) MarshalJSON() ([]byte, error) {
10866	type NoMethod GoogleCloudDialogflowV2EntityType
10867	raw := NoMethod(*s)
10868	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10869}
10870
10871// GoogleCloudDialogflowV2EntityTypeEntity: An **entity entry** for an
10872// associated entity type.
10873type GoogleCloudDialogflowV2EntityTypeEntity struct {
10874	// Synonyms: Required. A collection of value synonyms. For example, if
10875	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
10876	// could be *green onions*. For `KIND_LIST` entity types: * This
10877	// collection must contain exactly one synonym equal to `value`.
10878	Synonyms []string `json:"synonyms,omitempty"`
10879
10880	// Value: Required. The primary value associated with this entity entry.
10881	// For example, if the entity type is *vegetable*, the value could be
10882	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
10883	// used in place of synonyms. For `KIND_LIST` entity types: * A string
10884	// that can contain references to other entity types (with or without
10885	// aliases).
10886	Value string `json:"value,omitempty"`
10887
10888	// ForceSendFields is a list of field names (e.g. "Synonyms") to
10889	// unconditionally include in API requests. By default, fields with
10890	// empty or default values are omitted from API requests. However, any
10891	// non-pointer, non-interface field appearing in ForceSendFields will be
10892	// sent to the server regardless of whether the field is empty or not.
10893	// This may be used to include empty fields in Patch requests.
10894	ForceSendFields []string `json:"-"`
10895
10896	// NullFields is a list of field names (e.g. "Synonyms") to include in
10897	// API requests with the JSON null value. By default, fields with empty
10898	// values are omitted from API requests. However, any field with an
10899	// empty value appearing in NullFields will be sent to the server as
10900	// null. It is an error if a field in this list has a non-empty value.
10901	// This may be used to include null fields in Patch requests.
10902	NullFields []string `json:"-"`
10903}
10904
10905func (s *GoogleCloudDialogflowV2EntityTypeEntity) MarshalJSON() ([]byte, error) {
10906	type NoMethod GoogleCloudDialogflowV2EntityTypeEntity
10907	raw := NoMethod(*s)
10908	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10909}
10910
10911// GoogleCloudDialogflowV2EventInput: Events allow for matching intents
10912// by event name instead of the natural language input. For instance,
10913// input `` can trigger a personalized welcome response. The parameter
10914// `name` may be used by the agent in the response: "Hello
10915// #welcome_event.name! What can I do for you today?".
10916type GoogleCloudDialogflowV2EventInput struct {
10917	// LanguageCode: Required. The language of this query. See Language
10918	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
10919	// for a list of the currently supported language codes. Note that
10920	// queries in the same session do not necessarily need to specify the
10921	// same language.
10922	LanguageCode string `json:"languageCode,omitempty"`
10923
10924	// Name: Required. The unique identifier of the event.
10925	Name string `json:"name,omitempty"`
10926
10927	// Parameters: The collection of parameters associated with the event.
10928	// Depending on your protocol or client library language, this is a map,
10929	// associative array, symbol table, dictionary, or JSON object composed
10930	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
10931	// MapKey value: parameter name - MapValue type: - If parameter's entity
10932	// type is a composite entity: map - Else: depending on parameter value
10933	// type, could be one of string, number, boolean, null, list or map -
10934	// MapValue value: - If parameter's entity type is a composite entity:
10935	// map from composite entity property names to property values - Else:
10936	// parameter value
10937	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
10938
10939	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
10940	// unconditionally include in API requests. By default, fields with
10941	// empty or default values are omitted from API requests. However, any
10942	// non-pointer, non-interface field appearing in ForceSendFields will be
10943	// sent to the server regardless of whether the field is empty or not.
10944	// This may be used to include empty fields in Patch requests.
10945	ForceSendFields []string `json:"-"`
10946
10947	// NullFields is a list of field names (e.g. "LanguageCode") to include
10948	// in API requests with the JSON null value. By default, fields with
10949	// empty values are omitted from API requests. However, any field with
10950	// an empty value appearing in NullFields will be sent to the server as
10951	// null. It is an error if a field in this list has a non-empty value.
10952	// This may be used to include null fields in Patch requests.
10953	NullFields []string `json:"-"`
10954}
10955
10956func (s *GoogleCloudDialogflowV2EventInput) MarshalJSON() ([]byte, error) {
10957	type NoMethod GoogleCloudDialogflowV2EventInput
10958	raw := NoMethod(*s)
10959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10960}
10961
10962// GoogleCloudDialogflowV2ExportAgentResponse: The response message for
10963// Agents.ExportAgent.
10964type GoogleCloudDialogflowV2ExportAgentResponse struct {
10965	// AgentContent: Zip compressed raw byte content for agent.
10966	AgentContent string `json:"agentContent,omitempty"`
10967
10968	// AgentUri: The URI to a file containing the exported agent. This field
10969	// is populated only if `agent_uri` is specified in
10970	// `ExportAgentRequest`.
10971	AgentUri string `json:"agentUri,omitempty"`
10972
10973	// ForceSendFields is a list of field names (e.g. "AgentContent") to
10974	// unconditionally include in API requests. By default, fields with
10975	// empty or default values are omitted from API requests. However, any
10976	// non-pointer, non-interface field appearing in ForceSendFields will be
10977	// sent to the server regardless of whether the field is empty or not.
10978	// This may be used to include empty fields in Patch requests.
10979	ForceSendFields []string `json:"-"`
10980
10981	// NullFields is a list of field names (e.g. "AgentContent") to include
10982	// in API requests with the JSON null value. By default, fields with
10983	// empty values are omitted from API requests. However, any field with
10984	// an empty value appearing in NullFields will be sent to the server as
10985	// null. It is an error if a field in this list has a non-empty value.
10986	// This may be used to include null fields in Patch requests.
10987	NullFields []string `json:"-"`
10988}
10989
10990func (s *GoogleCloudDialogflowV2ExportAgentResponse) MarshalJSON() ([]byte, error) {
10991	type NoMethod GoogleCloudDialogflowV2ExportAgentResponse
10992	raw := NoMethod(*s)
10993	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
10994}
10995
10996// GoogleCloudDialogflowV2FaqAnswer: Represents answer from "frequently
10997// asked questions".
10998type GoogleCloudDialogflowV2FaqAnswer struct {
10999	// Answer: The piece of text from the `source` knowledge base document.
11000	Answer string `json:"answer,omitempty"`
11001
11002	// AnswerRecord: The name of answer record, in the format of
11003	// "projects//locations//answerRecords/"
11004	AnswerRecord string `json:"answerRecord,omitempty"`
11005
11006	// Confidence: The system's confidence score that this Knowledge answer
11007	// is a good match for this conversational query, range from 0.0
11008	// (completely uncertain) to 1.0 (completely certain).
11009	Confidence float64 `json:"confidence,omitempty"`
11010
11011	// Metadata: A map that contains metadata about the answer and the
11012	// document from which it originates.
11013	Metadata map[string]string `json:"metadata,omitempty"`
11014
11015	// Question: The corresponding FAQ question.
11016	Question string `json:"question,omitempty"`
11017
11018	// Source: Indicates which Knowledge Document this answer was extracted
11019	// from. Format:
11020	// `projects//locations//agent/knowledgeBases//documents/`.
11021	Source string `json:"source,omitempty"`
11022
11023	// ForceSendFields is a list of field names (e.g. "Answer") to
11024	// unconditionally include in API requests. By default, fields with
11025	// empty or default values are omitted from API requests. However, any
11026	// non-pointer, non-interface field appearing in ForceSendFields will be
11027	// sent to the server regardless of whether the field is empty or not.
11028	// This may be used to include empty fields in Patch requests.
11029	ForceSendFields []string `json:"-"`
11030
11031	// NullFields is a list of field names (e.g. "Answer") to include in API
11032	// requests with the JSON null value. By default, fields with empty
11033	// values are omitted from API requests. However, any field with an
11034	// empty value appearing in NullFields will be sent to the server as
11035	// null. It is an error if a field in this list has a non-empty value.
11036	// This may be used to include null fields in Patch requests.
11037	NullFields []string `json:"-"`
11038}
11039
11040func (s *GoogleCloudDialogflowV2FaqAnswer) MarshalJSON() ([]byte, error) {
11041	type NoMethod GoogleCloudDialogflowV2FaqAnswer
11042	raw := NoMethod(*s)
11043	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11044}
11045
11046func (s *GoogleCloudDialogflowV2FaqAnswer) UnmarshalJSON(data []byte) error {
11047	type NoMethod GoogleCloudDialogflowV2FaqAnswer
11048	var s1 struct {
11049		Confidence gensupport.JSONFloat64 `json:"confidence"`
11050		*NoMethod
11051	}
11052	s1.NoMethod = (*NoMethod)(s)
11053	if err := json.Unmarshal(data, &s1); err != nil {
11054		return err
11055	}
11056	s.Confidence = float64(s1.Confidence)
11057	return nil
11058}
11059
11060// GoogleCloudDialogflowV2HumanAgentAssistantEvent: Represents a
11061// notification sent to Cloud Pub/Sub subscribers for human agent
11062// assistant events in a specific conversation.
11063type GoogleCloudDialogflowV2HumanAgentAssistantEvent struct {
11064	// Conversation: The conversation this notification refers to. Format:
11065	// `projects//conversations/`.
11066	Conversation string `json:"conversation,omitempty"`
11067
11068	// Participant: The participant that the suggestion is compiled for.
11069	// Format: `projects//conversations//participants/`. It will not be set
11070	// in legacy workflow.
11071	Participant string `json:"participant,omitempty"`
11072
11073	// SuggestionResults: The suggestion results payload that this
11074	// notification refers to.
11075	SuggestionResults []*GoogleCloudDialogflowV2SuggestionResult `json:"suggestionResults,omitempty"`
11076
11077	// ForceSendFields is a list of field names (e.g. "Conversation") to
11078	// unconditionally include in API requests. By default, fields with
11079	// empty or default values are omitted from API requests. However, any
11080	// non-pointer, non-interface field appearing in ForceSendFields will be
11081	// sent to the server regardless of whether the field is empty or not.
11082	// This may be used to include empty fields in Patch requests.
11083	ForceSendFields []string `json:"-"`
11084
11085	// NullFields is a list of field names (e.g. "Conversation") to include
11086	// in API requests with the JSON null value. By default, fields with
11087	// empty values are omitted from API requests. However, any field with
11088	// an empty value appearing in NullFields will be sent to the server as
11089	// null. It is an error if a field in this list has a non-empty value.
11090	// This may be used to include null fields in Patch requests.
11091	NullFields []string `json:"-"`
11092}
11093
11094func (s *GoogleCloudDialogflowV2HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
11095	type NoMethod GoogleCloudDialogflowV2HumanAgentAssistantEvent
11096	raw := NoMethod(*s)
11097	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11098}
11099
11100// GoogleCloudDialogflowV2Intent: An intent categorizes an end-user's
11101// intention for one conversation turn. For each agent, you define many
11102// intents, where your combined intents can handle a complete
11103// conversation. When an end-user writes or says something, referred to
11104// as an end-user expression or end-user input, Dialogflow matches the
11105// end-user input to the best intent in your agent. Matching an intent
11106// is also known as intent classification. For more information, see the
11107// intent guide
11108// (https://cloud.google.com/dialogflow/docs/intents-overview).
11109type GoogleCloudDialogflowV2Intent struct {
11110	// Action: Optional. The name of the action associated with the intent.
11111	// Note: The action name must not contain whitespaces.
11112	Action string `json:"action,omitempty"`
11113
11114	// DefaultResponsePlatforms: Optional. The list of platforms for which
11115	// the first responses will be copied from the messages in
11116	// PLATFORM_UNSPECIFIED (i.e. default platform).
11117	//
11118	// Possible values:
11119	//   "PLATFORM_UNSPECIFIED" - Default platform.
11120	//   "FACEBOOK" - Facebook.
11121	//   "SLACK" - Slack.
11122	//   "TELEGRAM" - Telegram.
11123	//   "KIK" - Kik.
11124	//   "SKYPE" - Skype.
11125	//   "LINE" - Line.
11126	//   "VIBER" - Viber.
11127	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
11128	// format](https://developers.google.com/assistant/actions/build/json/dia
11129	// logflow-webhook-json)
11130	//   "GOOGLE_HANGOUTS" - Google Hangouts.
11131	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
11132
11133	// DisplayName: Required. The name of this intent.
11134	DisplayName string `json:"displayName,omitempty"`
11135
11136	// EndInteraction: Optional. Indicates that this intent ends an
11137	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
11138	// phone gateway) use this information to close interaction with an end
11139	// user. Default is false.
11140	EndInteraction bool `json:"endInteraction,omitempty"`
11141
11142	// Events: Optional. The collection of event names that trigger the
11143	// intent. If the collection of input contexts is not empty, all of the
11144	// contexts must be present in the active user session for an event to
11145	// trigger this intent. Event names are limited to 150 characters.
11146	Events []string `json:"events,omitempty"`
11147
11148	// FollowupIntentInfo: Output only. Read-only. Information about all
11149	// followup intents that have this intent as a direct or indirect
11150	// parent. We populate this field only in the output.
11151	FollowupIntentInfo []*GoogleCloudDialogflowV2IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
11152
11153	// InputContextNames: Optional. The list of context names required for
11154	// this intent to be triggered. Format:
11155	// `projects//agent/sessions/-/contexts/`.
11156	InputContextNames []string `json:"inputContextNames,omitempty"`
11157
11158	// IsFallback: Optional. Indicates whether this is a fallback intent.
11159	IsFallback bool `json:"isFallback,omitempty"`
11160
11161	// LiveAgentHandoff: Optional. Indicates that a live agent should be
11162	// brought in to handle the interaction with the user. In most cases,
11163	// when you set this flag to true, you would also want to set
11164	// end_interaction to true as well. Default is false.
11165	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
11166
11167	// Messages: Optional. The collection of rich messages corresponding to
11168	// the `Response` field in the Dialogflow console.
11169	Messages []*GoogleCloudDialogflowV2IntentMessage `json:"messages,omitempty"`
11170
11171	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
11172	// for the intent. Note: If `ml_disabled` setting is set to true, then
11173	// this intent is not taken into account during inference in `ML ONLY`
11174	// match mode. Also, auto-markup in the UI is turned off.
11175	MlDisabled bool `json:"mlDisabled,omitempty"`
11176
11177	// Name: Optional. The unique identifier of this intent. Required for
11178	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods. Format:
11179	// `projects//agent/intents/`.
11180	Name string `json:"name,omitempty"`
11181
11182	// OutputContexts: Optional. The collection of contexts that are
11183	// activated when the intent is matched. Context messages in this
11184	// collection should not set the parameters field. Setting the
11185	// `lifespan_count` to 0 will reset the context when the intent is
11186	// matched. Format: `projects//agent/sessions/-/contexts/`.
11187	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
11188
11189	// Parameters: Optional. The collection of parameters associated with
11190	// the intent.
11191	Parameters []*GoogleCloudDialogflowV2IntentParameter `json:"parameters,omitempty"`
11192
11193	// ParentFollowupIntentName: Read-only after creation. The unique
11194	// identifier of the parent intent in the chain of followup intents. You
11195	// can set this field when creating an intent, for example with
11196	// CreateIntent or BatchUpdateIntents, in order to make this intent a
11197	// followup intent. It identifies the parent followup intent. Format:
11198	// `projects//agent/intents/`.
11199	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
11200
11201	// Priority: Optional. The priority of this intent. Higher numbers
11202	// represent higher priorities. - If the supplied value is unspecified
11203	// or 0, the service translates the value to 500,000, which corresponds
11204	// to the `Normal` priority in the console. - If the supplied value is
11205	// negative, the intent is ignored in runtime detect intent requests.
11206	Priority int64 `json:"priority,omitempty"`
11207
11208	// ResetContexts: Optional. Indicates whether to delete all contexts in
11209	// the current session when this intent is matched.
11210	ResetContexts bool `json:"resetContexts,omitempty"`
11211
11212	// RootFollowupIntentName: Output only. Read-only. The unique identifier
11213	// of the root intent in the chain of followup intents. It identifies
11214	// the correct followup intents chain for this intent. We populate this
11215	// field only in the output. Format: `projects//agent/intents/`.
11216	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
11217
11218	// TrainingPhrases: Optional. The collection of examples that the agent
11219	// is trained on.
11220	TrainingPhrases []*GoogleCloudDialogflowV2IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
11221
11222	// WebhookState: Optional. Indicates whether webhooks are enabled for
11223	// the intent.
11224	//
11225	// Possible values:
11226	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
11227	// in the intent.
11228	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
11229	// the intent.
11230	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
11231	// the agent and in the intent. Also, each slot filling prompt is
11232	// forwarded to the webhook.
11233	WebhookState string `json:"webhookState,omitempty"`
11234
11235	// ForceSendFields is a list of field names (e.g. "Action") to
11236	// unconditionally include in API requests. By default, fields with
11237	// empty or default values are omitted from API requests. However, any
11238	// non-pointer, non-interface field appearing in ForceSendFields will be
11239	// sent to the server regardless of whether the field is empty or not.
11240	// This may be used to include empty fields in Patch requests.
11241	ForceSendFields []string `json:"-"`
11242
11243	// NullFields is a list of field names (e.g. "Action") to include in API
11244	// requests with the JSON null value. By default, fields with empty
11245	// values are omitted from API requests. However, any field with an
11246	// empty value appearing in NullFields will be sent to the server as
11247	// null. It is an error if a field in this list has a non-empty value.
11248	// This may be used to include null fields in Patch requests.
11249	NullFields []string `json:"-"`
11250}
11251
11252func (s *GoogleCloudDialogflowV2Intent) MarshalJSON() ([]byte, error) {
11253	type NoMethod GoogleCloudDialogflowV2Intent
11254	raw := NoMethod(*s)
11255	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11256}
11257
11258// GoogleCloudDialogflowV2IntentFollowupIntentInfo: Represents a single
11259// followup intent in the chain.
11260type GoogleCloudDialogflowV2IntentFollowupIntentInfo struct {
11261	// FollowupIntentName: The unique identifier of the followup intent.
11262	// Format: `projects//agent/intents/`.
11263	FollowupIntentName string `json:"followupIntentName,omitempty"`
11264
11265	// ParentFollowupIntentName: The unique identifier of the followup
11266	// intent's parent. Format: `projects//agent/intents/`.
11267	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
11268
11269	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
11270	// to unconditionally include in API requests. By default, fields with
11271	// empty or default values are omitted from API requests. However, any
11272	// non-pointer, non-interface field appearing in ForceSendFields will be
11273	// sent to the server regardless of whether the field is empty or not.
11274	// This may be used to include empty fields in Patch requests.
11275	ForceSendFields []string `json:"-"`
11276
11277	// NullFields is a list of field names (e.g. "FollowupIntentName") to
11278	// include in API requests with the JSON null value. By default, fields
11279	// with empty values are omitted from API requests. However, any field
11280	// with an empty value appearing in NullFields will be sent to the
11281	// server as null. It is an error if a field in this list has a
11282	// non-empty value. This may be used to include null fields in Patch
11283	// requests.
11284	NullFields []string `json:"-"`
11285}
11286
11287func (s *GoogleCloudDialogflowV2IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
11288	type NoMethod GoogleCloudDialogflowV2IntentFollowupIntentInfo
11289	raw := NoMethod(*s)
11290	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11291}
11292
11293// GoogleCloudDialogflowV2IntentMessage: A rich response message.
11294// Corresponds to the intent `Response` field in the Dialogflow console.
11295// For more information, see Rich response messages
11296// (https://cloud.google.com/dialogflow/docs/intents-rich-messages).
11297type GoogleCloudDialogflowV2IntentMessage struct {
11298	// BasicCard: The basic card response for Actions on Google.
11299	BasicCard *GoogleCloudDialogflowV2IntentMessageBasicCard `json:"basicCard,omitempty"`
11300
11301	// BrowseCarouselCard: Browse carousel card for Actions on Google.
11302	BrowseCarouselCard *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
11303
11304	// Card: The card response.
11305	Card *GoogleCloudDialogflowV2IntentMessageCard `json:"card,omitempty"`
11306
11307	// CarouselSelect: The carousel card response for Actions on Google.
11308	CarouselSelect *GoogleCloudDialogflowV2IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
11309
11310	// Image: The image response.
11311	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11312
11313	// LinkOutSuggestion: The link out suggestion chip for Actions on
11314	// Google.
11315	LinkOutSuggestion *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
11316
11317	// ListSelect: The list card response for Actions on Google.
11318	ListSelect *GoogleCloudDialogflowV2IntentMessageListSelect `json:"listSelect,omitempty"`
11319
11320	// MediaContent: The media content card for Actions on Google.
11321	MediaContent *GoogleCloudDialogflowV2IntentMessageMediaContent `json:"mediaContent,omitempty"`
11322
11323	// Payload: A custom platform-specific response.
11324	Payload googleapi.RawMessage `json:"payload,omitempty"`
11325
11326	// Platform: Optional. The platform that this message is intended for.
11327	//
11328	// Possible values:
11329	//   "PLATFORM_UNSPECIFIED" - Default platform.
11330	//   "FACEBOOK" - Facebook.
11331	//   "SLACK" - Slack.
11332	//   "TELEGRAM" - Telegram.
11333	//   "KIK" - Kik.
11334	//   "SKYPE" - Skype.
11335	//   "LINE" - Line.
11336	//   "VIBER" - Viber.
11337	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
11338	// format](https://developers.google.com/assistant/actions/build/json/dia
11339	// logflow-webhook-json)
11340	//   "GOOGLE_HANGOUTS" - Google Hangouts.
11341	Platform string `json:"platform,omitempty"`
11342
11343	// QuickReplies: The quick replies response.
11344	QuickReplies *GoogleCloudDialogflowV2IntentMessageQuickReplies `json:"quickReplies,omitempty"`
11345
11346	// SimpleResponses: The voice and text-only responses for Actions on
11347	// Google.
11348	SimpleResponses *GoogleCloudDialogflowV2IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
11349
11350	// Suggestions: The suggestion chips for Actions on Google.
11351	Suggestions *GoogleCloudDialogflowV2IntentMessageSuggestions `json:"suggestions,omitempty"`
11352
11353	// TableCard: Table card for Actions on Google.
11354	TableCard *GoogleCloudDialogflowV2IntentMessageTableCard `json:"tableCard,omitempty"`
11355
11356	// Text: The text response.
11357	Text *GoogleCloudDialogflowV2IntentMessageText `json:"text,omitempty"`
11358
11359	// ForceSendFields is a list of field names (e.g. "BasicCard") to
11360	// unconditionally include in API requests. By default, fields with
11361	// empty or default values are omitted from API requests. However, any
11362	// non-pointer, non-interface field appearing in ForceSendFields will be
11363	// sent to the server regardless of whether the field is empty or not.
11364	// This may be used to include empty fields in Patch requests.
11365	ForceSendFields []string `json:"-"`
11366
11367	// NullFields is a list of field names (e.g. "BasicCard") to include in
11368	// API requests with the JSON null value. By default, fields with empty
11369	// values are omitted from API requests. However, any field with an
11370	// empty value appearing in NullFields will be sent to the server as
11371	// null. It is an error if a field in this list has a non-empty value.
11372	// This may be used to include null fields in Patch requests.
11373	NullFields []string `json:"-"`
11374}
11375
11376func (s *GoogleCloudDialogflowV2IntentMessage) MarshalJSON() ([]byte, error) {
11377	type NoMethod GoogleCloudDialogflowV2IntentMessage
11378	raw := NoMethod(*s)
11379	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11380}
11381
11382// GoogleCloudDialogflowV2IntentMessageBasicCard: The basic card
11383// message. Useful for displaying information.
11384type GoogleCloudDialogflowV2IntentMessageBasicCard struct {
11385	// Buttons: Optional. The collection of card buttons.
11386	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
11387
11388	// FormattedText: Required, unless image is present. The body text of
11389	// the card.
11390	FormattedText string `json:"formattedText,omitempty"`
11391
11392	// Image: Optional. The image for the card.
11393	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11394
11395	// Subtitle: Optional. The subtitle of the card.
11396	Subtitle string `json:"subtitle,omitempty"`
11397
11398	// Title: Optional. The title of the card.
11399	Title string `json:"title,omitempty"`
11400
11401	// ForceSendFields is a list of field names (e.g. "Buttons") to
11402	// unconditionally include in API requests. By default, fields with
11403	// empty or default values are omitted from API requests. However, any
11404	// non-pointer, non-interface field appearing in ForceSendFields will be
11405	// sent to the server regardless of whether the field is empty or not.
11406	// This may be used to include empty fields in Patch requests.
11407	ForceSendFields []string `json:"-"`
11408
11409	// NullFields is a list of field names (e.g. "Buttons") to include in
11410	// API requests with the JSON null value. By default, fields with empty
11411	// values are omitted from API requests. However, any field with an
11412	// empty value appearing in NullFields will be sent to the server as
11413	// null. It is an error if a field in this list has a non-empty value.
11414	// This may be used to include null fields in Patch requests.
11415	NullFields []string `json:"-"`
11416}
11417
11418func (s *GoogleCloudDialogflowV2IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
11419	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCard
11420	raw := NoMethod(*s)
11421	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11422}
11423
11424// GoogleCloudDialogflowV2IntentMessageBasicCardButton: The button
11425// object that appears at the bottom of a card.
11426type GoogleCloudDialogflowV2IntentMessageBasicCardButton struct {
11427	// OpenUriAction: Required. Action to take when a user taps on the
11428	// button.
11429	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
11430
11431	// Title: Required. The title of the button.
11432	Title string `json:"title,omitempty"`
11433
11434	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
11435	// unconditionally include in API requests. By default, fields with
11436	// empty or default values are omitted from API requests. However, any
11437	// non-pointer, non-interface field appearing in ForceSendFields will be
11438	// sent to the server regardless of whether the field is empty or not.
11439	// This may be used to include empty fields in Patch requests.
11440	ForceSendFields []string `json:"-"`
11441
11442	// NullFields is a list of field names (e.g. "OpenUriAction") to include
11443	// in API requests with the JSON null value. By default, fields with
11444	// empty values are omitted from API requests. However, any field with
11445	// an empty value appearing in NullFields will be sent to the server as
11446	// null. It is an error if a field in this list has a non-empty value.
11447	// This may be used to include null fields in Patch requests.
11448	NullFields []string `json:"-"`
11449}
11450
11451func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
11452	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButton
11453	raw := NoMethod(*s)
11454	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11455}
11456
11457// GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction:
11458// Opens the given URI.
11459type GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction struct {
11460	// Uri: Required. The HTTP or HTTPS scheme URI.
11461	Uri string `json:"uri,omitempty"`
11462
11463	// ForceSendFields is a list of field names (e.g. "Uri") to
11464	// unconditionally include in API requests. By default, fields with
11465	// empty or default values are omitted from API requests. However, any
11466	// non-pointer, non-interface field appearing in ForceSendFields will be
11467	// sent to the server regardless of whether the field is empty or not.
11468	// This may be used to include empty fields in Patch requests.
11469	ForceSendFields []string `json:"-"`
11470
11471	// NullFields is a list of field names (e.g. "Uri") to include in API
11472	// requests with the JSON null value. By default, fields with empty
11473	// values are omitted from API requests. However, any field with an
11474	// empty value appearing in NullFields will be sent to the server as
11475	// null. It is an error if a field in this list has a non-empty value.
11476	// This may be used to include null fields in Patch requests.
11477	NullFields []string `json:"-"`
11478}
11479
11480func (s *GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
11481	type NoMethod GoogleCloudDialogflowV2IntentMessageBasicCardButtonOpenUriAction
11482	raw := NoMethod(*s)
11483	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11484}
11485
11486// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard: Browse
11487// Carousel Card for Actions on Google.
11488// https://developers.google.com/actions/assistant/responses#browsing_carousel
11489type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard struct {
11490	// ImageDisplayOptions: Optional. Settings for displaying the image.
11491	// Applies to every image in items.
11492	//
11493	// Possible values:
11494	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
11495	// image and the image container with gray bars.
11496	//   "GRAY" - Fill the gaps between the image and the image container
11497	// with gray bars.
11498	//   "WHITE" - Fill the gaps between the image and the image container
11499	// with white bars.
11500	//   "CROPPED" - Image is scaled such that the image width and height
11501	// match or exceed the container dimensions. This may crop the top and
11502	// bottom of the image if the scaled image height is greater than the
11503	// container height, or crop the left and right of the image if the
11504	// scaled image width is greater than the container width. This is
11505	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
11506	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
11507	// with a blurred copy of the same image.
11508	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
11509
11510	// Items: Required. List of items in the Browse Carousel Card. Minimum
11511	// of two items, maximum of ten.
11512	Items []*GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
11513
11514	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
11515	// to unconditionally include in API requests. By default, fields with
11516	// empty or default values are omitted from API requests. However, any
11517	// non-pointer, non-interface field appearing in ForceSendFields will be
11518	// sent to the server regardless of whether the field is empty or not.
11519	// This may be used to include empty fields in Patch requests.
11520	ForceSendFields []string `json:"-"`
11521
11522	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
11523	// include in API requests with the JSON null value. By default, fields
11524	// with empty values are omitted from API requests. However, any field
11525	// with an empty value appearing in NullFields will be sent to the
11526	// server as null. It is an error if a field in this list has a
11527	// non-empty value. This may be used to include null fields in Patch
11528	// requests.
11529	NullFields []string `json:"-"`
11530}
11531
11532func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
11533	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCard
11534	raw := NoMethod(*s)
11535	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11536}
11537
11538// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11539// rdItem: Browsing carousel tile
11540type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
11541	// Description: Optional. Description of the carousel item. Maximum of
11542	// four lines of text.
11543	Description string `json:"description,omitempty"`
11544
11545	// Footer: Optional. Text that appears at the bottom of the Browse
11546	// Carousel Card. Maximum of one line of text.
11547	Footer string `json:"footer,omitempty"`
11548
11549	// Image: Optional. Hero image for the carousel item.
11550	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11551
11552	// OpenUriAction: Required. Action to present to the user.
11553	OpenUriAction *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
11554
11555	// Title: Required. Title of the carousel item. Maximum of two lines of
11556	// text.
11557	Title string `json:"title,omitempty"`
11558
11559	// ForceSendFields is a list of field names (e.g. "Description") to
11560	// unconditionally include in API requests. By default, fields with
11561	// empty or default values are omitted from API requests. However, any
11562	// non-pointer, non-interface field appearing in ForceSendFields will be
11563	// sent to the server regardless of whether the field is empty or not.
11564	// This may be used to include empty fields in Patch requests.
11565	ForceSendFields []string `json:"-"`
11566
11567	// NullFields is a list of field names (e.g. "Description") to include
11568	// in API requests with the JSON null value. By default, fields with
11569	// empty values are omitted from API requests. However, any field with
11570	// an empty value appearing in NullFields will be sent to the server as
11571	// null. It is an error if a field in this list has a non-empty value.
11572	// This may be used to include null fields in Patch requests.
11573	NullFields []string `json:"-"`
11574}
11575
11576func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
11577	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItem
11578	raw := NoMethod(*s)
11579	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11580}
11581
11582// GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCa
11583// rdItemOpenUrlAction: Actions on Google action to open a given url.
11584type GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
11585	// Url: Required. URL
11586	Url string `json:"url,omitempty"`
11587
11588	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
11589	// opening the URL. Defaults to opening via web browser.
11590	//
11591	// Possible values:
11592	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
11593	//   "AMP_ACTION" - Url would be an amp action
11594	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
11595	// canonical URL which refers to AMP content via .
11596	UrlTypeHint string `json:"urlTypeHint,omitempty"`
11597
11598	// ForceSendFields is a list of field names (e.g. "Url") to
11599	// unconditionally include in API requests. By default, fields with
11600	// empty or default values are omitted from API requests. However, any
11601	// non-pointer, non-interface field appearing in ForceSendFields will be
11602	// sent to the server regardless of whether the field is empty or not.
11603	// This may be used to include empty fields in Patch requests.
11604	ForceSendFields []string `json:"-"`
11605
11606	// NullFields is a list of field names (e.g. "Url") to include in API
11607	// requests with the JSON null value. By default, fields with empty
11608	// values are omitted from API requests. However, any field with an
11609	// empty value appearing in NullFields will be sent to the server as
11610	// null. It is an error if a field in this list has a non-empty value.
11611	// This may be used to include null fields in Patch requests.
11612	NullFields []string `json:"-"`
11613}
11614
11615func (s *GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
11616	type NoMethod GoogleCloudDialogflowV2IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
11617	raw := NoMethod(*s)
11618	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11619}
11620
11621// GoogleCloudDialogflowV2IntentMessageCard: The card response message.
11622type GoogleCloudDialogflowV2IntentMessageCard struct {
11623	// Buttons: Optional. The collection of card buttons.
11624	Buttons []*GoogleCloudDialogflowV2IntentMessageCardButton `json:"buttons,omitempty"`
11625
11626	// ImageUri: Optional. The public URI to an image file for the card.
11627	ImageUri string `json:"imageUri,omitempty"`
11628
11629	// Subtitle: Optional. The subtitle of the card.
11630	Subtitle string `json:"subtitle,omitempty"`
11631
11632	// Title: Optional. The title of the card.
11633	Title string `json:"title,omitempty"`
11634
11635	// ForceSendFields is a list of field names (e.g. "Buttons") to
11636	// unconditionally include in API requests. By default, fields with
11637	// empty or default values are omitted from API requests. However, any
11638	// non-pointer, non-interface field appearing in ForceSendFields will be
11639	// sent to the server regardless of whether the field is empty or not.
11640	// This may be used to include empty fields in Patch requests.
11641	ForceSendFields []string `json:"-"`
11642
11643	// NullFields is a list of field names (e.g. "Buttons") to include in
11644	// API requests with the JSON null value. By default, fields with empty
11645	// values are omitted from API requests. However, any field with an
11646	// empty value appearing in NullFields will be sent to the server as
11647	// null. It is an error if a field in this list has a non-empty value.
11648	// This may be used to include null fields in Patch requests.
11649	NullFields []string `json:"-"`
11650}
11651
11652func (s *GoogleCloudDialogflowV2IntentMessageCard) MarshalJSON() ([]byte, error) {
11653	type NoMethod GoogleCloudDialogflowV2IntentMessageCard
11654	raw := NoMethod(*s)
11655	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11656}
11657
11658// GoogleCloudDialogflowV2IntentMessageCardButton: Contains information
11659// about a button.
11660type GoogleCloudDialogflowV2IntentMessageCardButton struct {
11661	// Postback: Optional. The text to send back to the Dialogflow API or a
11662	// URI to open.
11663	Postback string `json:"postback,omitempty"`
11664
11665	// Text: Optional. The text to show on the button.
11666	Text string `json:"text,omitempty"`
11667
11668	// ForceSendFields is a list of field names (e.g. "Postback") to
11669	// unconditionally include in API requests. By default, fields with
11670	// empty or default values are omitted from API requests. However, any
11671	// non-pointer, non-interface field appearing in ForceSendFields will be
11672	// sent to the server regardless of whether the field is empty or not.
11673	// This may be used to include empty fields in Patch requests.
11674	ForceSendFields []string `json:"-"`
11675
11676	// NullFields is a list of field names (e.g. "Postback") to include in
11677	// API requests with the JSON null value. By default, fields with empty
11678	// values are omitted from API requests. However, any field with an
11679	// empty value appearing in NullFields will be sent to the server as
11680	// null. It is an error if a field in this list has a non-empty value.
11681	// This may be used to include null fields in Patch requests.
11682	NullFields []string `json:"-"`
11683}
11684
11685func (s *GoogleCloudDialogflowV2IntentMessageCardButton) MarshalJSON() ([]byte, error) {
11686	type NoMethod GoogleCloudDialogflowV2IntentMessageCardButton
11687	raw := NoMethod(*s)
11688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11689}
11690
11691// GoogleCloudDialogflowV2IntentMessageCarouselSelect: The card for
11692// presenting a carousel of options to select from.
11693type GoogleCloudDialogflowV2IntentMessageCarouselSelect struct {
11694	// Items: Required. Carousel items.
11695	Items []*GoogleCloudDialogflowV2IntentMessageCarouselSelectItem `json:"items,omitempty"`
11696
11697	// ForceSendFields is a list of field names (e.g. "Items") to
11698	// unconditionally include in API requests. By default, fields with
11699	// empty or default values are omitted from API requests. However, any
11700	// non-pointer, non-interface field appearing in ForceSendFields will be
11701	// sent to the server regardless of whether the field is empty or not.
11702	// This may be used to include empty fields in Patch requests.
11703	ForceSendFields []string `json:"-"`
11704
11705	// NullFields is a list of field names (e.g. "Items") to include in API
11706	// requests with the JSON null value. By default, fields with empty
11707	// values are omitted from API requests. However, any field with an
11708	// empty value appearing in NullFields will be sent to the server as
11709	// null. It is an error if a field in this list has a non-empty value.
11710	// This may be used to include null fields in Patch requests.
11711	NullFields []string `json:"-"`
11712}
11713
11714func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
11715	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelect
11716	raw := NoMethod(*s)
11717	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11718}
11719
11720// GoogleCloudDialogflowV2IntentMessageCarouselSelectItem: An item in
11721// the carousel.
11722type GoogleCloudDialogflowV2IntentMessageCarouselSelectItem struct {
11723	// Description: Optional. The body text of the card.
11724	Description string `json:"description,omitempty"`
11725
11726	// Image: Optional. The image to display.
11727	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11728
11729	// Info: Required. Additional info about the option item.
11730	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11731
11732	// Title: Required. Title of the carousel item.
11733	Title string `json:"title,omitempty"`
11734
11735	// ForceSendFields is a list of field names (e.g. "Description") to
11736	// unconditionally include in API requests. By default, fields with
11737	// empty or default values are omitted from API requests. However, any
11738	// non-pointer, non-interface field appearing in ForceSendFields will be
11739	// sent to the server regardless of whether the field is empty or not.
11740	// This may be used to include empty fields in Patch requests.
11741	ForceSendFields []string `json:"-"`
11742
11743	// NullFields is a list of field names (e.g. "Description") to include
11744	// in API requests with the JSON null value. By default, fields with
11745	// empty values are omitted from API requests. However, any field with
11746	// an empty value appearing in NullFields will be sent to the server as
11747	// null. It is an error if a field in this list has a non-empty value.
11748	// This may be used to include null fields in Patch requests.
11749	NullFields []string `json:"-"`
11750}
11751
11752func (s *GoogleCloudDialogflowV2IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
11753	type NoMethod GoogleCloudDialogflowV2IntentMessageCarouselSelectItem
11754	raw := NoMethod(*s)
11755	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11756}
11757
11758// GoogleCloudDialogflowV2IntentMessageColumnProperties: Column
11759// properties for TableCard.
11760type GoogleCloudDialogflowV2IntentMessageColumnProperties struct {
11761	// Header: Required. Column heading.
11762	Header string `json:"header,omitempty"`
11763
11764	// HorizontalAlignment: Optional. Defines text alignment for all cells
11765	// in this column.
11766	//
11767	// Possible values:
11768	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
11769	// edge of the column.
11770	//   "LEADING" - Text is aligned to the leading edge of the column.
11771	//   "CENTER" - Text is centered in the column.
11772	//   "TRAILING" - Text is aligned to the trailing edge of the column.
11773	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
11774
11775	// ForceSendFields is a list of field names (e.g. "Header") to
11776	// unconditionally include in API requests. By default, fields with
11777	// empty or default values are omitted from API requests. However, any
11778	// non-pointer, non-interface field appearing in ForceSendFields will be
11779	// sent to the server regardless of whether the field is empty or not.
11780	// This may be used to include empty fields in Patch requests.
11781	ForceSendFields []string `json:"-"`
11782
11783	// NullFields is a list of field names (e.g. "Header") to include in API
11784	// requests with the JSON null value. By default, fields with empty
11785	// values are omitted from API requests. However, any field with an
11786	// empty value appearing in NullFields will be sent to the server as
11787	// null. It is an error if a field in this list has a non-empty value.
11788	// This may be used to include null fields in Patch requests.
11789	NullFields []string `json:"-"`
11790}
11791
11792func (s *GoogleCloudDialogflowV2IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
11793	type NoMethod GoogleCloudDialogflowV2IntentMessageColumnProperties
11794	raw := NoMethod(*s)
11795	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11796}
11797
11798// GoogleCloudDialogflowV2IntentMessageImage: The image response
11799// message.
11800type GoogleCloudDialogflowV2IntentMessageImage struct {
11801	// AccessibilityText: Optional. A text description of the image to be
11802	// used for accessibility, e.g., screen readers.
11803	AccessibilityText string `json:"accessibilityText,omitempty"`
11804
11805	// ImageUri: Optional. The public URI to an image file.
11806	ImageUri string `json:"imageUri,omitempty"`
11807
11808	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
11809	// to unconditionally include in API requests. By default, fields with
11810	// empty or default values are omitted from API requests. However, any
11811	// non-pointer, non-interface field appearing in ForceSendFields will be
11812	// sent to the server regardless of whether the field is empty or not.
11813	// This may be used to include empty fields in Patch requests.
11814	ForceSendFields []string `json:"-"`
11815
11816	// NullFields is a list of field names (e.g. "AccessibilityText") to
11817	// include in API requests with the JSON null value. By default, fields
11818	// with empty values are omitted from API requests. However, any field
11819	// with an empty value appearing in NullFields will be sent to the
11820	// server as null. It is an error if a field in this list has a
11821	// non-empty value. This may be used to include null fields in Patch
11822	// requests.
11823	NullFields []string `json:"-"`
11824}
11825
11826func (s *GoogleCloudDialogflowV2IntentMessageImage) MarshalJSON() ([]byte, error) {
11827	type NoMethod GoogleCloudDialogflowV2IntentMessageImage
11828	raw := NoMethod(*s)
11829	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11830}
11831
11832// GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion: The suggestion
11833// chip message that allows the user to jump out to the app or website
11834// associated with this agent.
11835type GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion struct {
11836	// DestinationName: Required. The name of the app or site this chip is
11837	// linking to.
11838	DestinationName string `json:"destinationName,omitempty"`
11839
11840	// Uri: Required. The URI of the app or site to open when the user taps
11841	// the suggestion chip.
11842	Uri string `json:"uri,omitempty"`
11843
11844	// ForceSendFields is a list of field names (e.g. "DestinationName") to
11845	// unconditionally include in API requests. By default, fields with
11846	// empty or default values are omitted from API requests. However, any
11847	// non-pointer, non-interface field appearing in ForceSendFields will be
11848	// sent to the server regardless of whether the field is empty or not.
11849	// This may be used to include empty fields in Patch requests.
11850	ForceSendFields []string `json:"-"`
11851
11852	// NullFields is a list of field names (e.g. "DestinationName") to
11853	// include in API requests with the JSON null value. By default, fields
11854	// with empty values are omitted from API requests. However, any field
11855	// with an empty value appearing in NullFields will be sent to the
11856	// server as null. It is an error if a field in this list has a
11857	// non-empty value. This may be used to include null fields in Patch
11858	// requests.
11859	NullFields []string `json:"-"`
11860}
11861
11862func (s *GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
11863	type NoMethod GoogleCloudDialogflowV2IntentMessageLinkOutSuggestion
11864	raw := NoMethod(*s)
11865	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11866}
11867
11868// GoogleCloudDialogflowV2IntentMessageListSelect: The card for
11869// presenting a list of options to select from.
11870type GoogleCloudDialogflowV2IntentMessageListSelect struct {
11871	// Items: Required. List items.
11872	Items []*GoogleCloudDialogflowV2IntentMessageListSelectItem `json:"items,omitempty"`
11873
11874	// Subtitle: Optional. Subtitle of the list.
11875	Subtitle string `json:"subtitle,omitempty"`
11876
11877	// Title: Optional. The overall title of the list.
11878	Title string `json:"title,omitempty"`
11879
11880	// ForceSendFields is a list of field names (e.g. "Items") to
11881	// unconditionally include in API requests. By default, fields with
11882	// empty or default values are omitted from API requests. However, any
11883	// non-pointer, non-interface field appearing in ForceSendFields will be
11884	// sent to the server regardless of whether the field is empty or not.
11885	// This may be used to include empty fields in Patch requests.
11886	ForceSendFields []string `json:"-"`
11887
11888	// NullFields is a list of field names (e.g. "Items") to include in API
11889	// requests with the JSON null value. By default, fields with empty
11890	// values are omitted from API requests. However, any field with an
11891	// empty value appearing in NullFields will be sent to the server as
11892	// null. It is an error if a field in this list has a non-empty value.
11893	// This may be used to include null fields in Patch requests.
11894	NullFields []string `json:"-"`
11895}
11896
11897func (s *GoogleCloudDialogflowV2IntentMessageListSelect) MarshalJSON() ([]byte, error) {
11898	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelect
11899	raw := NoMethod(*s)
11900	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11901}
11902
11903// GoogleCloudDialogflowV2IntentMessageListSelectItem: An item in the
11904// list.
11905type GoogleCloudDialogflowV2IntentMessageListSelectItem struct {
11906	// Description: Optional. The main text describing the item.
11907	Description string `json:"description,omitempty"`
11908
11909	// Image: Optional. The image to display.
11910	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
11911
11912	// Info: Required. Additional information about this option.
11913	Info *GoogleCloudDialogflowV2IntentMessageSelectItemInfo `json:"info,omitempty"`
11914
11915	// Title: Required. The title of the list item.
11916	Title string `json:"title,omitempty"`
11917
11918	// ForceSendFields is a list of field names (e.g. "Description") to
11919	// unconditionally include in API requests. By default, fields with
11920	// empty or default values are omitted from API requests. However, any
11921	// non-pointer, non-interface field appearing in ForceSendFields will be
11922	// sent to the server regardless of whether the field is empty or not.
11923	// This may be used to include empty fields in Patch requests.
11924	ForceSendFields []string `json:"-"`
11925
11926	// NullFields is a list of field names (e.g. "Description") to include
11927	// in API requests with the JSON null value. By default, fields with
11928	// empty values are omitted from API requests. However, any field with
11929	// an empty value appearing in NullFields will be sent to the server as
11930	// null. It is an error if a field in this list has a non-empty value.
11931	// This may be used to include null fields in Patch requests.
11932	NullFields []string `json:"-"`
11933}
11934
11935func (s *GoogleCloudDialogflowV2IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
11936	type NoMethod GoogleCloudDialogflowV2IntentMessageListSelectItem
11937	raw := NoMethod(*s)
11938	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11939}
11940
11941// GoogleCloudDialogflowV2IntentMessageMediaContent: The media content
11942// card for Actions on Google.
11943type GoogleCloudDialogflowV2IntentMessageMediaContent struct {
11944	// MediaObjects: Required. List of media objects.
11945	MediaObjects []*GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
11946
11947	// MediaType: Optional. What type of media is the content (ie "audio").
11948	//
11949	// Possible values:
11950	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
11951	//   "AUDIO" - Response media type is audio.
11952	MediaType string `json:"mediaType,omitempty"`
11953
11954	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
11955	// unconditionally include in API requests. By default, fields with
11956	// empty or default values are omitted from API requests. However, any
11957	// non-pointer, non-interface field appearing in ForceSendFields will be
11958	// sent to the server regardless of whether the field is empty or not.
11959	// This may be used to include empty fields in Patch requests.
11960	ForceSendFields []string `json:"-"`
11961
11962	// NullFields is a list of field names (e.g. "MediaObjects") to include
11963	// in API requests with the JSON null value. By default, fields with
11964	// empty values are omitted from API requests. However, any field with
11965	// an empty value appearing in NullFields will be sent to the server as
11966	// null. It is an error if a field in this list has a non-empty value.
11967	// This may be used to include null fields in Patch requests.
11968	NullFields []string `json:"-"`
11969}
11970
11971func (s *GoogleCloudDialogflowV2IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
11972	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContent
11973	raw := NoMethod(*s)
11974	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
11975}
11976
11977// GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject:
11978// Response media object for media content card.
11979type GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject struct {
11980	// ContentUrl: Required. Url where the media is stored.
11981	ContentUrl string `json:"contentUrl,omitempty"`
11982
11983	// Description: Optional. Description of media card.
11984	Description string `json:"description,omitempty"`
11985
11986	// Icon: Optional. Icon to display above media content.
11987	Icon *GoogleCloudDialogflowV2IntentMessageImage `json:"icon,omitempty"`
11988
11989	// LargeImage: Optional. Image to display above media content.
11990	LargeImage *GoogleCloudDialogflowV2IntentMessageImage `json:"largeImage,omitempty"`
11991
11992	// Name: Required. Name of media card.
11993	Name string `json:"name,omitempty"`
11994
11995	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
11996	// unconditionally include in API requests. By default, fields with
11997	// empty or default values are omitted from API requests. However, any
11998	// non-pointer, non-interface field appearing in ForceSendFields will be
11999	// sent to the server regardless of whether the field is empty or not.
12000	// This may be used to include empty fields in Patch requests.
12001	ForceSendFields []string `json:"-"`
12002
12003	// NullFields is a list of field names (e.g. "ContentUrl") to include in
12004	// API requests with the JSON null value. By default, fields with empty
12005	// values are omitted from API requests. However, any field with an
12006	// empty value appearing in NullFields will be sent to the server as
12007	// null. It is an error if a field in this list has a non-empty value.
12008	// This may be used to include null fields in Patch requests.
12009	NullFields []string `json:"-"`
12010}
12011
12012func (s *GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
12013	type NoMethod GoogleCloudDialogflowV2IntentMessageMediaContentResponseMediaObject
12014	raw := NoMethod(*s)
12015	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12016}
12017
12018// GoogleCloudDialogflowV2IntentMessageQuickReplies: The quick replies
12019// response message.
12020type GoogleCloudDialogflowV2IntentMessageQuickReplies struct {
12021	// QuickReplies: Optional. The collection of quick replies.
12022	QuickReplies []string `json:"quickReplies,omitempty"`
12023
12024	// Title: Optional. The title of the collection of quick replies.
12025	Title string `json:"title,omitempty"`
12026
12027	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
12028	// unconditionally include in API requests. By default, fields with
12029	// empty or default values are omitted from API requests. However, any
12030	// non-pointer, non-interface field appearing in ForceSendFields will be
12031	// sent to the server regardless of whether the field is empty or not.
12032	// This may be used to include empty fields in Patch requests.
12033	ForceSendFields []string `json:"-"`
12034
12035	// NullFields is a list of field names (e.g. "QuickReplies") to include
12036	// in API requests with the JSON null value. By default, fields with
12037	// empty values are omitted from API requests. However, any field with
12038	// an empty value appearing in NullFields will be sent to the server as
12039	// null. It is an error if a field in this list has a non-empty value.
12040	// This may be used to include null fields in Patch requests.
12041	NullFields []string `json:"-"`
12042}
12043
12044func (s *GoogleCloudDialogflowV2IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
12045	type NoMethod GoogleCloudDialogflowV2IntentMessageQuickReplies
12046	raw := NoMethod(*s)
12047	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12048}
12049
12050// GoogleCloudDialogflowV2IntentMessageSelectItemInfo: Additional info
12051// about the select item for when it is triggered in a dialog.
12052type GoogleCloudDialogflowV2IntentMessageSelectItemInfo struct {
12053	// Key: Required. A unique key that will be sent back to the agent if
12054	// this response is given.
12055	Key string `json:"key,omitempty"`
12056
12057	// Synonyms: Optional. A list of synonyms that can also be used to
12058	// trigger this item in dialog.
12059	Synonyms []string `json:"synonyms,omitempty"`
12060
12061	// ForceSendFields is a list of field names (e.g. "Key") to
12062	// unconditionally include in API requests. By default, fields with
12063	// empty or default values are omitted from API requests. However, any
12064	// non-pointer, non-interface field appearing in ForceSendFields will be
12065	// sent to the server regardless of whether the field is empty or not.
12066	// This may be used to include empty fields in Patch requests.
12067	ForceSendFields []string `json:"-"`
12068
12069	// NullFields is a list of field names (e.g. "Key") to include in API
12070	// requests with the JSON null value. By default, fields with empty
12071	// values are omitted from API requests. However, any field with an
12072	// empty value appearing in NullFields will be sent to the server as
12073	// null. It is an error if a field in this list has a non-empty value.
12074	// This may be used to include null fields in Patch requests.
12075	NullFields []string `json:"-"`
12076}
12077
12078func (s *GoogleCloudDialogflowV2IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
12079	type NoMethod GoogleCloudDialogflowV2IntentMessageSelectItemInfo
12080	raw := NoMethod(*s)
12081	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12082}
12083
12084// GoogleCloudDialogflowV2IntentMessageSimpleResponse: The simple
12085// response message containing speech or text.
12086type GoogleCloudDialogflowV2IntentMessageSimpleResponse struct {
12087	// DisplayText: Optional. The text to display.
12088	DisplayText string `json:"displayText,omitempty"`
12089
12090	// Ssml: One of text_to_speech or ssml must be provided. Structured
12091	// spoken response to the user in the SSML format. Mutually exclusive
12092	// with text_to_speech.
12093	Ssml string `json:"ssml,omitempty"`
12094
12095	// TextToSpeech: One of text_to_speech or ssml must be provided. The
12096	// plain text of the speech output. Mutually exclusive with ssml.
12097	TextToSpeech string `json:"textToSpeech,omitempty"`
12098
12099	// ForceSendFields is a list of field names (e.g. "DisplayText") to
12100	// unconditionally include in API requests. By default, fields with
12101	// empty or default values are omitted from API requests. However, any
12102	// non-pointer, non-interface field appearing in ForceSendFields will be
12103	// sent to the server regardless of whether the field is empty or not.
12104	// This may be used to include empty fields in Patch requests.
12105	ForceSendFields []string `json:"-"`
12106
12107	// NullFields is a list of field names (e.g. "DisplayText") to include
12108	// in API requests with the JSON null value. By default, fields with
12109	// empty values are omitted from API requests. However, any field with
12110	// an empty value appearing in NullFields will be sent to the server as
12111	// null. It is an error if a field in this list has a non-empty value.
12112	// This may be used to include null fields in Patch requests.
12113	NullFields []string `json:"-"`
12114}
12115
12116func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
12117	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponse
12118	raw := NoMethod(*s)
12119	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12120}
12121
12122// GoogleCloudDialogflowV2IntentMessageSimpleResponses: The collection
12123// of simple response candidates. This message in
12124// `QueryResult.fulfillment_messages` and
12125// `WebhookResponse.fulfillment_messages` should contain only one
12126// `SimpleResponse`.
12127type GoogleCloudDialogflowV2IntentMessageSimpleResponses struct {
12128	// SimpleResponses: Required. The list of simple responses.
12129	SimpleResponses []*GoogleCloudDialogflowV2IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
12130
12131	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
12132	// unconditionally include in API requests. By default, fields with
12133	// empty or default values are omitted from API requests. However, any
12134	// non-pointer, non-interface field appearing in ForceSendFields will be
12135	// sent to the server regardless of whether the field is empty or not.
12136	// This may be used to include empty fields in Patch requests.
12137	ForceSendFields []string `json:"-"`
12138
12139	// NullFields is a list of field names (e.g. "SimpleResponses") to
12140	// include in API requests with the JSON null value. By default, fields
12141	// with empty values are omitted from API requests. However, any field
12142	// with an empty value appearing in NullFields will be sent to the
12143	// server as null. It is an error if a field in this list has a
12144	// non-empty value. This may be used to include null fields in Patch
12145	// requests.
12146	NullFields []string `json:"-"`
12147}
12148
12149func (s *GoogleCloudDialogflowV2IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
12150	type NoMethod GoogleCloudDialogflowV2IntentMessageSimpleResponses
12151	raw := NoMethod(*s)
12152	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12153}
12154
12155// GoogleCloudDialogflowV2IntentMessageSuggestion: The suggestion chip
12156// message that the user can tap to quickly post a reply to the
12157// conversation.
12158type GoogleCloudDialogflowV2IntentMessageSuggestion struct {
12159	// Title: Required. The text shown the in the suggestion chip.
12160	Title string `json:"title,omitempty"`
12161
12162	// ForceSendFields is a list of field names (e.g. "Title") to
12163	// unconditionally include in API requests. By default, fields with
12164	// empty or default values are omitted from API requests. However, any
12165	// non-pointer, non-interface field appearing in ForceSendFields will be
12166	// sent to the server regardless of whether the field is empty or not.
12167	// This may be used to include empty fields in Patch requests.
12168	ForceSendFields []string `json:"-"`
12169
12170	// NullFields is a list of field names (e.g. "Title") to include in API
12171	// requests with the JSON null value. By default, fields with empty
12172	// values are omitted from API requests. However, any field with an
12173	// empty value appearing in NullFields will be sent to the server as
12174	// null. It is an error if a field in this list has a non-empty value.
12175	// This may be used to include null fields in Patch requests.
12176	NullFields []string `json:"-"`
12177}
12178
12179func (s *GoogleCloudDialogflowV2IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
12180	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestion
12181	raw := NoMethod(*s)
12182	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12183}
12184
12185// GoogleCloudDialogflowV2IntentMessageSuggestions: The collection of
12186// suggestions.
12187type GoogleCloudDialogflowV2IntentMessageSuggestions struct {
12188	// Suggestions: Required. The list of suggested replies.
12189	Suggestions []*GoogleCloudDialogflowV2IntentMessageSuggestion `json:"suggestions,omitempty"`
12190
12191	// ForceSendFields is a list of field names (e.g. "Suggestions") to
12192	// unconditionally include in API requests. By default, fields with
12193	// empty or default values are omitted from API requests. However, any
12194	// non-pointer, non-interface field appearing in ForceSendFields will be
12195	// sent to the server regardless of whether the field is empty or not.
12196	// This may be used to include empty fields in Patch requests.
12197	ForceSendFields []string `json:"-"`
12198
12199	// NullFields is a list of field names (e.g. "Suggestions") to include
12200	// in API requests with the JSON null value. By default, fields with
12201	// empty values are omitted from API requests. However, any field with
12202	// an empty value appearing in NullFields will be sent to the server as
12203	// null. It is an error if a field in this list has a non-empty value.
12204	// This may be used to include null fields in Patch requests.
12205	NullFields []string `json:"-"`
12206}
12207
12208func (s *GoogleCloudDialogflowV2IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
12209	type NoMethod GoogleCloudDialogflowV2IntentMessageSuggestions
12210	raw := NoMethod(*s)
12211	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12212}
12213
12214// GoogleCloudDialogflowV2IntentMessageTableCard: Table card for Actions
12215// on Google.
12216type GoogleCloudDialogflowV2IntentMessageTableCard struct {
12217	// Buttons: Optional. List of buttons for the card.
12218	Buttons []*GoogleCloudDialogflowV2IntentMessageBasicCardButton `json:"buttons,omitempty"`
12219
12220	// ColumnProperties: Optional. Display properties for the columns in
12221	// this table.
12222	ColumnProperties []*GoogleCloudDialogflowV2IntentMessageColumnProperties `json:"columnProperties,omitempty"`
12223
12224	// Image: Optional. Image which should be displayed on the card.
12225	Image *GoogleCloudDialogflowV2IntentMessageImage `json:"image,omitempty"`
12226
12227	// Rows: Optional. Rows in this table of data.
12228	Rows []*GoogleCloudDialogflowV2IntentMessageTableCardRow `json:"rows,omitempty"`
12229
12230	// Subtitle: Optional. Subtitle to the title.
12231	Subtitle string `json:"subtitle,omitempty"`
12232
12233	// Title: Required. Title of the card.
12234	Title string `json:"title,omitempty"`
12235
12236	// ForceSendFields is a list of field names (e.g. "Buttons") to
12237	// unconditionally include in API requests. By default, fields with
12238	// empty or default values are omitted from API requests. However, any
12239	// non-pointer, non-interface field appearing in ForceSendFields will be
12240	// sent to the server regardless of whether the field is empty or not.
12241	// This may be used to include empty fields in Patch requests.
12242	ForceSendFields []string `json:"-"`
12243
12244	// NullFields is a list of field names (e.g. "Buttons") to include in
12245	// API requests with the JSON null value. By default, fields with empty
12246	// values are omitted from API requests. However, any field with an
12247	// empty value appearing in NullFields will be sent to the server as
12248	// null. It is an error if a field in this list has a non-empty value.
12249	// This may be used to include null fields in Patch requests.
12250	NullFields []string `json:"-"`
12251}
12252
12253func (s *GoogleCloudDialogflowV2IntentMessageTableCard) MarshalJSON() ([]byte, error) {
12254	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCard
12255	raw := NoMethod(*s)
12256	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12257}
12258
12259// GoogleCloudDialogflowV2IntentMessageTableCardCell: Cell of
12260// TableCardRow.
12261type GoogleCloudDialogflowV2IntentMessageTableCardCell struct {
12262	// Text: Required. Text in this cell.
12263	Text string `json:"text,omitempty"`
12264
12265	// ForceSendFields is a list of field names (e.g. "Text") to
12266	// unconditionally include in API requests. By default, fields with
12267	// empty or default values are omitted from API requests. However, any
12268	// non-pointer, non-interface field appearing in ForceSendFields will be
12269	// sent to the server regardless of whether the field is empty or not.
12270	// This may be used to include empty fields in Patch requests.
12271	ForceSendFields []string `json:"-"`
12272
12273	// NullFields is a list of field names (e.g. "Text") to include in API
12274	// requests with the JSON null value. By default, fields with empty
12275	// values are omitted from API requests. However, any field with an
12276	// empty value appearing in NullFields will be sent to the server as
12277	// null. It is an error if a field in this list has a non-empty value.
12278	// This may be used to include null fields in Patch requests.
12279	NullFields []string `json:"-"`
12280}
12281
12282func (s *GoogleCloudDialogflowV2IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
12283	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardCell
12284	raw := NoMethod(*s)
12285	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12286}
12287
12288// GoogleCloudDialogflowV2IntentMessageTableCardRow: Row of TableCard.
12289type GoogleCloudDialogflowV2IntentMessageTableCardRow struct {
12290	// Cells: Optional. List of cells that make up this row.
12291	Cells []*GoogleCloudDialogflowV2IntentMessageTableCardCell `json:"cells,omitempty"`
12292
12293	// DividerAfter: Optional. Whether to add a visual divider after this
12294	// row.
12295	DividerAfter bool `json:"dividerAfter,omitempty"`
12296
12297	// ForceSendFields is a list of field names (e.g. "Cells") to
12298	// unconditionally include in API requests. By default, fields with
12299	// empty or default values are omitted from API requests. However, any
12300	// non-pointer, non-interface field appearing in ForceSendFields will be
12301	// sent to the server regardless of whether the field is empty or not.
12302	// This may be used to include empty fields in Patch requests.
12303	ForceSendFields []string `json:"-"`
12304
12305	// NullFields is a list of field names (e.g. "Cells") to include in API
12306	// requests with the JSON null value. By default, fields with empty
12307	// values are omitted from API requests. However, any field with an
12308	// empty value appearing in NullFields will be sent to the server as
12309	// null. It is an error if a field in this list has a non-empty value.
12310	// This may be used to include null fields in Patch requests.
12311	NullFields []string `json:"-"`
12312}
12313
12314func (s *GoogleCloudDialogflowV2IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
12315	type NoMethod GoogleCloudDialogflowV2IntentMessageTableCardRow
12316	raw := NoMethod(*s)
12317	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12318}
12319
12320// GoogleCloudDialogflowV2IntentMessageText: The text response message.
12321type GoogleCloudDialogflowV2IntentMessageText struct {
12322	// Text: Optional. The collection of the agent's responses.
12323	Text []string `json:"text,omitempty"`
12324
12325	// ForceSendFields is a list of field names (e.g. "Text") to
12326	// unconditionally include in API requests. By default, fields with
12327	// empty or default values are omitted from API requests. However, any
12328	// non-pointer, non-interface field appearing in ForceSendFields will be
12329	// sent to the server regardless of whether the field is empty or not.
12330	// This may be used to include empty fields in Patch requests.
12331	ForceSendFields []string `json:"-"`
12332
12333	// NullFields is a list of field names (e.g. "Text") to include in API
12334	// requests with the JSON null value. By default, fields with empty
12335	// values are omitted from API requests. However, any field with an
12336	// empty value appearing in NullFields will be sent to the server as
12337	// null. It is an error if a field in this list has a non-empty value.
12338	// This may be used to include null fields in Patch requests.
12339	NullFields []string `json:"-"`
12340}
12341
12342func (s *GoogleCloudDialogflowV2IntentMessageText) MarshalJSON() ([]byte, error) {
12343	type NoMethod GoogleCloudDialogflowV2IntentMessageText
12344	raw := NoMethod(*s)
12345	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12346}
12347
12348// GoogleCloudDialogflowV2IntentParameter: Represents intent parameters.
12349type GoogleCloudDialogflowV2IntentParameter struct {
12350	// DefaultValue: Optional. The default value to use when the `value`
12351	// yields an empty result. Default values can be extracted from contexts
12352	// by using the following syntax: `#context_name.parameter_name`.
12353	DefaultValue string `json:"defaultValue,omitempty"`
12354
12355	// DisplayName: Required. The name of the parameter.
12356	DisplayName string `json:"displayName,omitempty"`
12357
12358	// EntityTypeDisplayName: Optional. The name of the entity type,
12359	// prefixed with `@`, that describes values of the parameter. If the
12360	// parameter is required, this must be provided.
12361	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
12362
12363	// IsList: Optional. Indicates whether the parameter represents a list
12364	// of values.
12365	IsList bool `json:"isList,omitempty"`
12366
12367	// Mandatory: Optional. Indicates whether the parameter is required.
12368	// That is, whether the intent cannot be completed without collecting
12369	// the parameter value.
12370	Mandatory bool `json:"mandatory,omitempty"`
12371
12372	// Name: The unique identifier of this parameter.
12373	Name string `json:"name,omitempty"`
12374
12375	// Prompts: Optional. The collection of prompts that the agent can
12376	// present to the user in order to collect a value for the parameter.
12377	Prompts []string `json:"prompts,omitempty"`
12378
12379	// Value: Optional. The definition of the parameter value. It can be: -
12380	// a constant string, - a parameter value defined as `$parameter_name`,
12381	// - an original parameter value defined as `$parameter_name.original`,
12382	// - a parameter value from some context defined as
12383	// `#context_name.parameter_name`.
12384	Value string `json:"value,omitempty"`
12385
12386	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
12387	// unconditionally include in API requests. By default, fields with
12388	// empty or default values are omitted from API requests. However, any
12389	// non-pointer, non-interface field appearing in ForceSendFields will be
12390	// sent to the server regardless of whether the field is empty or not.
12391	// This may be used to include empty fields in Patch requests.
12392	ForceSendFields []string `json:"-"`
12393
12394	// NullFields is a list of field names (e.g. "DefaultValue") to include
12395	// in API requests with the JSON null value. By default, fields with
12396	// empty values are omitted from API requests. However, any field with
12397	// an empty value appearing in NullFields will be sent to the server as
12398	// null. It is an error if a field in this list has a non-empty value.
12399	// This may be used to include null fields in Patch requests.
12400	NullFields []string `json:"-"`
12401}
12402
12403func (s *GoogleCloudDialogflowV2IntentParameter) MarshalJSON() ([]byte, error) {
12404	type NoMethod GoogleCloudDialogflowV2IntentParameter
12405	raw := NoMethod(*s)
12406	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12407}
12408
12409// GoogleCloudDialogflowV2IntentTrainingPhrase: Represents an example
12410// that the agent is trained on.
12411type GoogleCloudDialogflowV2IntentTrainingPhrase struct {
12412	// Name: Output only. The unique identifier of this training phrase.
12413	Name string `json:"name,omitempty"`
12414
12415	// Parts: Required. The ordered list of training phrase parts. The parts
12416	// are concatenated in order to form the training phrase. Note: The API
12417	// does not automatically annotate training phrases like the Dialogflow
12418	// Console does. Note: Do not forget to include whitespace at part
12419	// boundaries, so the training phrase is well formatted when the parts
12420	// are concatenated. If the training phrase does not need to be
12421	// annotated with parameters, you just need a single part with only the
12422	// Part.text field set. If you want to annotate the training phrase, you
12423	// must create multiple parts, where the fields of each part are
12424	// populated in one of two ways: - `Part.text` is set to a part of the
12425	// phrase that has no parameters. - `Part.text` is set to a part of the
12426	// phrase that you want to annotate, and the `entity_type`, `alias`, and
12427	// `user_defined` fields are all set.
12428	Parts []*GoogleCloudDialogflowV2IntentTrainingPhrasePart `json:"parts,omitempty"`
12429
12430	// TimesAddedCount: Optional. Indicates how many times this example was
12431	// added to the intent. Each time a developer adds an existing sample by
12432	// editing an intent or training, this counter is increased.
12433	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
12434
12435	// Type: Required. The type of the training phrase.
12436	//
12437	// Possible values:
12438	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
12439	// used.
12440	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
12441	// but example parts can be annotated with entity types.
12442	//   "TEMPLATE" - Templates are not annotated with entity types, but
12443	// they can contain @-prefixed entity type names as substrings. Template
12444	// mode has been deprecated. Example mode is the only supported way to
12445	// create new training phrases. If you have existing training phrases
12446	// that you've created in template mode, those will continue to work.
12447	Type string `json:"type,omitempty"`
12448
12449	// ForceSendFields is a list of field names (e.g. "Name") to
12450	// unconditionally include in API requests. By default, fields with
12451	// empty or default values are omitted from API requests. However, any
12452	// non-pointer, non-interface field appearing in ForceSendFields will be
12453	// sent to the server regardless of whether the field is empty or not.
12454	// This may be used to include empty fields in Patch requests.
12455	ForceSendFields []string `json:"-"`
12456
12457	// NullFields is a list of field names (e.g. "Name") to include in API
12458	// requests with the JSON null value. By default, fields with empty
12459	// values are omitted from API requests. However, any field with an
12460	// empty value appearing in NullFields will be sent to the server as
12461	// null. It is an error if a field in this list has a non-empty value.
12462	// This may be used to include null fields in Patch requests.
12463	NullFields []string `json:"-"`
12464}
12465
12466func (s *GoogleCloudDialogflowV2IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
12467	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrase
12468	raw := NoMethod(*s)
12469	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12470}
12471
12472// GoogleCloudDialogflowV2IntentTrainingPhrasePart: Represents a part of
12473// a training phrase.
12474type GoogleCloudDialogflowV2IntentTrainingPhrasePart struct {
12475	// Alias: Optional. The parameter name for the value extracted from the
12476	// annotated part of the example. This field is required for annotated
12477	// parts of the training phrase.
12478	Alias string `json:"alias,omitempty"`
12479
12480	// EntityType: Optional. The entity type name prefixed with `@`. This
12481	// field is required for annotated parts of the training phrase.
12482	EntityType string `json:"entityType,omitempty"`
12483
12484	// Text: Required. The text for this part.
12485	Text string `json:"text,omitempty"`
12486
12487	// UserDefined: Optional. Indicates whether the text was manually
12488	// annotated. This field is set to true when the Dialogflow Console is
12489	// used to manually annotate the part. When creating an annotated part
12490	// with the API, you must set this to true.
12491	UserDefined bool `json:"userDefined,omitempty"`
12492
12493	// ForceSendFields is a list of field names (e.g. "Alias") to
12494	// unconditionally include in API requests. By default, fields with
12495	// empty or default values are omitted from API requests. However, any
12496	// non-pointer, non-interface field appearing in ForceSendFields will be
12497	// sent to the server regardless of whether the field is empty or not.
12498	// This may be used to include empty fields in Patch requests.
12499	ForceSendFields []string `json:"-"`
12500
12501	// NullFields is a list of field names (e.g. "Alias") to include in API
12502	// requests with the JSON null value. By default, fields with empty
12503	// values are omitted from API requests. However, any field with an
12504	// empty value appearing in NullFields will be sent to the server as
12505	// null. It is an error if a field in this list has a non-empty value.
12506	// This may be used to include null fields in Patch requests.
12507	NullFields []string `json:"-"`
12508}
12509
12510func (s *GoogleCloudDialogflowV2IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
12511	type NoMethod GoogleCloudDialogflowV2IntentTrainingPhrasePart
12512	raw := NoMethod(*s)
12513	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12514}
12515
12516// GoogleCloudDialogflowV2KnowledgeOperationMetadata: Metadata in
12517// google::longrunning::Operation for Knowledge operations.
12518type GoogleCloudDialogflowV2KnowledgeOperationMetadata struct {
12519	// State: Output only. The current state of this operation.
12520	//
12521	// Possible values:
12522	//   "STATE_UNSPECIFIED" - State unspecified.
12523	//   "PENDING" - The operation has been created.
12524	//   "RUNNING" - The operation is currently running.
12525	//   "DONE" - The operation is done, either cancelled or completed.
12526	State string `json:"state,omitempty"`
12527
12528	// ForceSendFields is a list of field names (e.g. "State") to
12529	// unconditionally include in API requests. By default, fields with
12530	// empty or default values are omitted from API requests. However, any
12531	// non-pointer, non-interface field appearing in ForceSendFields will be
12532	// sent to the server regardless of whether the field is empty or not.
12533	// This may be used to include empty fields in Patch requests.
12534	ForceSendFields []string `json:"-"`
12535
12536	// NullFields is a list of field names (e.g. "State") to include in API
12537	// requests with the JSON null value. By default, fields with empty
12538	// values are omitted from API requests. However, any field with an
12539	// empty value appearing in NullFields will be sent to the server as
12540	// null. It is an error if a field in this list has a non-empty value.
12541	// This may be used to include null fields in Patch requests.
12542	NullFields []string `json:"-"`
12543}
12544
12545func (s *GoogleCloudDialogflowV2KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
12546	type NoMethod GoogleCloudDialogflowV2KnowledgeOperationMetadata
12547	raw := NoMethod(*s)
12548	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12549}
12550
12551// GoogleCloudDialogflowV2Message: Represents a message posted into a
12552// conversation.
12553type GoogleCloudDialogflowV2Message struct {
12554	// Content: Required. The message content.
12555	Content string `json:"content,omitempty"`
12556
12557	// CreateTime: Output only. The time when the message was created.
12558	CreateTime string `json:"createTime,omitempty"`
12559
12560	// LanguageCode: Optional. The message language. This should be a BCP-47
12561	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
12562	// "en-US".
12563	LanguageCode string `json:"languageCode,omitempty"`
12564
12565	// MessageAnnotation: Output only. The annotation for the message.
12566	MessageAnnotation *GoogleCloudDialogflowV2MessageAnnotation `json:"messageAnnotation,omitempty"`
12567
12568	// Name: The unique identifier of the message. Format:
12569	// `projects//locations//conversations//messages/`.
12570	Name string `json:"name,omitempty"`
12571
12572	// Participant: Output only. The participant that sends this message.
12573	Participant string `json:"participant,omitempty"`
12574
12575	// ParticipantRole: Output only. The role of the participant.
12576	//
12577	// Possible values:
12578	//   "ROLE_UNSPECIFIED" - Participant role not set.
12579	//   "HUMAN_AGENT" - Participant is a human agent.
12580	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
12581	// Dialogflow agent.
12582	//   "END_USER" - Participant is an end user that has called or chatted
12583	// with Dialogflow services.
12584	ParticipantRole string `json:"participantRole,omitempty"`
12585
12586	// ForceSendFields is a list of field names (e.g. "Content") to
12587	// unconditionally include in API requests. By default, fields with
12588	// empty or default values are omitted from API requests. However, any
12589	// non-pointer, non-interface field appearing in ForceSendFields will be
12590	// sent to the server regardless of whether the field is empty or not.
12591	// This may be used to include empty fields in Patch requests.
12592	ForceSendFields []string `json:"-"`
12593
12594	// NullFields is a list of field names (e.g. "Content") to include in
12595	// API requests with the JSON null value. By default, fields with empty
12596	// values are omitted from API requests. However, any field with an
12597	// empty value appearing in NullFields will be sent to the server as
12598	// null. It is an error if a field in this list has a non-empty value.
12599	// This may be used to include null fields in Patch requests.
12600	NullFields []string `json:"-"`
12601}
12602
12603func (s *GoogleCloudDialogflowV2Message) MarshalJSON() ([]byte, error) {
12604	type NoMethod GoogleCloudDialogflowV2Message
12605	raw := NoMethod(*s)
12606	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12607}
12608
12609// GoogleCloudDialogflowV2MessageAnnotation: Represents the result of
12610// annotation for the message.
12611type GoogleCloudDialogflowV2MessageAnnotation struct {
12612	// ContainEntities: Indicates whether the text message contains
12613	// entities.
12614	ContainEntities bool `json:"containEntities,omitempty"`
12615
12616	// Parts: The collection of annotated message parts ordered by their
12617	// position in the message. You can recover the annotated message by
12618	// concatenating [AnnotatedMessagePart.text].
12619	Parts []*GoogleCloudDialogflowV2AnnotatedMessagePart `json:"parts,omitempty"`
12620
12621	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
12622	// unconditionally include in API requests. By default, fields with
12623	// empty or default values are omitted from API requests. However, any
12624	// non-pointer, non-interface field appearing in ForceSendFields will be
12625	// sent to the server regardless of whether the field is empty or not.
12626	// This may be used to include empty fields in Patch requests.
12627	ForceSendFields []string `json:"-"`
12628
12629	// NullFields is a list of field names (e.g. "ContainEntities") to
12630	// include in API requests with the JSON null value. By default, fields
12631	// with empty values are omitted from API requests. However, any field
12632	// with an empty value appearing in NullFields will be sent to the
12633	// server as null. It is an error if a field in this list has a
12634	// non-empty value. This may be used to include null fields in Patch
12635	// requests.
12636	NullFields []string `json:"-"`
12637}
12638
12639func (s *GoogleCloudDialogflowV2MessageAnnotation) MarshalJSON() ([]byte, error) {
12640	type NoMethod GoogleCloudDialogflowV2MessageAnnotation
12641	raw := NoMethod(*s)
12642	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12643}
12644
12645// GoogleCloudDialogflowV2OriginalDetectIntentRequest: Represents the
12646// contents of the original request that was passed to the
12647// `[Streaming]DetectIntent` call.
12648type GoogleCloudDialogflowV2OriginalDetectIntentRequest struct {
12649	// Payload: Optional. This field is set to the value of the
12650	// `QueryParameters.payload` field passed in the request. Some
12651	// integrations that query a Dialogflow agent may provide additional
12652	// information in the payload. In particular, for the Dialogflow Phone
12653	// Gateway integration, this field has the form: { "telephony": {
12654	// "caller_id": "+18558363987" } } Note: The caller ID field
12655	// (`caller_id`) will be redacted for Trial Edition agents and populated
12656	// with the caller ID in E.164 format
12657	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
12658	Payload googleapi.RawMessage `json:"payload,omitempty"`
12659
12660	// Source: The source of this request, e.g., `google`, `facebook`,
12661	// `slack`. It is set by Dialogflow-owned servers.
12662	Source string `json:"source,omitempty"`
12663
12664	// Version: Optional. The version of the protocol used for this request.
12665	// This field is AoG-specific.
12666	Version string `json:"version,omitempty"`
12667
12668	// ForceSendFields is a list of field names (e.g. "Payload") to
12669	// unconditionally include in API requests. By default, fields with
12670	// empty or default values are omitted from API requests. However, any
12671	// non-pointer, non-interface field appearing in ForceSendFields will be
12672	// sent to the server regardless of whether the field is empty or not.
12673	// This may be used to include empty fields in Patch requests.
12674	ForceSendFields []string `json:"-"`
12675
12676	// NullFields is a list of field names (e.g. "Payload") to include in
12677	// API requests with the JSON null value. By default, fields with empty
12678	// values are omitted from API requests. However, any field with an
12679	// empty value appearing in NullFields will be sent to the server as
12680	// null. It is an error if a field in this list has a non-empty value.
12681	// This may be used to include null fields in Patch requests.
12682	NullFields []string `json:"-"`
12683}
12684
12685func (s *GoogleCloudDialogflowV2OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
12686	type NoMethod GoogleCloudDialogflowV2OriginalDetectIntentRequest
12687	raw := NoMethod(*s)
12688	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12689}
12690
12691// GoogleCloudDialogflowV2QueryResult: Represents the result of
12692// conversational query or event processing.
12693type GoogleCloudDialogflowV2QueryResult struct {
12694	// Action: The action name from the matched intent.
12695	Action string `json:"action,omitempty"`
12696
12697	// AllRequiredParamsPresent: This field is set to: - `false` if the
12698	// matched intent has required parameters and not all of the required
12699	// parameter values have been collected. - `true` if all required
12700	// parameter values have been collected, or if the matched intent
12701	// doesn't contain any required parameters.
12702	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
12703
12704	// CancelsSlotFilling: Indicates whether the conversational query
12705	// triggers a cancellation for slot filling.
12706	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
12707
12708	// DiagnosticInfo: Free-form diagnostic information for the associated
12709	// detect intent request. The fields of this data can change without
12710	// notice, so you should not write code that depends on its structure.
12711	// The data may contain: - webhook call latency - webhook errors
12712	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
12713
12714	// FulfillmentMessages: The collection of rich messages to present to
12715	// the user.
12716	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
12717
12718	// FulfillmentText: The text to be pronounced to the user or shown on
12719	// the screen. Note: This is a legacy field, `fulfillment_messages`
12720	// should be preferred.
12721	FulfillmentText string `json:"fulfillmentText,omitempty"`
12722
12723	// Intent: The intent that matched the conversational query. Some, not
12724	// all fields are filled in this message, including but not limited to:
12725	// `name`, `display_name`, `end_interaction` and `is_fallback`.
12726	Intent *GoogleCloudDialogflowV2Intent `json:"intent,omitempty"`
12727
12728	// IntentDetectionConfidence: The intent detection confidence. Values
12729	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
12730	// This value is for informational purpose only and is only used to help
12731	// match the best intent within the classification threshold. This value
12732	// may change for the same end-user expression at any time due to a
12733	// model retraining or change in implementation. If there are `multiple
12734	// knowledge_answers` messages, this value is set to the greatest
12735	// `knowledgeAnswers.match_confidence` value in the list.
12736	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
12737
12738	// LanguageCode: The language that was triggered during intent
12739	// detection. See Language Support
12740	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
12741	// list of the currently supported language codes.
12742	LanguageCode string `json:"languageCode,omitempty"`
12743
12744	// OutputContexts: The collection of output contexts. If applicable,
12745	// `output_contexts.parameters` contains entries with name `.original`
12746	// containing the original parameter values before the query.
12747	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
12748
12749	// Parameters: The collection of extracted parameters. Depending on your
12750	// protocol or client library language, this is a map, associative
12751	// array, symbol table, dictionary, or JSON object composed of a
12752	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
12753	// MapKey value: parameter name - MapValue type: - If parameter's entity
12754	// type is a composite entity: map - Else: depending on parameter value
12755	// type, could be one of string, number, boolean, null, list or map -
12756	// MapValue value: - If parameter's entity type is a composite entity:
12757	// map from composite entity property names to property values - Else:
12758	// parameter value
12759	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
12760
12761	// QueryText: The original conversational query text: - If natural
12762	// language text was provided as input, `query_text` contains a copy of
12763	// the input. - If natural language speech audio was provided as input,
12764	// `query_text` contains the speech recognition result. If speech
12765	// recognizer produced multiple alternatives, a particular one is
12766	// picked. - If automatic spell correction is enabled, `query_text` will
12767	// contain the corrected user input.
12768	QueryText string `json:"queryText,omitempty"`
12769
12770	// SentimentAnalysisResult: The sentiment analysis result, which depends
12771	// on the `sentiment_analysis_request_config` specified in the request.
12772	SentimentAnalysisResult *GoogleCloudDialogflowV2SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
12773
12774	// SpeechRecognitionConfidence: The Speech recognition confidence
12775	// between 0.0 and 1.0. A higher number indicates an estimated greater
12776	// likelihood that the recognized words are correct. The default of 0.0
12777	// is a sentinel value indicating that confidence was not set. This
12778	// field is not guaranteed to be accurate or set. In particular this
12779	// field isn't set for StreamingDetectIntent since the streaming
12780	// endpoint has separate confidence estimates per portion of the audio
12781	// in StreamingRecognitionResult.
12782	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
12783
12784	// WebhookPayload: If the query was fulfilled by a webhook call, this
12785	// field is set to the value of the `payload` field returned in the
12786	// webhook response.
12787	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
12788
12789	// WebhookSource: If the query was fulfilled by a webhook call, this
12790	// field is set to the value of the `source` field returned in the
12791	// webhook response.
12792	WebhookSource string `json:"webhookSource,omitempty"`
12793
12794	// ForceSendFields is a list of field names (e.g. "Action") to
12795	// unconditionally include in API requests. By default, fields with
12796	// empty or default values are omitted from API requests. However, any
12797	// non-pointer, non-interface field appearing in ForceSendFields will be
12798	// sent to the server regardless of whether the field is empty or not.
12799	// This may be used to include empty fields in Patch requests.
12800	ForceSendFields []string `json:"-"`
12801
12802	// NullFields is a list of field names (e.g. "Action") to include in API
12803	// requests with the JSON null value. By default, fields with empty
12804	// values are omitted from API requests. However, any field with an
12805	// empty value appearing in NullFields will be sent to the server as
12806	// null. It is an error if a field in this list has a non-empty value.
12807	// This may be used to include null fields in Patch requests.
12808	NullFields []string `json:"-"`
12809}
12810
12811func (s *GoogleCloudDialogflowV2QueryResult) MarshalJSON() ([]byte, error) {
12812	type NoMethod GoogleCloudDialogflowV2QueryResult
12813	raw := NoMethod(*s)
12814	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12815}
12816
12817func (s *GoogleCloudDialogflowV2QueryResult) UnmarshalJSON(data []byte) error {
12818	type NoMethod GoogleCloudDialogflowV2QueryResult
12819	var s1 struct {
12820		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
12821		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
12822		*NoMethod
12823	}
12824	s1.NoMethod = (*NoMethod)(s)
12825	if err := json.Unmarshal(data, &s1); err != nil {
12826		return err
12827	}
12828	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
12829	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
12830	return nil
12831}
12832
12833// GoogleCloudDialogflowV2Sentiment: The sentiment, such as
12834// positive/negative feeling or association, for a unit of analysis,
12835// such as the query text.
12836type GoogleCloudDialogflowV2Sentiment struct {
12837	// Magnitude: A non-negative number in the [0, +inf) range, which
12838	// represents the absolute magnitude of sentiment, regardless of score
12839	// (positive or negative).
12840	Magnitude float64 `json:"magnitude,omitempty"`
12841
12842	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
12843	// (positive sentiment).
12844	Score float64 `json:"score,omitempty"`
12845
12846	// ForceSendFields is a list of field names (e.g. "Magnitude") to
12847	// unconditionally include in API requests. By default, fields with
12848	// empty or default values are omitted from API requests. However, any
12849	// non-pointer, non-interface field appearing in ForceSendFields will be
12850	// sent to the server regardless of whether the field is empty or not.
12851	// This may be used to include empty fields in Patch requests.
12852	ForceSendFields []string `json:"-"`
12853
12854	// NullFields is a list of field names (e.g. "Magnitude") to include in
12855	// API requests with the JSON null value. By default, fields with empty
12856	// values are omitted from API requests. However, any field with an
12857	// empty value appearing in NullFields will be sent to the server as
12858	// null. It is an error if a field in this list has a non-empty value.
12859	// This may be used to include null fields in Patch requests.
12860	NullFields []string `json:"-"`
12861}
12862
12863func (s *GoogleCloudDialogflowV2Sentiment) MarshalJSON() ([]byte, error) {
12864	type NoMethod GoogleCloudDialogflowV2Sentiment
12865	raw := NoMethod(*s)
12866	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12867}
12868
12869func (s *GoogleCloudDialogflowV2Sentiment) UnmarshalJSON(data []byte) error {
12870	type NoMethod GoogleCloudDialogflowV2Sentiment
12871	var s1 struct {
12872		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
12873		Score     gensupport.JSONFloat64 `json:"score"`
12874		*NoMethod
12875	}
12876	s1.NoMethod = (*NoMethod)(s)
12877	if err := json.Unmarshal(data, &s1); err != nil {
12878		return err
12879	}
12880	s.Magnitude = float64(s1.Magnitude)
12881	s.Score = float64(s1.Score)
12882	return nil
12883}
12884
12885// GoogleCloudDialogflowV2SentimentAnalysisResult: The result of
12886// sentiment analysis. Sentiment analysis inspects user input and
12887// identifies the prevailing subjective opinion, especially to determine
12888// a user's attitude as positive, negative, or neutral. For
12889// Participants.DetectIntent, it needs to be configured in
12890// DetectIntentRequest.query_params. For
12891// Participants.StreamingDetectIntent, it needs to be configured in
12892// StreamingDetectIntentRequest.query_params. And for
12893// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
12894// it needs to be configured in
12895// ConversationProfile.human_agent_assistant_config
12896type GoogleCloudDialogflowV2SentimentAnalysisResult struct {
12897	// QueryTextSentiment: The sentiment analysis result for `query_text`.
12898	QueryTextSentiment *GoogleCloudDialogflowV2Sentiment `json:"queryTextSentiment,omitempty"`
12899
12900	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
12901	// to unconditionally include in API requests. By default, fields with
12902	// empty or default values are omitted from API requests. However, any
12903	// non-pointer, non-interface field appearing in ForceSendFields will be
12904	// sent to the server regardless of whether the field is empty or not.
12905	// This may be used to include empty fields in Patch requests.
12906	ForceSendFields []string `json:"-"`
12907
12908	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
12909	// include in API requests with the JSON null value. By default, fields
12910	// with empty values are omitted from API requests. However, any field
12911	// with an empty value appearing in NullFields will be sent to the
12912	// server as null. It is an error if a field in this list has a
12913	// non-empty value. This may be used to include null fields in Patch
12914	// requests.
12915	NullFields []string `json:"-"`
12916}
12917
12918func (s *GoogleCloudDialogflowV2SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
12919	type NoMethod GoogleCloudDialogflowV2SentimentAnalysisResult
12920	raw := NoMethod(*s)
12921	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12922}
12923
12924// GoogleCloudDialogflowV2SessionEntityType: A session represents a
12925// conversation between a Dialogflow agent and an end-user. You can
12926// create special entities, called session entities, during a session.
12927// Session entities can extend or replace custom entity types and only
12928// exist during the session that they were created for. All session
12929// data, including session entities, is stored by Dialogflow for 20
12930// minutes. For more information, see the session entity guide
12931// (https://cloud.google.com/dialogflow/docs/entities-session).
12932type GoogleCloudDialogflowV2SessionEntityType struct {
12933	// Entities: Required. The collection of entities associated with this
12934	// session entity type.
12935	Entities []*GoogleCloudDialogflowV2EntityTypeEntity `json:"entities,omitempty"`
12936
12937	// EntityOverrideMode: Required. Indicates whether the additional data
12938	// should override or supplement the custom entity type definition.
12939	//
12940	// Possible values:
12941	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
12942	// should be never used.
12943	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
12944	// entities overrides the collection of entities in the corresponding
12945	// custom entity type.
12946	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
12947	// entities extends the collection of entities in the corresponding
12948	// custom entity type. Note: Even in this override mode calls to
12949	// `ListSessionEntityTypes`, `GetSessionEntityType`,
12950	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
12951	// the additional entities added in this session entity type. If you
12952	// want to get the supplemented list, please call
12953	// EntityTypes.GetEntityType on the custom entity type and merge.
12954	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
12955
12956	// Name: Required. The unique identifier of this session entity type.
12957	// Format: `projects//agent/sessions//entityTypes/`, or
12958	// `projects//agent/environments//users//sessions//entityTypes/`. If
12959	// `Environment ID` is not specified, we assume default 'draft'
12960	// environment. If `User ID` is not specified, we assume default '-'
12961	// user. `` must be the display name of an existing entity type in the
12962	// same agent that will be overridden or supplemented.
12963	Name string `json:"name,omitempty"`
12964
12965	// ForceSendFields is a list of field names (e.g. "Entities") to
12966	// unconditionally include in API requests. By default, fields with
12967	// empty or default values are omitted from API requests. However, any
12968	// non-pointer, non-interface field appearing in ForceSendFields will be
12969	// sent to the server regardless of whether the field is empty or not.
12970	// This may be used to include empty fields in Patch requests.
12971	ForceSendFields []string `json:"-"`
12972
12973	// NullFields is a list of field names (e.g. "Entities") to include in
12974	// API requests with the JSON null value. By default, fields with empty
12975	// values are omitted from API requests. However, any field with an
12976	// empty value appearing in NullFields will be sent to the server as
12977	// null. It is an error if a field in this list has a non-empty value.
12978	// This may be used to include null fields in Patch requests.
12979	NullFields []string `json:"-"`
12980}
12981
12982func (s *GoogleCloudDialogflowV2SessionEntityType) MarshalJSON() ([]byte, error) {
12983	type NoMethod GoogleCloudDialogflowV2SessionEntityType
12984	raw := NoMethod(*s)
12985	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
12986}
12987
12988// GoogleCloudDialogflowV2SuggestArticlesResponse: The response message
12989// for Participants.SuggestArticles.
12990type GoogleCloudDialogflowV2SuggestArticlesResponse struct {
12991	// ArticleAnswers: Articles ordered by score in descending order.
12992	ArticleAnswers []*GoogleCloudDialogflowV2ArticleAnswer `json:"articleAnswers,omitempty"`
12993
12994	// ContextSize: Number of messages prior to and including latest_message
12995	// to compile the suggestion. It may be smaller than the
12996	// SuggestArticlesRequest.context_size field in the request if there
12997	// aren't that many messages in the conversation.
12998	ContextSize int64 `json:"contextSize,omitempty"`
12999
13000	// LatestMessage: The name of the latest conversation message used to
13001	// compile suggestion for. Format:
13002	// `projects//locations//conversations//messages/`.
13003	LatestMessage string `json:"latestMessage,omitempty"`
13004
13005	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
13006	// unconditionally include in API requests. By default, fields with
13007	// empty or default values are omitted from API requests. However, any
13008	// non-pointer, non-interface field appearing in ForceSendFields will be
13009	// sent to the server regardless of whether the field is empty or not.
13010	// This may be used to include empty fields in Patch requests.
13011	ForceSendFields []string `json:"-"`
13012
13013	// NullFields is a list of field names (e.g. "ArticleAnswers") to
13014	// include in API requests with the JSON null value. By default, fields
13015	// with empty values are omitted from API requests. However, any field
13016	// with an empty value appearing in NullFields will be sent to the
13017	// server as null. It is an error if a field in this list has a
13018	// non-empty value. This may be used to include null fields in Patch
13019	// requests.
13020	NullFields []string `json:"-"`
13021}
13022
13023func (s *GoogleCloudDialogflowV2SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
13024	type NoMethod GoogleCloudDialogflowV2SuggestArticlesResponse
13025	raw := NoMethod(*s)
13026	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13027}
13028
13029// GoogleCloudDialogflowV2SuggestFaqAnswersResponse: The request message
13030// for Participants.SuggestFaqAnswers.
13031type GoogleCloudDialogflowV2SuggestFaqAnswersResponse struct {
13032	// ContextSize: Number of messages prior to and including latest_message
13033	// to compile the suggestion. It may be smaller than the
13034	// SuggestFaqAnswersRequest.context_size field in the request if there
13035	// aren't that many messages in the conversation.
13036	ContextSize int64 `json:"contextSize,omitempty"`
13037
13038	// FaqAnswers: Answers extracted from FAQ documents.
13039	FaqAnswers []*GoogleCloudDialogflowV2FaqAnswer `json:"faqAnswers,omitempty"`
13040
13041	// LatestMessage: The name of the latest conversation message used to
13042	// compile suggestion for. Format:
13043	// `projects//locations//conversations//messages/`.
13044	LatestMessage string `json:"latestMessage,omitempty"`
13045
13046	// ForceSendFields is a list of field names (e.g. "ContextSize") to
13047	// unconditionally include in API requests. By default, fields with
13048	// empty or default values are omitted from API requests. However, any
13049	// non-pointer, non-interface field appearing in ForceSendFields will be
13050	// sent to the server regardless of whether the field is empty or not.
13051	// This may be used to include empty fields in Patch requests.
13052	ForceSendFields []string `json:"-"`
13053
13054	// NullFields is a list of field names (e.g. "ContextSize") to include
13055	// in API requests with the JSON null value. By default, fields with
13056	// empty values are omitted from API requests. However, any field with
13057	// an empty value appearing in NullFields will be sent to the server as
13058	// null. It is an error if a field in this list has a non-empty value.
13059	// This may be used to include null fields in Patch requests.
13060	NullFields []string `json:"-"`
13061}
13062
13063func (s *GoogleCloudDialogflowV2SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
13064	type NoMethod GoogleCloudDialogflowV2SuggestFaqAnswersResponse
13065	raw := NoMethod(*s)
13066	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13067}
13068
13069// GoogleCloudDialogflowV2SuggestionResult: One response of different
13070// type of suggestion response which is used in the response of
13071// Participants.AnalyzeContent and Participants.AnalyzeContent, as well
13072// as HumanAgentAssistantEvent.
13073type GoogleCloudDialogflowV2SuggestionResult struct {
13074	// Error: Error status if the request failed.
13075	Error *GoogleRpcStatus `json:"error,omitempty"`
13076
13077	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
13078	// ARTICLE_SUGGESTION.
13079	SuggestArticlesResponse *GoogleCloudDialogflowV2SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
13080
13081	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
13082	// for FAQ_ANSWER.
13083	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
13084
13085	// ForceSendFields is a list of field names (e.g. "Error") to
13086	// unconditionally include in API requests. By default, fields with
13087	// empty or default values are omitted from API requests. However, any
13088	// non-pointer, non-interface field appearing in ForceSendFields will be
13089	// sent to the server regardless of whether the field is empty or not.
13090	// This may be used to include empty fields in Patch requests.
13091	ForceSendFields []string `json:"-"`
13092
13093	// NullFields is a list of field names (e.g. "Error") to include in API
13094	// requests with the JSON null value. By default, fields with empty
13095	// values are omitted from API requests. However, any field with an
13096	// empty value appearing in NullFields will be sent to the server as
13097	// null. It is an error if a field in this list has a non-empty value.
13098	// This may be used to include null fields in Patch requests.
13099	NullFields []string `json:"-"`
13100}
13101
13102func (s *GoogleCloudDialogflowV2SuggestionResult) MarshalJSON() ([]byte, error) {
13103	type NoMethod GoogleCloudDialogflowV2SuggestionResult
13104	raw := NoMethod(*s)
13105	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13106}
13107
13108// GoogleCloudDialogflowV2WebhookRequest: The request message for a
13109// webhook call.
13110type GoogleCloudDialogflowV2WebhookRequest struct {
13111	// OriginalDetectIntentRequest: Optional. The contents of the original
13112	// request that was passed to `[Streaming]DetectIntent` call.
13113	OriginalDetectIntentRequest *GoogleCloudDialogflowV2OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
13114
13115	// QueryResult: The result of the conversational query or event
13116	// processing. Contains the same value as
13117	// `[Streaming]DetectIntentResponse.query_result`.
13118	QueryResult *GoogleCloudDialogflowV2QueryResult `json:"queryResult,omitempty"`
13119
13120	// ResponseId: The unique identifier of the response. Contains the same
13121	// value as `[Streaming]DetectIntentResponse.response_id`.
13122	ResponseId string `json:"responseId,omitempty"`
13123
13124	// Session: The unique identifier of detectIntent request session. Can
13125	// be used to identify end-user inside webhook implementation. Format:
13126	// `projects//agent/sessions/`, or
13127	// `projects//agent/environments//users//sessions/`.
13128	Session string `json:"session,omitempty"`
13129
13130	// ForceSendFields is a list of field names (e.g.
13131	// "OriginalDetectIntentRequest") to unconditionally include in API
13132	// requests. By default, fields with empty or default values are omitted
13133	// from API requests. However, any non-pointer, non-interface field
13134	// appearing in ForceSendFields will be sent to the server regardless of
13135	// whether the field is empty or not. This may be used to include empty
13136	// fields in Patch requests.
13137	ForceSendFields []string `json:"-"`
13138
13139	// NullFields is a list of field names (e.g.
13140	// "OriginalDetectIntentRequest") to include in API requests with the
13141	// JSON null value. By default, fields with empty values are omitted
13142	// from API requests. However, any field with an empty value appearing
13143	// in NullFields will be sent to the server as null. It is an error if a
13144	// field in this list has a non-empty value. This may be used to include
13145	// null fields in Patch requests.
13146	NullFields []string `json:"-"`
13147}
13148
13149func (s *GoogleCloudDialogflowV2WebhookRequest) MarshalJSON() ([]byte, error) {
13150	type NoMethod GoogleCloudDialogflowV2WebhookRequest
13151	raw := NoMethod(*s)
13152	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13153}
13154
13155// GoogleCloudDialogflowV2WebhookResponse: The response message for a
13156// webhook call. This response is validated by the Dialogflow server. If
13157// validation fails, an error will be returned in the
13158// QueryResult.diagnostic_info field. Setting JSON fields to an empty
13159// value with the wrong type is a common error. To avoid this error: -
13160// Use "" for empty strings - Use `{}` or `null` for empty objects -
13161// Use `[]` or `null` for empty arrays For more information, see the
13162// Protocol Buffers Language Guide
13163// (https://developers.google.com/protocol-buffers/docs/proto3#json).
13164type GoogleCloudDialogflowV2WebhookResponse struct {
13165	// FollowupEventInput: Optional. Invokes the supplied events. When this
13166	// field is set, Dialogflow ignores the `fulfillment_text`,
13167	// `fulfillment_messages`, and `payload` fields.
13168	FollowupEventInput *GoogleCloudDialogflowV2EventInput `json:"followupEventInput,omitempty"`
13169
13170	// FulfillmentMessages: Optional. The rich response messages intended
13171	// for the end-user. When provided, Dialogflow uses this field to
13172	// populate QueryResult.fulfillment_messages sent to the integration or
13173	// API caller.
13174	FulfillmentMessages []*GoogleCloudDialogflowV2IntentMessage `json:"fulfillmentMessages,omitempty"`
13175
13176	// FulfillmentText: Optional. The text response message intended for the
13177	// end-user. It is recommended to use
13178	// `fulfillment_messages.text.text[0]` instead. When provided,
13179	// Dialogflow uses this field to populate QueryResult.fulfillment_text
13180	// sent to the integration or API caller.
13181	FulfillmentText string `json:"fulfillmentText,omitempty"`
13182
13183	// OutputContexts: Optional. The collection of output contexts that will
13184	// overwrite currently active contexts for the session and reset their
13185	// lifespans. When provided, Dialogflow uses this field to populate
13186	// QueryResult.output_contexts sent to the integration or API caller.
13187	OutputContexts []*GoogleCloudDialogflowV2Context `json:"outputContexts,omitempty"`
13188
13189	// Payload: Optional. This field can be used to pass custom data from
13190	// your webhook to the integration or API caller. Arbitrary JSON objects
13191	// are supported. When provided, Dialogflow uses this field to populate
13192	// QueryResult.webhook_payload sent to the integration or API caller.
13193	// This field is also used by the Google Assistant integration
13194	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
13195	// response messages. See the format definition at Google Assistant
13196	// Dialogflow webhook format
13197	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
13198	Payload googleapi.RawMessage `json:"payload,omitempty"`
13199
13200	// SessionEntityTypes: Optional. Additional session entity types to
13201	// replace or extend developer entity types with. The entity synonyms
13202	// apply to all languages and persist for the session. Setting this data
13203	// from a webhook overwrites the session entity types that have been set
13204	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
13205	// management methods.
13206	SessionEntityTypes []*GoogleCloudDialogflowV2SessionEntityType `json:"sessionEntityTypes,omitempty"`
13207
13208	// Source: Optional. A custom field used to identify the webhook source.
13209	// Arbitrary strings are supported. When provided, Dialogflow uses this
13210	// field to populate QueryResult.webhook_source sent to the integration
13211	// or API caller.
13212	Source string `json:"source,omitempty"`
13213
13214	// ForceSendFields is a list of field names (e.g. "FollowupEventInput")
13215	// to unconditionally include in API requests. By default, fields with
13216	// empty or default values are omitted from API requests. However, any
13217	// non-pointer, non-interface field appearing in ForceSendFields will be
13218	// sent to the server regardless of whether the field is empty or not.
13219	// This may be used to include empty fields in Patch requests.
13220	ForceSendFields []string `json:"-"`
13221
13222	// NullFields is a list of field names (e.g. "FollowupEventInput") to
13223	// include in API requests with the JSON null value. By default, fields
13224	// with empty values are omitted from API requests. However, any field
13225	// with an empty value appearing in NullFields will be sent to the
13226	// server as null. It is an error if a field in this list has a
13227	// non-empty value. This may be used to include null fields in Patch
13228	// requests.
13229	NullFields []string `json:"-"`
13230}
13231
13232func (s *GoogleCloudDialogflowV2WebhookResponse) MarshalJSON() ([]byte, error) {
13233	type NoMethod GoogleCloudDialogflowV2WebhookResponse
13234	raw := NoMethod(*s)
13235	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13236}
13237
13238// GoogleCloudDialogflowV2beta1AnnotatedMessagePart: Represents a part
13239// of a message possibly annotated with an entity. The part can be an
13240// entity or purely a part of the message between two entities or
13241// message start/end.
13242type GoogleCloudDialogflowV2beta1AnnotatedMessagePart struct {
13243	// EntityType: Optional. The Dialogflow system entity type
13244	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
13245	// of this message part. If this is empty, Dialogflow could not annotate
13246	// the phrase part with a system entity.
13247	EntityType string `json:"entityType,omitempty"`
13248
13249	// FormattedValue: Optional. The Dialogflow system entity formatted
13250	// value
13251	// (https://cloud.google.com/dialogflow/docs/reference/system-entities)
13252	// of this message part. For example for a system entity of type
13253	// `@sys.unit-currency`, this may contain: { "amount": 5, "currency":
13254	// "USD" }
13255	FormattedValue interface{} `json:"formattedValue,omitempty"`
13256
13257	// Text: Required. A part of a message possibly annotated with an
13258	// entity.
13259	Text string `json:"text,omitempty"`
13260
13261	// ForceSendFields is a list of field names (e.g. "EntityType") to
13262	// unconditionally include in API requests. By default, fields with
13263	// empty or default values are omitted from API requests. However, any
13264	// non-pointer, non-interface field appearing in ForceSendFields will be
13265	// sent to the server regardless of whether the field is empty or not.
13266	// This may be used to include empty fields in Patch requests.
13267	ForceSendFields []string `json:"-"`
13268
13269	// NullFields is a list of field names (e.g. "EntityType") to include in
13270	// API requests with the JSON null value. By default, fields with empty
13271	// values are omitted from API requests. However, any field with an
13272	// empty value appearing in NullFields will be sent to the server as
13273	// null. It is an error if a field in this list has a non-empty value.
13274	// This may be used to include null fields in Patch requests.
13275	NullFields []string `json:"-"`
13276}
13277
13278func (s *GoogleCloudDialogflowV2beta1AnnotatedMessagePart) MarshalJSON() ([]byte, error) {
13279	type NoMethod GoogleCloudDialogflowV2beta1AnnotatedMessagePart
13280	raw := NoMethod(*s)
13281	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13282}
13283
13284// GoogleCloudDialogflowV2beta1ArticleAnswer: Represents article answer.
13285type GoogleCloudDialogflowV2beta1ArticleAnswer struct {
13286	// AnswerRecord: The name of answer record, in the format of
13287	// "projects//locations//answerRecords/"
13288	AnswerRecord string `json:"answerRecord,omitempty"`
13289
13290	// Metadata: A map that contains metadata about the answer and the
13291	// document from which it originates.
13292	Metadata map[string]string `json:"metadata,omitempty"`
13293
13294	// Snippets: Output only. Article snippets.
13295	Snippets []string `json:"snippets,omitempty"`
13296
13297	// Title: The article title.
13298	Title string `json:"title,omitempty"`
13299
13300	// Uri: The article URI.
13301	Uri string `json:"uri,omitempty"`
13302
13303	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
13304	// unconditionally include in API requests. By default, fields with
13305	// empty or default values are omitted from API requests. However, any
13306	// non-pointer, non-interface field appearing in ForceSendFields will be
13307	// sent to the server regardless of whether the field is empty or not.
13308	// This may be used to include empty fields in Patch requests.
13309	ForceSendFields []string `json:"-"`
13310
13311	// NullFields is a list of field names (e.g. "AnswerRecord") to include
13312	// in API requests with the JSON null value. By default, fields with
13313	// empty values are omitted from API requests. However, any field with
13314	// an empty value appearing in NullFields will be sent to the server as
13315	// null. It is an error if a field in this list has a non-empty value.
13316	// This may be used to include null fields in Patch requests.
13317	NullFields []string `json:"-"`
13318}
13319
13320func (s *GoogleCloudDialogflowV2beta1ArticleAnswer) MarshalJSON() ([]byte, error) {
13321	type NoMethod GoogleCloudDialogflowV2beta1ArticleAnswer
13322	raw := NoMethod(*s)
13323	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13324}
13325
13326// GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse: The
13327// response message for EntityTypes.BatchUpdateEntityTypes.
13328type GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse struct {
13329	// EntityTypes: The collection of updated or created entity types.
13330	EntityTypes []*GoogleCloudDialogflowV2beta1EntityType `json:"entityTypes,omitempty"`
13331
13332	// ForceSendFields is a list of field names (e.g. "EntityTypes") to
13333	// unconditionally include in API requests. By default, fields with
13334	// empty or default values are omitted from API requests. However, any
13335	// non-pointer, non-interface field appearing in ForceSendFields will be
13336	// sent to the server regardless of whether the field is empty or not.
13337	// This may be used to include empty fields in Patch requests.
13338	ForceSendFields []string `json:"-"`
13339
13340	// NullFields is a list of field names (e.g. "EntityTypes") to include
13341	// in API requests with the JSON null value. By default, fields with
13342	// empty values are omitted from API requests. However, any field with
13343	// an empty value appearing in NullFields will be sent to the server as
13344	// null. It is an error if a field in this list has a non-empty value.
13345	// This may be used to include null fields in Patch requests.
13346	NullFields []string `json:"-"`
13347}
13348
13349func (s *GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse) MarshalJSON() ([]byte, error) {
13350	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateEntityTypesResponse
13351	raw := NoMethod(*s)
13352	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13353}
13354
13355// GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse: The response
13356// message for Intents.BatchUpdateIntents.
13357type GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse struct {
13358	// Intents: The collection of updated or created intents.
13359	Intents []*GoogleCloudDialogflowV2beta1Intent `json:"intents,omitempty"`
13360
13361	// ForceSendFields is a list of field names (e.g. "Intents") to
13362	// unconditionally include in API requests. By default, fields with
13363	// empty or default values are omitted from API requests. However, any
13364	// non-pointer, non-interface field appearing in ForceSendFields will be
13365	// sent to the server regardless of whether the field is empty or not.
13366	// This may be used to include empty fields in Patch requests.
13367	ForceSendFields []string `json:"-"`
13368
13369	// NullFields is a list of field names (e.g. "Intents") to include in
13370	// API requests with the JSON null value. By default, fields with empty
13371	// values are omitted from API requests. However, any field with an
13372	// empty value appearing in NullFields will be sent to the server as
13373	// null. It is an error if a field in this list has a non-empty value.
13374	// This may be used to include null fields in Patch requests.
13375	NullFields []string `json:"-"`
13376}
13377
13378func (s *GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse) MarshalJSON() ([]byte, error) {
13379	type NoMethod GoogleCloudDialogflowV2beta1BatchUpdateIntentsResponse
13380	raw := NoMethod(*s)
13381	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13382}
13383
13384// GoogleCloudDialogflowV2beta1Context: Dialogflow contexts are similar
13385// to natural language context. If a person says to you "they are
13386// orange", you need context in order to understand what "they" is
13387// referring to. Similarly, for Dialogflow to handle an end-user
13388// expression like that, it needs to be provided with context in order
13389// to correctly match an intent. Using contexts, you can control the
13390// flow of a conversation. You can configure contexts for an intent by
13391// setting input and output contexts, which are identified by string
13392// names. When an intent is matched, any configured output contexts for
13393// that intent become active. While any contexts are active, Dialogflow
13394// is more likely to match intents that are configured with input
13395// contexts that correspond to the currently active contexts. For more
13396// information about context, see the Contexts guide
13397// (https://cloud.google.com/dialogflow/docs/contexts-overview).
13398type GoogleCloudDialogflowV2beta1Context struct {
13399	// LifespanCount: Optional. The number of conversational query requests
13400	// after which the context expires. The default is `0`. If set to `0`,
13401	// the context expires immediately. Contexts expire automatically after
13402	// 20 minutes if there are no matching queries.
13403	LifespanCount int64 `json:"lifespanCount,omitempty"`
13404
13405	// Name: Required. The unique identifier of the context. Supported
13406	// formats: - `projects//agent/sessions//contexts/`, -
13407	// `projects//locations//agent/sessions//contexts/`, -
13408	// `projects//agent/environments//users//sessions//contexts/`, -
13409	// `projects//locations//agent/environments//users//sessions//contexts/`,
13410	//  The `Context ID` is always converted to lowercase, may only contain
13411	// characters in a-zA-Z0-9_-% and may be at most 250 bytes long. If
13412	// `Environment ID` is not specified, we assume default 'draft'
13413	// environment. If `User ID` is not specified, we assume default '-'
13414	// user. The following context names are reserved for internal use by
13415	// Dialogflow. You should not use these contexts or create contexts with
13416	// these names: * `__system_counters__` * `*_id_dialog_context` *
13417	// `*_dialog_params_size`
13418	Name string `json:"name,omitempty"`
13419
13420	// Parameters: Optional. The collection of parameters associated with
13421	// this context. Depending on your protocol or client library language,
13422	// this is a map, associative array, symbol table, dictionary, or JSON
13423	// object composed of a collection of (MapKey, MapValue) pairs: - MapKey
13424	// type: string - MapKey value: parameter name - MapValue type: - If
13425	// parameter's entity type is a composite entity: map - Else: depending
13426	// on parameter value type, could be one of string, number, boolean,
13427	// null, list or map - MapValue value: - If parameter's entity type is a
13428	// composite entity: map from composite entity property names to
13429	// property values - Else: parameter value
13430	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13431
13432	// ForceSendFields is a list of field names (e.g. "LifespanCount") to
13433	// unconditionally include in API requests. By default, fields with
13434	// empty or default values are omitted from API requests. However, any
13435	// non-pointer, non-interface field appearing in ForceSendFields will be
13436	// sent to the server regardless of whether the field is empty or not.
13437	// This may be used to include empty fields in Patch requests.
13438	ForceSendFields []string `json:"-"`
13439
13440	// NullFields is a list of field names (e.g. "LifespanCount") to include
13441	// in API requests with the JSON null value. By default, fields with
13442	// empty values are omitted from API requests. However, any field with
13443	// an empty value appearing in NullFields will be sent to the server as
13444	// null. It is an error if a field in this list has a non-empty value.
13445	// This may be used to include null fields in Patch requests.
13446	NullFields []string `json:"-"`
13447}
13448
13449func (s *GoogleCloudDialogflowV2beta1Context) MarshalJSON() ([]byte, error) {
13450	type NoMethod GoogleCloudDialogflowV2beta1Context
13451	raw := NoMethod(*s)
13452	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13453}
13454
13455// GoogleCloudDialogflowV2beta1ConversationEvent: Represents a
13456// notification sent to Pub/Sub subscribers for conversation lifecycle
13457// events.
13458type GoogleCloudDialogflowV2beta1ConversationEvent struct {
13459	// Conversation: Required. The unique identifier of the conversation
13460	// this notification refers to. Format: `projects//conversations/`.
13461	Conversation string `json:"conversation,omitempty"`
13462
13463	// ErrorStatus: Optional. More detailed information about an error. Only
13464	// set for type UNRECOVERABLE_ERROR_IN_PHONE_CALL.
13465	ErrorStatus *GoogleRpcStatus `json:"errorStatus,omitempty"`
13466
13467	// NewMessagePayload: Payload of NEW_MESSAGE event.
13468	NewMessagePayload *GoogleCloudDialogflowV2beta1Message `json:"newMessagePayload,omitempty"`
13469
13470	// Type: Required. The type of the event that this notification refers
13471	// to.
13472	//
13473	// Possible values:
13474	//   "TYPE_UNSPECIFIED" - Type not set.
13475	//   "CONVERSATION_STARTED" - A new conversation has been opened. This
13476	// is fired when a telephone call is answered, or a conversation is
13477	// created via the API.
13478	//   "CONVERSATION_FINISHED" - An existing conversation has closed. This
13479	// is fired when a telephone call is terminated, or a conversation is
13480	// closed via the API.
13481	//   "NEW_MESSAGE" - An existing conversation has received a new
13482	// message, either from API or telephony. It is configured in
13483	// ConversationProfile.new_message_event_notification_config
13484	//   "UNRECOVERABLE_ERROR" - Unrecoverable error during a telephone
13485	// call. In general non-recoverable errors only occur if something was
13486	// misconfigured in the ConversationProfile corresponding to the call.
13487	// After a non-recoverable error, Dialogflow may stop responding. We
13488	// don't fire this event: * in an API call because we can directly
13489	// return the error, or, * when we can recover from an error.
13490	Type string `json:"type,omitempty"`
13491
13492	// ForceSendFields is a list of field names (e.g. "Conversation") to
13493	// unconditionally include in API requests. By default, fields with
13494	// empty or default values are omitted from API requests. However, any
13495	// non-pointer, non-interface field appearing in ForceSendFields will be
13496	// sent to the server regardless of whether the field is empty or not.
13497	// This may be used to include empty fields in Patch requests.
13498	ForceSendFields []string `json:"-"`
13499
13500	// NullFields is a list of field names (e.g. "Conversation") to include
13501	// in API requests with the JSON null value. By default, fields with
13502	// empty values are omitted from API requests. However, any field with
13503	// an empty value appearing in NullFields will be sent to the server as
13504	// null. It is an error if a field in this list has a non-empty value.
13505	// This may be used to include null fields in Patch requests.
13506	NullFields []string `json:"-"`
13507}
13508
13509func (s *GoogleCloudDialogflowV2beta1ConversationEvent) MarshalJSON() ([]byte, error) {
13510	type NoMethod GoogleCloudDialogflowV2beta1ConversationEvent
13511	raw := NoMethod(*s)
13512	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13513}
13514
13515// GoogleCloudDialogflowV2beta1EntityType: Each intent parameter has a
13516// type, called the entity type, which dictates exactly how data from an
13517// end-user expression is extracted. Dialogflow provides predefined
13518// system entities that can match many common types of data. For
13519// example, there are system entities for matching dates, times, colors,
13520// email addresses, and so on. You can also create your own custom
13521// entities for matching custom data. For example, you could define a
13522// vegetable entity that can match the types of vegetables available for
13523// purchase with a grocery store agent. For more information, see the
13524// Entity guide
13525// (https://cloud.google.com/dialogflow/docs/entities-overview).
13526type GoogleCloudDialogflowV2beta1EntityType struct {
13527	// AutoExpansionMode: Optional. Indicates whether the entity type can be
13528	// automatically expanded.
13529	//
13530	// Possible values:
13531	//   "AUTO_EXPANSION_MODE_UNSPECIFIED" - Auto expansion disabled for the
13532	// entity.
13533	//   "AUTO_EXPANSION_MODE_DEFAULT" - Allows an agent to recognize values
13534	// that have not been explicitly listed in the entity.
13535	AutoExpansionMode string `json:"autoExpansionMode,omitempty"`
13536
13537	// DisplayName: Required. The name of the entity type.
13538	DisplayName string `json:"displayName,omitempty"`
13539
13540	// EnableFuzzyExtraction: Optional. Enables fuzzy entity extraction
13541	// during classification.
13542	EnableFuzzyExtraction bool `json:"enableFuzzyExtraction,omitempty"`
13543
13544	// Entities: Optional. The collection of entity entries associated with
13545	// the entity type.
13546	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
13547
13548	// Kind: Required. Indicates the kind of entity type.
13549	//
13550	// Possible values:
13551	//   "KIND_UNSPECIFIED" - Not specified. This value should be never
13552	// used.
13553	//   "KIND_MAP" - Map entity types allow mapping of a group of synonyms
13554	// to a reference value.
13555	//   "KIND_LIST" - List entity types contain a set of entries that do
13556	// not map to reference values. However, list entity types can contain
13557	// references to other entity types (with or without aliases).
13558	//   "KIND_REGEXP" - Regexp entity types allow to specify regular
13559	// expressions in entries values.
13560	Kind string `json:"kind,omitempty"`
13561
13562	// Name: The unique identifier of the entity type. Required for
13563	// EntityTypes.UpdateEntityType and EntityTypes.BatchUpdateEntityTypes
13564	// methods. Supported formats: - `projects//agent/entityTypes/` -
13565	// `projects//locations//agent/entityTypes/`
13566	Name string `json:"name,omitempty"`
13567
13568	// ForceSendFields is a list of field names (e.g. "AutoExpansionMode")
13569	// to unconditionally include in API requests. By default, fields with
13570	// empty or default values are omitted from API requests. However, any
13571	// non-pointer, non-interface field appearing in ForceSendFields will be
13572	// sent to the server regardless of whether the field is empty or not.
13573	// This may be used to include empty fields in Patch requests.
13574	ForceSendFields []string `json:"-"`
13575
13576	// NullFields is a list of field names (e.g. "AutoExpansionMode") to
13577	// include in API requests with the JSON null value. By default, fields
13578	// with empty values are omitted from API requests. However, any field
13579	// with an empty value appearing in NullFields will be sent to the
13580	// server as null. It is an error if a field in this list has a
13581	// non-empty value. This may be used to include null fields in Patch
13582	// requests.
13583	NullFields []string `json:"-"`
13584}
13585
13586func (s *GoogleCloudDialogflowV2beta1EntityType) MarshalJSON() ([]byte, error) {
13587	type NoMethod GoogleCloudDialogflowV2beta1EntityType
13588	raw := NoMethod(*s)
13589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13590}
13591
13592// GoogleCloudDialogflowV2beta1EntityTypeEntity: An **entity entry** for
13593// an associated entity type.
13594type GoogleCloudDialogflowV2beta1EntityTypeEntity struct {
13595	// Synonyms: Required. A collection of value synonyms. For example, if
13596	// the entity type is *vegetable*, and `value` is *scallions*, a synonym
13597	// could be *green onions*. For `KIND_LIST` entity types: * This
13598	// collection must contain exactly one synonym equal to `value`.
13599	Synonyms []string `json:"synonyms,omitempty"`
13600
13601	// Value: Required. The primary value associated with this entity entry.
13602	// For example, if the entity type is *vegetable*, the value could be
13603	// *scallions*. For `KIND_MAP` entity types: * A reference value to be
13604	// used in place of synonyms. For `KIND_LIST` entity types: * A string
13605	// that can contain references to other entity types (with or without
13606	// aliases).
13607	Value string `json:"value,omitempty"`
13608
13609	// ForceSendFields is a list of field names (e.g. "Synonyms") to
13610	// unconditionally include in API requests. By default, fields with
13611	// empty or default values are omitted from API requests. However, any
13612	// non-pointer, non-interface field appearing in ForceSendFields will be
13613	// sent to the server regardless of whether the field is empty or not.
13614	// This may be used to include empty fields in Patch requests.
13615	ForceSendFields []string `json:"-"`
13616
13617	// NullFields is a list of field names (e.g. "Synonyms") to include in
13618	// API requests with the JSON null value. By default, fields with empty
13619	// values are omitted from API requests. However, any field with an
13620	// empty value appearing in NullFields will be sent to the server as
13621	// null. It is an error if a field in this list has a non-empty value.
13622	// This may be used to include null fields in Patch requests.
13623	NullFields []string `json:"-"`
13624}
13625
13626func (s *GoogleCloudDialogflowV2beta1EntityTypeEntity) MarshalJSON() ([]byte, error) {
13627	type NoMethod GoogleCloudDialogflowV2beta1EntityTypeEntity
13628	raw := NoMethod(*s)
13629	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13630}
13631
13632// GoogleCloudDialogflowV2beta1EventInput: Events allow for matching
13633// intents by event name instead of the natural language input. For
13634// instance, input `` can trigger a personalized welcome response. The
13635// parameter `name` may be used by the agent in the response: "Hello
13636// #welcome_event.name! What can I do for you today?".
13637type GoogleCloudDialogflowV2beta1EventInput struct {
13638	// LanguageCode: Required. The language of this query. See Language
13639	// Support (https://cloud.google.com/dialogflow/docs/reference/language)
13640	// for a list of the currently supported language codes. Note that
13641	// queries in the same session do not necessarily need to specify the
13642	// same language.
13643	LanguageCode string `json:"languageCode,omitempty"`
13644
13645	// Name: Required. The unique identifier of the event.
13646	Name string `json:"name,omitempty"`
13647
13648	// Parameters: The collection of parameters associated with the event.
13649	// Depending on your protocol or client library language, this is a map,
13650	// associative array, symbol table, dictionary, or JSON object composed
13651	// of a collection of (MapKey, MapValue) pairs: - MapKey type: string -
13652	// MapKey value: parameter name - MapValue type: - If parameter's entity
13653	// type is a composite entity: map - Else: depending on parameter value
13654	// type, could be one of string, number, boolean, null, list or map -
13655	// MapValue value: - If parameter's entity type is a composite entity:
13656	// map from composite entity property names to property values - Else:
13657	// parameter value
13658	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
13659
13660	// ForceSendFields is a list of field names (e.g. "LanguageCode") to
13661	// unconditionally include in API requests. By default, fields with
13662	// empty or default values are omitted from API requests. However, any
13663	// non-pointer, non-interface field appearing in ForceSendFields will be
13664	// sent to the server regardless of whether the field is empty or not.
13665	// This may be used to include empty fields in Patch requests.
13666	ForceSendFields []string `json:"-"`
13667
13668	// NullFields is a list of field names (e.g. "LanguageCode") to include
13669	// in API requests with the JSON null value. By default, fields with
13670	// empty values are omitted from API requests. However, any field with
13671	// an empty value appearing in NullFields will be sent to the server as
13672	// null. It is an error if a field in this list has a non-empty value.
13673	// This may be used to include null fields in Patch requests.
13674	NullFields []string `json:"-"`
13675}
13676
13677func (s *GoogleCloudDialogflowV2beta1EventInput) MarshalJSON() ([]byte, error) {
13678	type NoMethod GoogleCloudDialogflowV2beta1EventInput
13679	raw := NoMethod(*s)
13680	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13681}
13682
13683// GoogleCloudDialogflowV2beta1ExportAgentResponse: The response message
13684// for Agents.ExportAgent.
13685type GoogleCloudDialogflowV2beta1ExportAgentResponse struct {
13686	// AgentContent: Zip compressed raw byte content for agent.
13687	AgentContent string `json:"agentContent,omitempty"`
13688
13689	// AgentUri: The URI to a file containing the exported agent. This field
13690	// is populated only if `agent_uri` is specified in
13691	// `ExportAgentRequest`.
13692	AgentUri string `json:"agentUri,omitempty"`
13693
13694	// ForceSendFields is a list of field names (e.g. "AgentContent") to
13695	// unconditionally include in API requests. By default, fields with
13696	// empty or default values are omitted from API requests. However, any
13697	// non-pointer, non-interface field appearing in ForceSendFields will be
13698	// sent to the server regardless of whether the field is empty or not.
13699	// This may be used to include empty fields in Patch requests.
13700	ForceSendFields []string `json:"-"`
13701
13702	// NullFields is a list of field names (e.g. "AgentContent") to include
13703	// in API requests with the JSON null value. By default, fields with
13704	// empty values are omitted from API requests. However, any field with
13705	// an empty value appearing in NullFields will be sent to the server as
13706	// null. It is an error if a field in this list has a non-empty value.
13707	// This may be used to include null fields in Patch requests.
13708	NullFields []string `json:"-"`
13709}
13710
13711func (s *GoogleCloudDialogflowV2beta1ExportAgentResponse) MarshalJSON() ([]byte, error) {
13712	type NoMethod GoogleCloudDialogflowV2beta1ExportAgentResponse
13713	raw := NoMethod(*s)
13714	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13715}
13716
13717// GoogleCloudDialogflowV2beta1FaqAnswer: Represents answer from
13718// "frequently asked questions".
13719type GoogleCloudDialogflowV2beta1FaqAnswer struct {
13720	// Answer: The piece of text from the `source` knowledge base document.
13721	Answer string `json:"answer,omitempty"`
13722
13723	// AnswerRecord: The name of answer record, in the format of
13724	// "projects//locations//answerRecords/"
13725	AnswerRecord string `json:"answerRecord,omitempty"`
13726
13727	// Confidence: The system's confidence score that this Knowledge answer
13728	// is a good match for this conversational query, range from 0.0
13729	// (completely uncertain) to 1.0 (completely certain).
13730	Confidence float64 `json:"confidence,omitempty"`
13731
13732	// Metadata: A map that contains metadata about the answer and the
13733	// document from which it originates.
13734	Metadata map[string]string `json:"metadata,omitempty"`
13735
13736	// Question: The corresponding FAQ question.
13737	Question string `json:"question,omitempty"`
13738
13739	// Source: Indicates which Knowledge Document this answer was extracted
13740	// from. Format:
13741	// `projects//locations//agent/knowledgeBases//documents/`.
13742	Source string `json:"source,omitempty"`
13743
13744	// ForceSendFields is a list of field names (e.g. "Answer") to
13745	// unconditionally include in API requests. By default, fields with
13746	// empty or default values are omitted from API requests. However, any
13747	// non-pointer, non-interface field appearing in ForceSendFields will be
13748	// sent to the server regardless of whether the field is empty or not.
13749	// This may be used to include empty fields in Patch requests.
13750	ForceSendFields []string `json:"-"`
13751
13752	// NullFields is a list of field names (e.g. "Answer") to include in API
13753	// requests with the JSON null value. By default, fields with empty
13754	// values are omitted from API requests. However, any field with an
13755	// empty value appearing in NullFields will be sent to the server as
13756	// null. It is an error if a field in this list has a non-empty value.
13757	// This may be used to include null fields in Patch requests.
13758	NullFields []string `json:"-"`
13759}
13760
13761func (s *GoogleCloudDialogflowV2beta1FaqAnswer) MarshalJSON() ([]byte, error) {
13762	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13763	raw := NoMethod(*s)
13764	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13765}
13766
13767func (s *GoogleCloudDialogflowV2beta1FaqAnswer) UnmarshalJSON(data []byte) error {
13768	type NoMethod GoogleCloudDialogflowV2beta1FaqAnswer
13769	var s1 struct {
13770		Confidence gensupport.JSONFloat64 `json:"confidence"`
13771		*NoMethod
13772	}
13773	s1.NoMethod = (*NoMethod)(s)
13774	if err := json.Unmarshal(data, &s1); err != nil {
13775		return err
13776	}
13777	s.Confidence = float64(s1.Confidence)
13778	return nil
13779}
13780
13781// GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent: Output only.
13782// Represents a notification sent to Pub/Sub subscribers for agent
13783// assistant events in a specific conversation.
13784type GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent struct {
13785	// Conversation: The conversation this notification refers to. Format:
13786	// `projects//conversations/`.
13787	Conversation string `json:"conversation,omitempty"`
13788
13789	// Participant: The participant that the suggestion is compiled for. And
13790	// This field is used to call Participants.ListSuggestions API. Format:
13791	// `projects//conversations//participants/`. It will not be set in
13792	// legacy workflow. HumanAgentAssistantConfig.name for more information.
13793	Participant string `json:"participant,omitempty"`
13794
13795	// SuggestionResults: The suggestion results payload that this
13796	// notification refers to. It will only be set when
13797	// HumanAgentAssistantConfig.SuggestionConfig.group_suggestion_responses
13798	// sets to true.
13799	SuggestionResults []*GoogleCloudDialogflowV2beta1SuggestionResult `json:"suggestionResults,omitempty"`
13800
13801	// ForceSendFields is a list of field names (e.g. "Conversation") to
13802	// unconditionally include in API requests. By default, fields with
13803	// empty or default values are omitted from API requests. However, any
13804	// non-pointer, non-interface field appearing in ForceSendFields will be
13805	// sent to the server regardless of whether the field is empty or not.
13806	// This may be used to include empty fields in Patch requests.
13807	ForceSendFields []string `json:"-"`
13808
13809	// NullFields is a list of field names (e.g. "Conversation") to include
13810	// in API requests with the JSON null value. By default, fields with
13811	// empty values are omitted from API requests. However, any field with
13812	// an empty value appearing in NullFields will be sent to the server as
13813	// null. It is an error if a field in this list has a non-empty value.
13814	// This may be used to include null fields in Patch requests.
13815	NullFields []string `json:"-"`
13816}
13817
13818func (s *GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent) MarshalJSON() ([]byte, error) {
13819	type NoMethod GoogleCloudDialogflowV2beta1HumanAgentAssistantEvent
13820	raw := NoMethod(*s)
13821	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13822}
13823
13824// GoogleCloudDialogflowV2beta1ImportDocumentsResponse: Response message
13825// for Documents.ImportDocuments.
13826type GoogleCloudDialogflowV2beta1ImportDocumentsResponse struct {
13827	// Warnings: Includes details about skipped documents or any other
13828	// warnings.
13829	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
13830
13831	// ForceSendFields is a list of field names (e.g. "Warnings") to
13832	// unconditionally include in API requests. By default, fields with
13833	// empty or default values are omitted from API requests. However, any
13834	// non-pointer, non-interface field appearing in ForceSendFields will be
13835	// sent to the server regardless of whether the field is empty or not.
13836	// This may be used to include empty fields in Patch requests.
13837	ForceSendFields []string `json:"-"`
13838
13839	// NullFields is a list of field names (e.g. "Warnings") to include in
13840	// API requests with the JSON null value. By default, fields with empty
13841	// values are omitted from API requests. However, any field with an
13842	// empty value appearing in NullFields will be sent to the server as
13843	// null. It is an error if a field in this list has a non-empty value.
13844	// This may be used to include null fields in Patch requests.
13845	NullFields []string `json:"-"`
13846}
13847
13848func (s *GoogleCloudDialogflowV2beta1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
13849	type NoMethod GoogleCloudDialogflowV2beta1ImportDocumentsResponse
13850	raw := NoMethod(*s)
13851	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
13852}
13853
13854// GoogleCloudDialogflowV2beta1Intent: An intent categorizes an
13855// end-user's intention for one conversation turn. For each agent, you
13856// define many intents, where your combined intents can handle a
13857// complete conversation. When an end-user writes or says something,
13858// referred to as an end-user expression or end-user input, Dialogflow
13859// matches the end-user input to the best intent in your agent. Matching
13860// an intent is also known as intent classification. For more
13861// information, see the intent guide
13862// (https://cloud.google.com/dialogflow/docs/intents-overview).
13863type GoogleCloudDialogflowV2beta1Intent struct {
13864	// Action: Optional. The name of the action associated with the intent.
13865	// Note: The action name must not contain whitespaces.
13866	Action string `json:"action,omitempty"`
13867
13868	// DefaultResponsePlatforms: Optional. The list of platforms for which
13869	// the first responses will be copied from the messages in
13870	// PLATFORM_UNSPECIFIED (i.e. default platform).
13871	//
13872	// Possible values:
13873	//   "PLATFORM_UNSPECIFIED" - Not specified.
13874	//   "FACEBOOK" - Facebook.
13875	//   "SLACK" - Slack.
13876	//   "TELEGRAM" - Telegram.
13877	//   "KIK" - Kik.
13878	//   "SKYPE" - Skype.
13879	//   "LINE" - Line.
13880	//   "VIBER" - Viber.
13881	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
13882	// format](https://developers.google.com/assistant/actions/build/json/dia
13883	// logflow-webhook-json)
13884	//   "TELEPHONY" - Telephony Gateway.
13885	//   "GOOGLE_HANGOUTS" - Google Hangouts.
13886	DefaultResponsePlatforms []string `json:"defaultResponsePlatforms,omitempty"`
13887
13888	// DisplayName: Required. The name of this intent.
13889	DisplayName string `json:"displayName,omitempty"`
13890
13891	// EndInteraction: Optional. Indicates that this intent ends an
13892	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
13893	// phone gateway) use this information to close interaction with an end
13894	// user. Default is false.
13895	EndInteraction bool `json:"endInteraction,omitempty"`
13896
13897	// Events: Optional. The collection of event names that trigger the
13898	// intent. If the collection of input contexts is not empty, all of the
13899	// contexts must be present in the active user session for an event to
13900	// trigger this intent. Event names are limited to 150 characters.
13901	Events []string `json:"events,omitempty"`
13902
13903	// FollowupIntentInfo: Output only. Information about all followup
13904	// intents that have this intent as a direct or indirect parent. We
13905	// populate this field only in the output.
13906	FollowupIntentInfo []*GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo `json:"followupIntentInfo,omitempty"`
13907
13908	// InputContextNames: Optional. The list of context names required for
13909	// this intent to be triggered. Formats: -
13910	// `projects//agent/sessions/-/contexts/` -
13911	// `projects//locations//agent/sessions/-/contexts/`
13912	InputContextNames []string `json:"inputContextNames,omitempty"`
13913
13914	// IsFallback: Optional. Indicates whether this is a fallback intent.
13915	IsFallback bool `json:"isFallback,omitempty"`
13916
13917	// LiveAgentHandoff: Optional. Indicates that a live agent should be
13918	// brought in to handle the interaction with the user. In most cases,
13919	// when you set this flag to true, you would also want to set
13920	// end_interaction to true as well. Default is false.
13921	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
13922
13923	// Messages: Optional. The collection of rich messages corresponding to
13924	// the `Response` field in the Dialogflow console.
13925	Messages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"messages,omitempty"`
13926
13927	// MlDisabled: Optional. Indicates whether Machine Learning is disabled
13928	// for the intent. Note: If `ml_disabled` setting is set to true, then
13929	// this intent is not taken into account during inference in `ML ONLY`
13930	// match mode. Also, auto-markup in the UI is turned off.
13931	MlDisabled bool `json:"mlDisabled,omitempty"`
13932
13933	// MlEnabled: Optional. Indicates whether Machine Learning is enabled
13934	// for the intent. Note: If `ml_enabled` setting is set to false, then
13935	// this intent is not taken into account during inference in `ML ONLY`
13936	// match mode. Also, auto-markup in the UI is turned off. DEPRECATED!
13937	// Please use `ml_disabled` field instead. NOTE: If both `ml_enabled`
13938	// and `ml_disabled` are either not set or false, then the default value
13939	// is determined as follows: - Before April 15th, 2018 the default is:
13940	// ml_enabled = false / ml_disabled = true. - After April 15th, 2018 the
13941	// default is: ml_enabled = true / ml_disabled = false.
13942	MlEnabled bool `json:"mlEnabled,omitempty"`
13943
13944	// Name: Optional. The unique identifier of this intent. Required for
13945	// Intents.UpdateIntent and Intents.BatchUpdateIntents methods.
13946	// Supported formats: - `projects//agent/intents/` -
13947	// `projects//locations//agent/intents/`
13948	Name string `json:"name,omitempty"`
13949
13950	// OutputContexts: Optional. The collection of contexts that are
13951	// activated when the intent is matched. Context messages in this
13952	// collection should not set the parameters field. Setting the
13953	// `lifespan_count` to 0 will reset the context when the intent is
13954	// matched. Format: `projects//agent/sessions/-/contexts/`.
13955	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
13956
13957	// Parameters: Optional. The collection of parameters associated with
13958	// the intent.
13959	Parameters []*GoogleCloudDialogflowV2beta1IntentParameter `json:"parameters,omitempty"`
13960
13961	// ParentFollowupIntentName: Optional. The unique identifier of the
13962	// parent intent in the chain of followup intents. You can set this
13963	// field when creating an intent, for example with CreateIntent or
13964	// BatchUpdateIntents, in order to make this intent a followup intent.
13965	// It identifies the parent followup intent. Format:
13966	// `projects//agent/intents/`.
13967	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
13968
13969	// Priority: Optional. The priority of this intent. Higher numbers
13970	// represent higher priorities. - If the supplied value is unspecified
13971	// or 0, the service translates the value to 500,000, which corresponds
13972	// to the `Normal` priority in the console. - If the supplied value is
13973	// negative, the intent is ignored in runtime detect intent requests.
13974	Priority int64 `json:"priority,omitempty"`
13975
13976	// ResetContexts: Optional. Indicates whether to delete all contexts in
13977	// the current session when this intent is matched.
13978	ResetContexts bool `json:"resetContexts,omitempty"`
13979
13980	// RootFollowupIntentName: Output only. The unique identifier of the
13981	// root intent in the chain of followup intents. It identifies the
13982	// correct followup intents chain for this intent. Format:
13983	// `projects//agent/intents/`.
13984	RootFollowupIntentName string `json:"rootFollowupIntentName,omitempty"`
13985
13986	// TrainingPhrases: Optional. The collection of examples that the agent
13987	// is trained on.
13988	TrainingPhrases []*GoogleCloudDialogflowV2beta1IntentTrainingPhrase `json:"trainingPhrases,omitempty"`
13989
13990	// WebhookState: Optional. Indicates whether webhooks are enabled for
13991	// the intent.
13992	//
13993	// Possible values:
13994	//   "WEBHOOK_STATE_UNSPECIFIED" - Webhook is disabled in the agent and
13995	// in the intent.
13996	//   "WEBHOOK_STATE_ENABLED" - Webhook is enabled in the agent and in
13997	// the intent.
13998	//   "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING" - Webhook is enabled in
13999	// the agent and in the intent. Also, each slot filling prompt is
14000	// forwarded to the webhook.
14001	WebhookState string `json:"webhookState,omitempty"`
14002
14003	// ForceSendFields is a list of field names (e.g. "Action") to
14004	// unconditionally include in API requests. By default, fields with
14005	// empty or default values are omitted from API requests. However, any
14006	// non-pointer, non-interface field appearing in ForceSendFields will be
14007	// sent to the server regardless of whether the field is empty or not.
14008	// This may be used to include empty fields in Patch requests.
14009	ForceSendFields []string `json:"-"`
14010
14011	// NullFields is a list of field names (e.g. "Action") to include in API
14012	// requests with the JSON null value. By default, fields with empty
14013	// values are omitted from API requests. However, any field with an
14014	// empty value appearing in NullFields will be sent to the server as
14015	// null. It is an error if a field in this list has a non-empty value.
14016	// This may be used to include null fields in Patch requests.
14017	NullFields []string `json:"-"`
14018}
14019
14020func (s *GoogleCloudDialogflowV2beta1Intent) MarshalJSON() ([]byte, error) {
14021	type NoMethod GoogleCloudDialogflowV2beta1Intent
14022	raw := NoMethod(*s)
14023	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14024}
14025
14026// GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo: Represents a
14027// single followup intent in the chain.
14028type GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo struct {
14029	// FollowupIntentName: The unique identifier of the followup intent.
14030	// Format: `projects//agent/intents/`.
14031	FollowupIntentName string `json:"followupIntentName,omitempty"`
14032
14033	// ParentFollowupIntentName: The unique identifier of the followup
14034	// intent's parent. Format: `projects//agent/intents/`.
14035	ParentFollowupIntentName string `json:"parentFollowupIntentName,omitempty"`
14036
14037	// ForceSendFields is a list of field names (e.g. "FollowupIntentName")
14038	// to unconditionally include in API requests. By default, fields with
14039	// empty or default values are omitted from API requests. However, any
14040	// non-pointer, non-interface field appearing in ForceSendFields will be
14041	// sent to the server regardless of whether the field is empty or not.
14042	// This may be used to include empty fields in Patch requests.
14043	ForceSendFields []string `json:"-"`
14044
14045	// NullFields is a list of field names (e.g. "FollowupIntentName") to
14046	// include in API requests with the JSON null value. By default, fields
14047	// with empty values are omitted from API requests. However, any field
14048	// with an empty value appearing in NullFields will be sent to the
14049	// server as null. It is an error if a field in this list has a
14050	// non-empty value. This may be used to include null fields in Patch
14051	// requests.
14052	NullFields []string `json:"-"`
14053}
14054
14055func (s *GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo) MarshalJSON() ([]byte, error) {
14056	type NoMethod GoogleCloudDialogflowV2beta1IntentFollowupIntentInfo
14057	raw := NoMethod(*s)
14058	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14059}
14060
14061// GoogleCloudDialogflowV2beta1IntentMessage: Corresponds to the
14062// `Response` field in the Dialogflow console.
14063type GoogleCloudDialogflowV2beta1IntentMessage struct {
14064	// BasicCard: Displays a basic card for Actions on Google.
14065	BasicCard *GoogleCloudDialogflowV2beta1IntentMessageBasicCard `json:"basicCard,omitempty"`
14066
14067	// BrowseCarouselCard: Browse carousel card for Actions on Google.
14068	BrowseCarouselCard *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard `json:"browseCarouselCard,omitempty"`
14069
14070	// Card: Displays a card.
14071	Card *GoogleCloudDialogflowV2beta1IntentMessageCard `json:"card,omitempty"`
14072
14073	// CarouselSelect: Displays a carousel card for Actions on Google.
14074	CarouselSelect *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect `json:"carouselSelect,omitempty"`
14075
14076	// Image: Displays an image.
14077	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14078
14079	// LinkOutSuggestion: Displays a link out suggestion chip for Actions on
14080	// Google.
14081	LinkOutSuggestion *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion `json:"linkOutSuggestion,omitempty"`
14082
14083	// ListSelect: Displays a list card for Actions on Google.
14084	ListSelect *GoogleCloudDialogflowV2beta1IntentMessageListSelect `json:"listSelect,omitempty"`
14085
14086	// MediaContent: The media content card for Actions on Google.
14087	MediaContent *GoogleCloudDialogflowV2beta1IntentMessageMediaContent `json:"mediaContent,omitempty"`
14088
14089	// Payload: A custom platform-specific response.
14090	Payload googleapi.RawMessage `json:"payload,omitempty"`
14091
14092	// Platform: Optional. The platform that this message is intended for.
14093	//
14094	// Possible values:
14095	//   "PLATFORM_UNSPECIFIED" - Not specified.
14096	//   "FACEBOOK" - Facebook.
14097	//   "SLACK" - Slack.
14098	//   "TELEGRAM" - Telegram.
14099	//   "KIK" - Kik.
14100	//   "SKYPE" - Skype.
14101	//   "LINE" - Line.
14102	//   "VIBER" - Viber.
14103	//   "ACTIONS_ON_GOOGLE" - Google Assistant See [Dialogflow webhook
14104	// format](https://developers.google.com/assistant/actions/build/json/dia
14105	// logflow-webhook-json)
14106	//   "TELEPHONY" - Telephony Gateway.
14107	//   "GOOGLE_HANGOUTS" - Google Hangouts.
14108	Platform string `json:"platform,omitempty"`
14109
14110	// QuickReplies: Displays quick replies.
14111	QuickReplies *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies `json:"quickReplies,omitempty"`
14112
14113	// RbmCarouselRichCard: Rich Business Messaging (RBM) carousel rich card
14114	// response.
14115	RbmCarouselRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard `json:"rbmCarouselRichCard,omitempty"`
14116
14117	// RbmStandaloneRichCard: Standalone Rich Business Messaging (RBM) rich
14118	// card response.
14119	RbmStandaloneRichCard *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard `json:"rbmStandaloneRichCard,omitempty"`
14120
14121	// RbmText: Rich Business Messaging (RBM) text response. RBM allows
14122	// businesses to send enriched and branded versions of SMS. See
14123	// https://jibe.google.com/business-messaging.
14124	RbmText *GoogleCloudDialogflowV2beta1IntentMessageRbmText `json:"rbmText,omitempty"`
14125
14126	// SimpleResponses: Returns a voice or text-only response for Actions on
14127	// Google.
14128	SimpleResponses *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses `json:"simpleResponses,omitempty"`
14129
14130	// Suggestions: Displays suggestion chips for Actions on Google.
14131	Suggestions *GoogleCloudDialogflowV2beta1IntentMessageSuggestions `json:"suggestions,omitempty"`
14132
14133	// TableCard: Table card for Actions on Google.
14134	TableCard *GoogleCloudDialogflowV2beta1IntentMessageTableCard `json:"tableCard,omitempty"`
14135
14136	// TelephonyPlayAudio: Plays audio from a file in Telephony Gateway.
14137	TelephonyPlayAudio *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio `json:"telephonyPlayAudio,omitempty"`
14138
14139	// TelephonySynthesizeSpeech: Synthesizes speech in Telephony Gateway.
14140	TelephonySynthesizeSpeech *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech `json:"telephonySynthesizeSpeech,omitempty"`
14141
14142	// TelephonyTransferCall: Transfers the call in Telephony Gateway.
14143	TelephonyTransferCall *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall `json:"telephonyTransferCall,omitempty"`
14144
14145	// Text: Returns a text response.
14146	Text *GoogleCloudDialogflowV2beta1IntentMessageText `json:"text,omitempty"`
14147
14148	// ForceSendFields is a list of field names (e.g. "BasicCard") to
14149	// unconditionally include in API requests. By default, fields with
14150	// empty or default values are omitted from API requests. However, any
14151	// non-pointer, non-interface field appearing in ForceSendFields will be
14152	// sent to the server regardless of whether the field is empty or not.
14153	// This may be used to include empty fields in Patch requests.
14154	ForceSendFields []string `json:"-"`
14155
14156	// NullFields is a list of field names (e.g. "BasicCard") to include in
14157	// API requests with the JSON null value. By default, fields with empty
14158	// values are omitted from API requests. However, any field with an
14159	// empty value appearing in NullFields will be sent to the server as
14160	// null. It is an error if a field in this list has a non-empty value.
14161	// This may be used to include null fields in Patch requests.
14162	NullFields []string `json:"-"`
14163}
14164
14165func (s *GoogleCloudDialogflowV2beta1IntentMessage) MarshalJSON() ([]byte, error) {
14166	type NoMethod GoogleCloudDialogflowV2beta1IntentMessage
14167	raw := NoMethod(*s)
14168	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14169}
14170
14171// GoogleCloudDialogflowV2beta1IntentMessageBasicCard: The basic card
14172// message. Useful for displaying information.
14173type GoogleCloudDialogflowV2beta1IntentMessageBasicCard struct {
14174	// Buttons: Optional. The collection of card buttons.
14175	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
14176
14177	// FormattedText: Required, unless image is present. The body text of
14178	// the card.
14179	FormattedText string `json:"formattedText,omitempty"`
14180
14181	// Image: Optional. The image for the card.
14182	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14183
14184	// Subtitle: Optional. The subtitle of the card.
14185	Subtitle string `json:"subtitle,omitempty"`
14186
14187	// Title: Optional. The title of the card.
14188	Title string `json:"title,omitempty"`
14189
14190	// ForceSendFields is a list of field names (e.g. "Buttons") to
14191	// unconditionally include in API requests. By default, fields with
14192	// empty or default values are omitted from API requests. However, any
14193	// non-pointer, non-interface field appearing in ForceSendFields will be
14194	// sent to the server regardless of whether the field is empty or not.
14195	// This may be used to include empty fields in Patch requests.
14196	ForceSendFields []string `json:"-"`
14197
14198	// NullFields is a list of field names (e.g. "Buttons") to include in
14199	// API requests with the JSON null value. By default, fields with empty
14200	// values are omitted from API requests. However, any field with an
14201	// empty value appearing in NullFields will be sent to the server as
14202	// null. It is an error if a field in this list has a non-empty value.
14203	// This may be used to include null fields in Patch requests.
14204	NullFields []string `json:"-"`
14205}
14206
14207func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCard) MarshalJSON() ([]byte, error) {
14208	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCard
14209	raw := NoMethod(*s)
14210	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14211}
14212
14213// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton: The button
14214// object that appears at the bottom of a card.
14215type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton struct {
14216	// OpenUriAction: Required. Action to take when a user taps on the
14217	// button.
14218	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction `json:"openUriAction,omitempty"`
14219
14220	// Title: Required. The title of the button.
14221	Title string `json:"title,omitempty"`
14222
14223	// ForceSendFields is a list of field names (e.g. "OpenUriAction") to
14224	// unconditionally include in API requests. By default, fields with
14225	// empty or default values are omitted from API requests. However, any
14226	// non-pointer, non-interface field appearing in ForceSendFields will be
14227	// sent to the server regardless of whether the field is empty or not.
14228	// This may be used to include empty fields in Patch requests.
14229	ForceSendFields []string `json:"-"`
14230
14231	// NullFields is a list of field names (e.g. "OpenUriAction") to include
14232	// in API requests with the JSON null value. By default, fields with
14233	// empty values are omitted from API requests. However, any field with
14234	// an empty value appearing in NullFields will be sent to the server as
14235	// null. It is an error if a field in this list has a non-empty value.
14236	// This may be used to include null fields in Patch requests.
14237	NullFields []string `json:"-"`
14238}
14239
14240func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton) MarshalJSON() ([]byte, error) {
14241	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton
14242	raw := NoMethod(*s)
14243	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14244}
14245
14246// GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction:
14247//  Opens the given URI.
14248type GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction struct {
14249	// Uri: Required. The HTTP or HTTPS scheme URI.
14250	Uri string `json:"uri,omitempty"`
14251
14252	// ForceSendFields is a list of field names (e.g. "Uri") to
14253	// unconditionally include in API requests. By default, fields with
14254	// empty or default values are omitted from API requests. However, any
14255	// non-pointer, non-interface field appearing in ForceSendFields will be
14256	// sent to the server regardless of whether the field is empty or not.
14257	// This may be used to include empty fields in Patch requests.
14258	ForceSendFields []string `json:"-"`
14259
14260	// NullFields is a list of field names (e.g. "Uri") to include in API
14261	// requests with the JSON null value. By default, fields with empty
14262	// values are omitted from API requests. However, any field with an
14263	// empty value appearing in NullFields will be sent to the server as
14264	// null. It is an error if a field in this list has a non-empty value.
14265	// This may be used to include null fields in Patch requests.
14266	NullFields []string `json:"-"`
14267}
14268
14269func (s *GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction) MarshalJSON() ([]byte, error) {
14270	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBasicCardButtonOpenUriAction
14271	raw := NoMethod(*s)
14272	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14273}
14274
14275// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard: Browse
14276// Carousel Card for Actions on Google.
14277// https://developers.google.com/actions/assistant/responses#browsing_carousel
14278type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard struct {
14279	// ImageDisplayOptions: Optional. Settings for displaying the image.
14280	// Applies to every image in items.
14281	//
14282	// Possible values:
14283	//   "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED" - Fill the gaps between the
14284	// image and the image container with gray bars.
14285	//   "GRAY" - Fill the gaps between the image and the image container
14286	// with gray bars.
14287	//   "WHITE" - Fill the gaps between the image and the image container
14288	// with white bars.
14289	//   "CROPPED" - Image is scaled such that the image width and height
14290	// match or exceed the container dimensions. This may crop the top and
14291	// bottom of the image if the scaled image height is greater than the
14292	// container height, or crop the left and right of the image if the
14293	// scaled image width is greater than the container width. This is
14294	// similar to "Zoom Mode" on a widescreen TV when playing a 4:3 video.
14295	//   "BLURRED_BACKGROUND" - Pad the gaps between image and image frame
14296	// with a blurred copy of the same image.
14297	ImageDisplayOptions string `json:"imageDisplayOptions,omitempty"`
14298
14299	// Items: Required. List of items in the Browse Carousel Card. Minimum
14300	// of two items, maximum of ten.
14301	Items []*GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem `json:"items,omitempty"`
14302
14303	// ForceSendFields is a list of field names (e.g. "ImageDisplayOptions")
14304	// to unconditionally include in API requests. By default, fields with
14305	// empty or default values are omitted from API requests. However, any
14306	// non-pointer, non-interface field appearing in ForceSendFields will be
14307	// sent to the server regardless of whether the field is empty or not.
14308	// This may be used to include empty fields in Patch requests.
14309	ForceSendFields []string `json:"-"`
14310
14311	// NullFields is a list of field names (e.g. "ImageDisplayOptions") to
14312	// include in API requests with the JSON null value. By default, fields
14313	// with empty values are omitted from API requests. However, any field
14314	// with an empty value appearing in NullFields will be sent to the
14315	// server as null. It is an error if a field in this list has a
14316	// non-empty value. This may be used to include null fields in Patch
14317	// requests.
14318	NullFields []string `json:"-"`
14319}
14320
14321func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard) MarshalJSON() ([]byte, error) {
14322	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCard
14323	raw := NoMethod(*s)
14324	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14325}
14326
14327// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14328// selCardItem: Browsing carousel tile
14329type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem struct {
14330	// Description: Optional. Description of the carousel item. Maximum of
14331	// four lines of text.
14332	Description string `json:"description,omitempty"`
14333
14334	// Footer: Optional. Text that appears at the bottom of the Browse
14335	// Carousel Card. Maximum of one line of text.
14336	Footer string `json:"footer,omitempty"`
14337
14338	// Image: Optional. Hero image for the carousel item.
14339	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14340
14341	// OpenUriAction: Required. Action to present to the user.
14342	OpenUriAction *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction `json:"openUriAction,omitempty"`
14343
14344	// Title: Required. Title of the carousel item. Maximum of two lines of
14345	// text.
14346	Title string `json:"title,omitempty"`
14347
14348	// ForceSendFields is a list of field names (e.g. "Description") to
14349	// unconditionally include in API requests. By default, fields with
14350	// empty or default values are omitted from API requests. However, any
14351	// non-pointer, non-interface field appearing in ForceSendFields will be
14352	// sent to the server regardless of whether the field is empty or not.
14353	// This may be used to include empty fields in Patch requests.
14354	ForceSendFields []string `json:"-"`
14355
14356	// NullFields is a list of field names (e.g. "Description") to include
14357	// in API requests with the JSON null value. By default, fields with
14358	// empty values are omitted from API requests. However, any field with
14359	// an empty value appearing in NullFields will be sent to the server as
14360	// null. It is an error if a field in this list has a non-empty value.
14361	// This may be used to include null fields in Patch requests.
14362	NullFields []string `json:"-"`
14363}
14364
14365func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem) MarshalJSON() ([]byte, error) {
14366	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItem
14367	raw := NoMethod(*s)
14368	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14369}
14370
14371// GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarou
14372// selCardItemOpenUrlAction: Actions on Google action to open a given
14373// url.
14374type GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction struct {
14375	// Url: Required. URL
14376	Url string `json:"url,omitempty"`
14377
14378	// UrlTypeHint: Optional. Specifies the type of viewer that is used when
14379	// opening the URL. Defaults to opening via web browser.
14380	//
14381	// Possible values:
14382	//   "URL_TYPE_HINT_UNSPECIFIED" - Unspecified
14383	//   "AMP_ACTION" - Url would be an amp action
14384	//   "AMP_CONTENT" - URL that points directly to AMP content, or to a
14385	// canonical URL which refers to AMP content via .
14386	UrlTypeHint string `json:"urlTypeHint,omitempty"`
14387
14388	// ForceSendFields is a list of field names (e.g. "Url") to
14389	// unconditionally include in API requests. By default, fields with
14390	// empty or default values are omitted from API requests. However, any
14391	// non-pointer, non-interface field appearing in ForceSendFields will be
14392	// sent to the server regardless of whether the field is empty or not.
14393	// This may be used to include empty fields in Patch requests.
14394	ForceSendFields []string `json:"-"`
14395
14396	// NullFields is a list of field names (e.g. "Url") to include in API
14397	// requests with the JSON null value. By default, fields with empty
14398	// values are omitted from API requests. However, any field with an
14399	// empty value appearing in NullFields will be sent to the server as
14400	// null. It is an error if a field in this list has a non-empty value.
14401	// This may be used to include null fields in Patch requests.
14402	NullFields []string `json:"-"`
14403}
14404
14405func (s *GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction) MarshalJSON() ([]byte, error) {
14406	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageBrowseCarouselCardBrowseCarouselCardItemOpenUrlAction
14407	raw := NoMethod(*s)
14408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14409}
14410
14411// GoogleCloudDialogflowV2beta1IntentMessageCard: The card response
14412// message.
14413type GoogleCloudDialogflowV2beta1IntentMessageCard struct {
14414	// Buttons: Optional. The collection of card buttons.
14415	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageCardButton `json:"buttons,omitempty"`
14416
14417	// ImageUri: Optional. The public URI to an image file for the card.
14418	ImageUri string `json:"imageUri,omitempty"`
14419
14420	// Subtitle: Optional. The subtitle of the card.
14421	Subtitle string `json:"subtitle,omitempty"`
14422
14423	// Title: Optional. The title of the card.
14424	Title string `json:"title,omitempty"`
14425
14426	// ForceSendFields is a list of field names (e.g. "Buttons") to
14427	// unconditionally include in API requests. By default, fields with
14428	// empty or default values are omitted from API requests. However, any
14429	// non-pointer, non-interface field appearing in ForceSendFields will be
14430	// sent to the server regardless of whether the field is empty or not.
14431	// This may be used to include empty fields in Patch requests.
14432	ForceSendFields []string `json:"-"`
14433
14434	// NullFields is a list of field names (e.g. "Buttons") to include in
14435	// API requests with the JSON null value. By default, fields with empty
14436	// values are omitted from API requests. However, any field with an
14437	// empty value appearing in NullFields will be sent to the server as
14438	// null. It is an error if a field in this list has a non-empty value.
14439	// This may be used to include null fields in Patch requests.
14440	NullFields []string `json:"-"`
14441}
14442
14443func (s *GoogleCloudDialogflowV2beta1IntentMessageCard) MarshalJSON() ([]byte, error) {
14444	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCard
14445	raw := NoMethod(*s)
14446	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14447}
14448
14449// GoogleCloudDialogflowV2beta1IntentMessageCardButton: Optional.
14450// Contains information about a button.
14451type GoogleCloudDialogflowV2beta1IntentMessageCardButton struct {
14452	// Postback: Optional. The text to send back to the Dialogflow API or a
14453	// URI to open.
14454	Postback string `json:"postback,omitempty"`
14455
14456	// Text: Optional. The text to show on the button.
14457	Text string `json:"text,omitempty"`
14458
14459	// ForceSendFields is a list of field names (e.g. "Postback") to
14460	// unconditionally include in API requests. By default, fields with
14461	// empty or default values are omitted from API requests. However, any
14462	// non-pointer, non-interface field appearing in ForceSendFields will be
14463	// sent to the server regardless of whether the field is empty or not.
14464	// This may be used to include empty fields in Patch requests.
14465	ForceSendFields []string `json:"-"`
14466
14467	// NullFields is a list of field names (e.g. "Postback") to include in
14468	// API requests with the JSON null value. By default, fields with empty
14469	// values are omitted from API requests. However, any field with an
14470	// empty value appearing in NullFields will be sent to the server as
14471	// null. It is an error if a field in this list has a non-empty value.
14472	// This may be used to include null fields in Patch requests.
14473	NullFields []string `json:"-"`
14474}
14475
14476func (s *GoogleCloudDialogflowV2beta1IntentMessageCardButton) MarshalJSON() ([]byte, error) {
14477	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCardButton
14478	raw := NoMethod(*s)
14479	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14480}
14481
14482// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect: The card for
14483// presenting a carousel of options to select from.
14484type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect struct {
14485	// Items: Required. Carousel items.
14486	Items []*GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem `json:"items,omitempty"`
14487
14488	// ForceSendFields is a list of field names (e.g. "Items") to
14489	// unconditionally include in API requests. By default, fields with
14490	// empty or default values are omitted from API requests. However, any
14491	// non-pointer, non-interface field appearing in ForceSendFields will be
14492	// sent to the server regardless of whether the field is empty or not.
14493	// This may be used to include empty fields in Patch requests.
14494	ForceSendFields []string `json:"-"`
14495
14496	// NullFields is a list of field names (e.g. "Items") to include in API
14497	// requests with the JSON null value. By default, fields with empty
14498	// values are omitted from API requests. However, any field with an
14499	// empty value appearing in NullFields will be sent to the server as
14500	// null. It is an error if a field in this list has a non-empty value.
14501	// This may be used to include null fields in Patch requests.
14502	NullFields []string `json:"-"`
14503}
14504
14505func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect) MarshalJSON() ([]byte, error) {
14506	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelect
14507	raw := NoMethod(*s)
14508	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14509}
14510
14511// GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem: An item
14512// in the carousel.
14513type GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem struct {
14514	// Description: Optional. The body text of the card.
14515	Description string `json:"description,omitempty"`
14516
14517	// Image: Optional. The image to display.
14518	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14519
14520	// Info: Required. Additional info about the option item.
14521	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14522
14523	// Title: Required. Title of the carousel item.
14524	Title string `json:"title,omitempty"`
14525
14526	// ForceSendFields is a list of field names (e.g. "Description") to
14527	// unconditionally include in API requests. By default, fields with
14528	// empty or default values are omitted from API requests. However, any
14529	// non-pointer, non-interface field appearing in ForceSendFields will be
14530	// sent to the server regardless of whether the field is empty or not.
14531	// This may be used to include empty fields in Patch requests.
14532	ForceSendFields []string `json:"-"`
14533
14534	// NullFields is a list of field names (e.g. "Description") to include
14535	// in API requests with the JSON null value. By default, fields with
14536	// empty values are omitted from API requests. However, any field with
14537	// an empty value appearing in NullFields will be sent to the server as
14538	// null. It is an error if a field in this list has a non-empty value.
14539	// This may be used to include null fields in Patch requests.
14540	NullFields []string `json:"-"`
14541}
14542
14543func (s *GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem) MarshalJSON() ([]byte, error) {
14544	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageCarouselSelectItem
14545	raw := NoMethod(*s)
14546	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14547}
14548
14549// GoogleCloudDialogflowV2beta1IntentMessageColumnProperties: Column
14550// properties for TableCard.
14551type GoogleCloudDialogflowV2beta1IntentMessageColumnProperties struct {
14552	// Header: Required. Column heading.
14553	Header string `json:"header,omitempty"`
14554
14555	// HorizontalAlignment: Optional. Defines text alignment for all cells
14556	// in this column.
14557	//
14558	// Possible values:
14559	//   "HORIZONTAL_ALIGNMENT_UNSPECIFIED" - Text is aligned to the leading
14560	// edge of the column.
14561	//   "LEADING" - Text is aligned to the leading edge of the column.
14562	//   "CENTER" - Text is centered in the column.
14563	//   "TRAILING" - Text is aligned to the trailing edge of the column.
14564	HorizontalAlignment string `json:"horizontalAlignment,omitempty"`
14565
14566	// ForceSendFields is a list of field names (e.g. "Header") to
14567	// unconditionally include in API requests. By default, fields with
14568	// empty or default values are omitted from API requests. However, any
14569	// non-pointer, non-interface field appearing in ForceSendFields will be
14570	// sent to the server regardless of whether the field is empty or not.
14571	// This may be used to include empty fields in Patch requests.
14572	ForceSendFields []string `json:"-"`
14573
14574	// NullFields is a list of field names (e.g. "Header") to include in API
14575	// requests with the JSON null value. By default, fields with empty
14576	// values are omitted from API requests. However, any field with an
14577	// empty value appearing in NullFields will be sent to the server as
14578	// null. It is an error if a field in this list has a non-empty value.
14579	// This may be used to include null fields in Patch requests.
14580	NullFields []string `json:"-"`
14581}
14582
14583func (s *GoogleCloudDialogflowV2beta1IntentMessageColumnProperties) MarshalJSON() ([]byte, error) {
14584	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageColumnProperties
14585	raw := NoMethod(*s)
14586	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14587}
14588
14589// GoogleCloudDialogflowV2beta1IntentMessageImage: The image response
14590// message.
14591type GoogleCloudDialogflowV2beta1IntentMessageImage struct {
14592	// AccessibilityText: A text description of the image to be used for
14593	// accessibility, e.g., screen readers. Required if image_uri is set for
14594	// CarouselSelect.
14595	AccessibilityText string `json:"accessibilityText,omitempty"`
14596
14597	// ImageUri: Optional. The public URI to an image file.
14598	ImageUri string `json:"imageUri,omitempty"`
14599
14600	// ForceSendFields is a list of field names (e.g. "AccessibilityText")
14601	// to unconditionally include in API requests. By default, fields with
14602	// empty or default values are omitted from API requests. However, any
14603	// non-pointer, non-interface field appearing in ForceSendFields will be
14604	// sent to the server regardless of whether the field is empty or not.
14605	// This may be used to include empty fields in Patch requests.
14606	ForceSendFields []string `json:"-"`
14607
14608	// NullFields is a list of field names (e.g. "AccessibilityText") to
14609	// include in API requests with the JSON null value. By default, fields
14610	// with empty values are omitted from API requests. However, any field
14611	// with an empty value appearing in NullFields will be sent to the
14612	// server as null. It is an error if a field in this list has a
14613	// non-empty value. This may be used to include null fields in Patch
14614	// requests.
14615	NullFields []string `json:"-"`
14616}
14617
14618func (s *GoogleCloudDialogflowV2beta1IntentMessageImage) MarshalJSON() ([]byte, error) {
14619	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageImage
14620	raw := NoMethod(*s)
14621	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14622}
14623
14624// GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion: The
14625// suggestion chip message that allows the user to jump out to the app
14626// or website associated with this agent.
14627type GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion struct {
14628	// DestinationName: Required. The name of the app or site this chip is
14629	// linking to.
14630	DestinationName string `json:"destinationName,omitempty"`
14631
14632	// Uri: Required. The URI of the app or site to open when the user taps
14633	// the suggestion chip.
14634	Uri string `json:"uri,omitempty"`
14635
14636	// ForceSendFields is a list of field names (e.g. "DestinationName") to
14637	// unconditionally include in API requests. By default, fields with
14638	// empty or default values are omitted from API requests. However, any
14639	// non-pointer, non-interface field appearing in ForceSendFields will be
14640	// sent to the server regardless of whether the field is empty or not.
14641	// This may be used to include empty fields in Patch requests.
14642	ForceSendFields []string `json:"-"`
14643
14644	// NullFields is a list of field names (e.g. "DestinationName") to
14645	// include in API requests with the JSON null value. By default, fields
14646	// with empty values are omitted from API requests. However, any field
14647	// with an empty value appearing in NullFields will be sent to the
14648	// server as null. It is an error if a field in this list has a
14649	// non-empty value. This may be used to include null fields in Patch
14650	// requests.
14651	NullFields []string `json:"-"`
14652}
14653
14654func (s *GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion) MarshalJSON() ([]byte, error) {
14655	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageLinkOutSuggestion
14656	raw := NoMethod(*s)
14657	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14658}
14659
14660// GoogleCloudDialogflowV2beta1IntentMessageListSelect: The card for
14661// presenting a list of options to select from.
14662type GoogleCloudDialogflowV2beta1IntentMessageListSelect struct {
14663	// Items: Required. List items.
14664	Items []*GoogleCloudDialogflowV2beta1IntentMessageListSelectItem `json:"items,omitempty"`
14665
14666	// Subtitle: Optional. Subtitle of the list.
14667	Subtitle string `json:"subtitle,omitempty"`
14668
14669	// Title: Optional. The overall title of the list.
14670	Title string `json:"title,omitempty"`
14671
14672	// ForceSendFields is a list of field names (e.g. "Items") to
14673	// unconditionally include in API requests. By default, fields with
14674	// empty or default values are omitted from API requests. However, any
14675	// non-pointer, non-interface field appearing in ForceSendFields will be
14676	// sent to the server regardless of whether the field is empty or not.
14677	// This may be used to include empty fields in Patch requests.
14678	ForceSendFields []string `json:"-"`
14679
14680	// NullFields is a list of field names (e.g. "Items") to include in API
14681	// requests with the JSON null value. By default, fields with empty
14682	// values are omitted from API requests. However, any field with an
14683	// empty value appearing in NullFields will be sent to the server as
14684	// null. It is an error if a field in this list has a non-empty value.
14685	// This may be used to include null fields in Patch requests.
14686	NullFields []string `json:"-"`
14687}
14688
14689func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelect) MarshalJSON() ([]byte, error) {
14690	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelect
14691	raw := NoMethod(*s)
14692	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14693}
14694
14695// GoogleCloudDialogflowV2beta1IntentMessageListSelectItem: An item in
14696// the list.
14697type GoogleCloudDialogflowV2beta1IntentMessageListSelectItem struct {
14698	// Description: Optional. The main text describing the item.
14699	Description string `json:"description,omitempty"`
14700
14701	// Image: Optional. The image to display.
14702	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
14703
14704	// Info: Required. Additional information about this option.
14705	Info *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo `json:"info,omitempty"`
14706
14707	// Title: Required. The title of the list item.
14708	Title string `json:"title,omitempty"`
14709
14710	// ForceSendFields is a list of field names (e.g. "Description") to
14711	// unconditionally include in API requests. By default, fields with
14712	// empty or default values are omitted from API requests. However, any
14713	// non-pointer, non-interface field appearing in ForceSendFields will be
14714	// sent to the server regardless of whether the field is empty or not.
14715	// This may be used to include empty fields in Patch requests.
14716	ForceSendFields []string `json:"-"`
14717
14718	// NullFields is a list of field names (e.g. "Description") to include
14719	// in API requests with the JSON null value. By default, fields with
14720	// empty values are omitted from API requests. However, any field with
14721	// an empty value appearing in NullFields will be sent to the server as
14722	// null. It is an error if a field in this list has a non-empty value.
14723	// This may be used to include null fields in Patch requests.
14724	NullFields []string `json:"-"`
14725}
14726
14727func (s *GoogleCloudDialogflowV2beta1IntentMessageListSelectItem) MarshalJSON() ([]byte, error) {
14728	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageListSelectItem
14729	raw := NoMethod(*s)
14730	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14731}
14732
14733// GoogleCloudDialogflowV2beta1IntentMessageMediaContent: The media
14734// content card for Actions on Google.
14735type GoogleCloudDialogflowV2beta1IntentMessageMediaContent struct {
14736	// MediaObjects: Required. List of media objects.
14737	MediaObjects []*GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject `json:"mediaObjects,omitempty"`
14738
14739	// MediaType: Optional. What type of media is the content (ie "audio").
14740	//
14741	// Possible values:
14742	//   "RESPONSE_MEDIA_TYPE_UNSPECIFIED" - Unspecified.
14743	//   "AUDIO" - Response media type is audio.
14744	MediaType string `json:"mediaType,omitempty"`
14745
14746	// ForceSendFields is a list of field names (e.g. "MediaObjects") to
14747	// unconditionally include in API requests. By default, fields with
14748	// empty or default values are omitted from API requests. However, any
14749	// non-pointer, non-interface field appearing in ForceSendFields will be
14750	// sent to the server regardless of whether the field is empty or not.
14751	// This may be used to include empty fields in Patch requests.
14752	ForceSendFields []string `json:"-"`
14753
14754	// NullFields is a list of field names (e.g. "MediaObjects") to include
14755	// in API requests with the JSON null value. By default, fields with
14756	// empty values are omitted from API requests. However, any field with
14757	// an empty value appearing in NullFields will be sent to the server as
14758	// null. It is an error if a field in this list has a non-empty value.
14759	// This may be used to include null fields in Patch requests.
14760	NullFields []string `json:"-"`
14761}
14762
14763func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContent) MarshalJSON() ([]byte, error) {
14764	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContent
14765	raw := NoMethod(*s)
14766	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14767}
14768
14769// GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObje
14770// ct: Response media object for media content card.
14771type GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject struct {
14772	// ContentUrl: Required. Url where the media is stored.
14773	ContentUrl string `json:"contentUrl,omitempty"`
14774
14775	// Description: Optional. Description of media card.
14776	Description string `json:"description,omitempty"`
14777
14778	// Icon: Optional. Icon to display above media content.
14779	Icon *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"icon,omitempty"`
14780
14781	// LargeImage: Optional. Image to display above media content.
14782	LargeImage *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"largeImage,omitempty"`
14783
14784	// Name: Required. Name of media card.
14785	Name string `json:"name,omitempty"`
14786
14787	// ForceSendFields is a list of field names (e.g. "ContentUrl") to
14788	// unconditionally include in API requests. By default, fields with
14789	// empty or default values are omitted from API requests. However, any
14790	// non-pointer, non-interface field appearing in ForceSendFields will be
14791	// sent to the server regardless of whether the field is empty or not.
14792	// This may be used to include empty fields in Patch requests.
14793	ForceSendFields []string `json:"-"`
14794
14795	// NullFields is a list of field names (e.g. "ContentUrl") to include in
14796	// API requests with the JSON null value. By default, fields with empty
14797	// values are omitted from API requests. However, any field with an
14798	// empty value appearing in NullFields will be sent to the server as
14799	// null. It is an error if a field in this list has a non-empty value.
14800	// This may be used to include null fields in Patch requests.
14801	NullFields []string `json:"-"`
14802}
14803
14804func (s *GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject) MarshalJSON() ([]byte, error) {
14805	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageMediaContentResponseMediaObject
14806	raw := NoMethod(*s)
14807	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14808}
14809
14810// GoogleCloudDialogflowV2beta1IntentMessageQuickReplies: The quick
14811// replies response message.
14812type GoogleCloudDialogflowV2beta1IntentMessageQuickReplies struct {
14813	// QuickReplies: Optional. The collection of quick replies.
14814	QuickReplies []string `json:"quickReplies,omitempty"`
14815
14816	// Title: Optional. The title of the collection of quick replies.
14817	Title string `json:"title,omitempty"`
14818
14819	// ForceSendFields is a list of field names (e.g. "QuickReplies") to
14820	// unconditionally include in API requests. By default, fields with
14821	// empty or default values are omitted from API requests. However, any
14822	// non-pointer, non-interface field appearing in ForceSendFields will be
14823	// sent to the server regardless of whether the field is empty or not.
14824	// This may be used to include empty fields in Patch requests.
14825	ForceSendFields []string `json:"-"`
14826
14827	// NullFields is a list of field names (e.g. "QuickReplies") to include
14828	// in API requests with the JSON null value. By default, fields with
14829	// empty values are omitted from API requests. However, any field with
14830	// an empty value appearing in NullFields will be sent to the server as
14831	// null. It is an error if a field in this list has a non-empty value.
14832	// This may be used to include null fields in Patch requests.
14833	NullFields []string `json:"-"`
14834}
14835
14836func (s *GoogleCloudDialogflowV2beta1IntentMessageQuickReplies) MarshalJSON() ([]byte, error) {
14837	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageQuickReplies
14838	raw := NoMethod(*s)
14839	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14840}
14841
14842// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent: Rich
14843// Business Messaging (RBM) Card content
14844type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent struct {
14845	// Description: Optional. Description of the card (at most 2000 bytes).
14846	// At least one of the title, description or media must be set.
14847	Description string `json:"description,omitempty"`
14848
14849	// Media: Optional. However at least one of the title, description or
14850	// media must be set. Media (image, GIF or a video) to include in the
14851	// card.
14852	Media *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia `json:"media,omitempty"`
14853
14854	// Suggestions: Optional. List of suggestions to include in the card.
14855	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"suggestions,omitempty"`
14856
14857	// Title: Optional. Title of the card (at most 200 bytes). At least one
14858	// of the title, description or media must be set.
14859	Title string `json:"title,omitempty"`
14860
14861	// ForceSendFields is a list of field names (e.g. "Description") to
14862	// unconditionally include in API requests. By default, fields with
14863	// empty or default values are omitted from API requests. However, any
14864	// non-pointer, non-interface field appearing in ForceSendFields will be
14865	// sent to the server regardless of whether the field is empty or not.
14866	// This may be used to include empty fields in Patch requests.
14867	ForceSendFields []string `json:"-"`
14868
14869	// NullFields is a list of field names (e.g. "Description") to include
14870	// in API requests with the JSON null value. By default, fields with
14871	// empty values are omitted from API requests. However, any field with
14872	// an empty value appearing in NullFields will be sent to the server as
14873	// null. It is an error if a field in this list has a non-empty value.
14874	// This may be used to include null fields in Patch requests.
14875	NullFields []string `json:"-"`
14876}
14877
14878func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent) MarshalJSON() ([]byte, error) {
14879	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent
14880	raw := NoMethod(*s)
14881	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14882}
14883
14884// GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia: Rich
14885// Business Messaging (RBM) Media displayed in Cards The following
14886// media-types are currently supported: Image Types * image/jpeg *
14887// image/jpg' * image/gif * image/png Video Types * video/h263 *
14888// video/m4v * video/mp4 * video/mpeg * video/mpeg4 * video/webm
14889type GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia struct {
14890	// FileUri: Required. Publicly reachable URI of the file. The RBM
14891	// platform determines the MIME type of the file from the content-type
14892	// field in the HTTP headers when the platform fetches the file. The
14893	// content-type field must be present and accurate in the HTTP response
14894	// from the URL.
14895	FileUri string `json:"fileUri,omitempty"`
14896
14897	// Height: Required for cards with vertical orientation. The height of
14898	// the media within a rich card with a vertical layout. For a standalone
14899	// card with horizontal layout, height is not customizable, and this
14900	// field is ignored.
14901	//
14902	// Possible values:
14903	//   "HEIGHT_UNSPECIFIED" - Not specified.
14904	//   "SHORT" - 112 DP.
14905	//   "MEDIUM" - 168 DP.
14906	//   "TALL" - 264 DP. Not available for rich card carousels when the
14907	// card width is set to small.
14908	Height string `json:"height,omitempty"`
14909
14910	// ThumbnailUri: Optional. Publicly reachable URI of the thumbnail.If
14911	// you don't provide a thumbnail URI, the RBM platform displays a blank
14912	// placeholder thumbnail until the user's device downloads the file.
14913	// Depending on the user's setting, the file may not download
14914	// automatically and may require the user to tap a download button.
14915	ThumbnailUri string `json:"thumbnailUri,omitempty"`
14916
14917	// ForceSendFields is a list of field names (e.g. "FileUri") to
14918	// unconditionally include in API requests. By default, fields with
14919	// empty or default values are omitted from API requests. However, any
14920	// non-pointer, non-interface field appearing in ForceSendFields will be
14921	// sent to the server regardless of whether the field is empty or not.
14922	// This may be used to include empty fields in Patch requests.
14923	ForceSendFields []string `json:"-"`
14924
14925	// NullFields is a list of field names (e.g. "FileUri") to include in
14926	// API requests with the JSON null value. By default, fields with empty
14927	// values are omitted from API requests. However, any field with an
14928	// empty value appearing in NullFields will be sent to the server as
14929	// null. It is an error if a field in this list has a non-empty value.
14930	// This may be used to include null fields in Patch requests.
14931	NullFields []string `json:"-"`
14932}
14933
14934func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia) MarshalJSON() ([]byte, error) {
14935	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCardContentRbmMedia
14936	raw := NoMethod(*s)
14937	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14938}
14939
14940// GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard: Carousel
14941// Rich Business Messaging (RBM) rich card. Rich cards allow you to
14942// respond to users with more vivid content, e.g. with media and
14943// suggestions. If you want to show a single card with more control over
14944// the layout, please use RbmStandaloneCard instead.
14945type GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard struct {
14946	// CardContents: Required. The cards in the carousel. A carousel must
14947	// have at least 2 cards and at most 10.
14948	CardContents []*GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContents,omitempty"`
14949
14950	// CardWidth: Required. The width of the cards in the carousel.
14951	//
14952	// Possible values:
14953	//   "CARD_WIDTH_UNSPECIFIED" - Not specified.
14954	//   "SMALL" - 120 DP. Note that tall media cannot be used.
14955	//   "MEDIUM" - 232 DP.
14956	CardWidth string `json:"cardWidth,omitempty"`
14957
14958	// ForceSendFields is a list of field names (e.g. "CardContents") to
14959	// unconditionally include in API requests. By default, fields with
14960	// empty or default values are omitted from API requests. However, any
14961	// non-pointer, non-interface field appearing in ForceSendFields will be
14962	// sent to the server regardless of whether the field is empty or not.
14963	// This may be used to include empty fields in Patch requests.
14964	ForceSendFields []string `json:"-"`
14965
14966	// NullFields is a list of field names (e.g. "CardContents") to include
14967	// in API requests with the JSON null value. By default, fields with
14968	// empty values are omitted from API requests. However, any field with
14969	// an empty value appearing in NullFields will be sent to the server as
14970	// null. It is an error if a field in this list has a non-empty value.
14971	// This may be used to include null fields in Patch requests.
14972	NullFields []string `json:"-"`
14973}
14974
14975func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard) MarshalJSON() ([]byte, error) {
14976	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmCarouselCard
14977	raw := NoMethod(*s)
14978	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
14979}
14980
14981// GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard:
14982// Standalone Rich Business Messaging (RBM) rich card. Rich cards allow
14983// you to respond to users with more vivid content, e.g. with media and
14984// suggestions. You can group multiple rich cards into one using
14985// RbmCarouselCard but carousel cards will give you less control over
14986// the card layout.
14987type GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard struct {
14988	// CardContent: Required. Card content.
14989	CardContent *GoogleCloudDialogflowV2beta1IntentMessageRbmCardContent `json:"cardContent,omitempty"`
14990
14991	// CardOrientation: Required. Orientation of the card.
14992	//
14993	// Possible values:
14994	//   "CARD_ORIENTATION_UNSPECIFIED" - Not specified.
14995	//   "HORIZONTAL" - Horizontal layout.
14996	//   "VERTICAL" - Vertical layout.
14997	CardOrientation string `json:"cardOrientation,omitempty"`
14998
14999	// ThumbnailImageAlignment: Required if orientation is horizontal. Image
15000	// preview alignment for standalone cards with horizontal layout.
15001	//
15002	// Possible values:
15003	//   "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED" - Not specified.
15004	//   "LEFT" - Thumbnail preview is left-aligned.
15005	//   "RIGHT" - Thumbnail preview is right-aligned.
15006	ThumbnailImageAlignment string `json:"thumbnailImageAlignment,omitempty"`
15007
15008	// ForceSendFields is a list of field names (e.g. "CardContent") to
15009	// unconditionally include in API requests. By default, fields with
15010	// empty or default values are omitted from API requests. However, any
15011	// non-pointer, non-interface field appearing in ForceSendFields will be
15012	// sent to the server regardless of whether the field is empty or not.
15013	// This may be used to include empty fields in Patch requests.
15014	ForceSendFields []string `json:"-"`
15015
15016	// NullFields is a list of field names (e.g. "CardContent") to include
15017	// in API requests with the JSON null value. By default, fields with
15018	// empty values are omitted from API requests. However, any field with
15019	// an empty value appearing in NullFields will be sent to the server as
15020	// null. It is an error if a field in this list has a non-empty value.
15021	// This may be used to include null fields in Patch requests.
15022	NullFields []string `json:"-"`
15023}
15024
15025func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard) MarshalJSON() ([]byte, error) {
15026	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmStandaloneCard
15027	raw := NoMethod(*s)
15028	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15029}
15030
15031// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction: Rich
15032// Business Messaging (RBM) suggested client-side action that the user
15033// can choose from the card.
15034type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction struct {
15035	// Dial: Suggested client side action: Dial a phone number
15036	Dial *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial `json:"dial,omitempty"`
15037
15038	// OpenUrl: Suggested client side action: Open a URI on device
15039	OpenUrl *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri `json:"openUrl,omitempty"`
15040
15041	// PostbackData: Opaque payload that the Dialogflow receives in a user
15042	// event when the user taps the suggested action. This data will be also
15043	// forwarded to webhook to allow performing custom business logic.
15044	PostbackData string `json:"postbackData,omitempty"`
15045
15046	// ShareLocation: Suggested client side action: Share user location
15047	ShareLocation *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation `json:"shareLocation,omitempty"`
15048
15049	// Text: Text to display alongside the action.
15050	Text string `json:"text,omitempty"`
15051
15052	// ForceSendFields is a list of field names (e.g. "Dial") to
15053	// unconditionally include in API requests. By default, fields with
15054	// empty or default values are omitted from API requests. However, any
15055	// non-pointer, non-interface field appearing in ForceSendFields will be
15056	// sent to the server regardless of whether the field is empty or not.
15057	// This may be used to include empty fields in Patch requests.
15058	ForceSendFields []string `json:"-"`
15059
15060	// NullFields is a list of field names (e.g. "Dial") to include in API
15061	// requests with the JSON null value. By default, fields with empty
15062	// values are omitted from API requests. However, any field with an
15063	// empty value appearing in NullFields will be sent to the server as
15064	// null. It is an error if a field in this list has a non-empty value.
15065	// This may be used to include null fields in Patch requests.
15066	NullFields []string `json:"-"`
15067}
15068
15069func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction) MarshalJSON() ([]byte, error) {
15070	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction
15071	raw := NoMethod(*s)
15072	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15073}
15074
15075// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15076// dActionDial: Opens the user's default dialer app with the specified
15077// phone number but does not dial automatically.
15078type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial struct {
15079	// PhoneNumber: Required. The phone number to fill in the default dialer
15080	// app. This field should be in E.164
15081	// (https://en.wikipedia.org/wiki/E.164) format. An example of a
15082	// correctly formatted phone number: +15556767888.
15083	PhoneNumber string `json:"phoneNumber,omitempty"`
15084
15085	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
15086	// unconditionally include in API requests. By default, fields with
15087	// empty or default values are omitted from API requests. However, any
15088	// non-pointer, non-interface field appearing in ForceSendFields will be
15089	// sent to the server regardless of whether the field is empty or not.
15090	// This may be used to include empty fields in Patch requests.
15091	ForceSendFields []string `json:"-"`
15092
15093	// NullFields is a list of field names (e.g. "PhoneNumber") to include
15094	// in API requests with the JSON null value. By default, fields with
15095	// empty values are omitted from API requests. However, any field with
15096	// an empty value appearing in NullFields will be sent to the server as
15097	// null. It is an error if a field in this list has a non-empty value.
15098	// This may be used to include null fields in Patch requests.
15099	NullFields []string `json:"-"`
15100}
15101
15102func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial) MarshalJSON() ([]byte, error) {
15103	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionDial
15104	raw := NoMethod(*s)
15105	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15106}
15107
15108// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15109// dActionOpenUri: Opens the user's default web browser app to the
15110// specified uri If the user has an app installed that is registered as
15111// the default handler for the URL, then this app will be opened
15112// instead, and its icon will be used in the suggested action UI.
15113type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri struct {
15114	// Uri: Required. The uri to open on the user device
15115	Uri string `json:"uri,omitempty"`
15116
15117	// ForceSendFields is a list of field names (e.g. "Uri") to
15118	// unconditionally include in API requests. By default, fields with
15119	// empty or default values are omitted from API requests. However, any
15120	// non-pointer, non-interface field appearing in ForceSendFields will be
15121	// sent to the server regardless of whether the field is empty or not.
15122	// This may be used to include empty fields in Patch requests.
15123	ForceSendFields []string `json:"-"`
15124
15125	// NullFields is a list of field names (e.g. "Uri") to include in API
15126	// requests with the JSON null value. By default, fields with empty
15127	// values are omitted from API requests. However, any field with an
15128	// empty value appearing in NullFields will be sent to the server as
15129	// null. It is an error if a field in this list has a non-empty value.
15130	// This may be used to include null fields in Patch requests.
15131	NullFields []string `json:"-"`
15132}
15133
15134func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri) MarshalJSON() ([]byte, error) {
15135	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionOpenUri
15136	raw := NoMethod(*s)
15137	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15138}
15139
15140// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggeste
15141// dActionShareLocation: Opens the device's location chooser so the user
15142// can pick a location to send back to the agent.
15143type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedActionRbmSuggestedActionShareLocation struct {
15144}
15145
15146// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply: Rich
15147// Business Messaging (RBM) suggested reply that the user can click
15148// instead of typing in their own response.
15149type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply struct {
15150	// PostbackData: Opaque payload that the Dialogflow receives in a user
15151	// event when the user taps the suggested reply. This data will be also
15152	// forwarded to webhook to allow performing custom business logic.
15153	PostbackData string `json:"postbackData,omitempty"`
15154
15155	// Text: Suggested reply text.
15156	Text string `json:"text,omitempty"`
15157
15158	// ForceSendFields is a list of field names (e.g. "PostbackData") to
15159	// unconditionally include in API requests. By default, fields with
15160	// empty or default values are omitted from API requests. However, any
15161	// non-pointer, non-interface field appearing in ForceSendFields will be
15162	// sent to the server regardless of whether the field is empty or not.
15163	// This may be used to include empty fields in Patch requests.
15164	ForceSendFields []string `json:"-"`
15165
15166	// NullFields is a list of field names (e.g. "PostbackData") to include
15167	// in API requests with the JSON null value. By default, fields with
15168	// empty values are omitted from API requests. However, any field with
15169	// an empty value appearing in NullFields will be sent to the server as
15170	// null. It is an error if a field in this list has a non-empty value.
15171	// This may be used to include null fields in Patch requests.
15172	NullFields []string `json:"-"`
15173}
15174
15175func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply) MarshalJSON() ([]byte, error) {
15176	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply
15177	raw := NoMethod(*s)
15178	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15179}
15180
15181// GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion: Rich Business
15182// Messaging (RBM) suggestion. Suggestions allow user to easily
15183// select/click a predefined response or perform an action (like opening
15184// a web uri).
15185type GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion struct {
15186	// Action: Predefined client side actions that user can choose
15187	Action *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedAction `json:"action,omitempty"`
15188
15189	// Reply: Predefined replies for user to select instead of typing
15190	Reply *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestedReply `json:"reply,omitempty"`
15191
15192	// ForceSendFields is a list of field names (e.g. "Action") to
15193	// unconditionally include in API requests. By default, fields with
15194	// empty or default values are omitted from API requests. However, any
15195	// non-pointer, non-interface field appearing in ForceSendFields will be
15196	// sent to the server regardless of whether the field is empty or not.
15197	// This may be used to include empty fields in Patch requests.
15198	ForceSendFields []string `json:"-"`
15199
15200	// NullFields is a list of field names (e.g. "Action") to include in API
15201	// requests with the JSON null value. By default, fields with empty
15202	// values are omitted from API requests. However, any field with an
15203	// empty value appearing in NullFields will be sent to the server as
15204	// null. It is an error if a field in this list has a non-empty value.
15205	// This may be used to include null fields in Patch requests.
15206	NullFields []string `json:"-"`
15207}
15208
15209func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion) MarshalJSON() ([]byte, error) {
15210	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion
15211	raw := NoMethod(*s)
15212	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15213}
15214
15215// GoogleCloudDialogflowV2beta1IntentMessageRbmText: Rich Business
15216// Messaging (RBM) text response with suggestions.
15217type GoogleCloudDialogflowV2beta1IntentMessageRbmText struct {
15218	// RbmSuggestion: Optional. One or more suggestions to show to the user.
15219	RbmSuggestion []*GoogleCloudDialogflowV2beta1IntentMessageRbmSuggestion `json:"rbmSuggestion,omitempty"`
15220
15221	// Text: Required. Text sent and displayed to the user.
15222	Text string `json:"text,omitempty"`
15223
15224	// ForceSendFields is a list of field names (e.g. "RbmSuggestion") to
15225	// unconditionally include in API requests. By default, fields with
15226	// empty or default values are omitted from API requests. However, any
15227	// non-pointer, non-interface field appearing in ForceSendFields will be
15228	// sent to the server regardless of whether the field is empty or not.
15229	// This may be used to include empty fields in Patch requests.
15230	ForceSendFields []string `json:"-"`
15231
15232	// NullFields is a list of field names (e.g. "RbmSuggestion") to include
15233	// in API requests with the JSON null value. By default, fields with
15234	// empty values are omitted from API requests. However, any field with
15235	// an empty value appearing in NullFields will be sent to the server as
15236	// null. It is an error if a field in this list has a non-empty value.
15237	// This may be used to include null fields in Patch requests.
15238	NullFields []string `json:"-"`
15239}
15240
15241func (s *GoogleCloudDialogflowV2beta1IntentMessageRbmText) MarshalJSON() ([]byte, error) {
15242	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageRbmText
15243	raw := NoMethod(*s)
15244	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15245}
15246
15247// GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo: Additional
15248// info about the select item for when it is triggered in a dialog.
15249type GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo struct {
15250	// Key: Required. A unique key that will be sent back to the agent if
15251	// this response is given.
15252	Key string `json:"key,omitempty"`
15253
15254	// Synonyms: Optional. A list of synonyms that can also be used to
15255	// trigger this item in dialog.
15256	Synonyms []string `json:"synonyms,omitempty"`
15257
15258	// ForceSendFields is a list of field names (e.g. "Key") to
15259	// unconditionally include in API requests. By default, fields with
15260	// empty or default values are omitted from API requests. However, any
15261	// non-pointer, non-interface field appearing in ForceSendFields will be
15262	// sent to the server regardless of whether the field is empty or not.
15263	// This may be used to include empty fields in Patch requests.
15264	ForceSendFields []string `json:"-"`
15265
15266	// NullFields is a list of field names (e.g. "Key") to include in API
15267	// requests with the JSON null value. By default, fields with empty
15268	// values are omitted from API requests. However, any field with an
15269	// empty value appearing in NullFields will be sent to the server as
15270	// null. It is an error if a field in this list has a non-empty value.
15271	// This may be used to include null fields in Patch requests.
15272	NullFields []string `json:"-"`
15273}
15274
15275func (s *GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo) MarshalJSON() ([]byte, error) {
15276	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSelectItemInfo
15277	raw := NoMethod(*s)
15278	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15279}
15280
15281// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse: The simple
15282// response message containing speech or text.
15283type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse struct {
15284	// DisplayText: Optional. The text to display.
15285	DisplayText string `json:"displayText,omitempty"`
15286
15287	// Ssml: One of text_to_speech or ssml must be provided. Structured
15288	// spoken response to the user in the SSML format. Mutually exclusive
15289	// with text_to_speech.
15290	Ssml string `json:"ssml,omitempty"`
15291
15292	// TextToSpeech: One of text_to_speech or ssml must be provided. The
15293	// plain text of the speech output. Mutually exclusive with ssml.
15294	TextToSpeech string `json:"textToSpeech,omitempty"`
15295
15296	// ForceSendFields is a list of field names (e.g. "DisplayText") to
15297	// unconditionally include in API requests. By default, fields with
15298	// empty or default values are omitted from API requests. However, any
15299	// non-pointer, non-interface field appearing in ForceSendFields will be
15300	// sent to the server regardless of whether the field is empty or not.
15301	// This may be used to include empty fields in Patch requests.
15302	ForceSendFields []string `json:"-"`
15303
15304	// NullFields is a list of field names (e.g. "DisplayText") to include
15305	// in API requests with the JSON null value. By default, fields with
15306	// empty values are omitted from API requests. However, any field with
15307	// an empty value appearing in NullFields will be sent to the server as
15308	// null. It is an error if a field in this list has a non-empty value.
15309	// This may be used to include null fields in Patch requests.
15310	NullFields []string `json:"-"`
15311}
15312
15313func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse) MarshalJSON() ([]byte, error) {
15314	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse
15315	raw := NoMethod(*s)
15316	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15317}
15318
15319// GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses: The
15320// collection of simple response candidates. This message in
15321// `QueryResult.fulfillment_messages` and
15322// `WebhookResponse.fulfillment_messages` should contain only one
15323// `SimpleResponse`.
15324type GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses struct {
15325	// SimpleResponses: Required. The list of simple responses.
15326	SimpleResponses []*GoogleCloudDialogflowV2beta1IntentMessageSimpleResponse `json:"simpleResponses,omitempty"`
15327
15328	// ForceSendFields is a list of field names (e.g. "SimpleResponses") to
15329	// unconditionally include in API requests. By default, fields with
15330	// empty or default values are omitted from API requests. However, any
15331	// non-pointer, non-interface field appearing in ForceSendFields will be
15332	// sent to the server regardless of whether the field is empty or not.
15333	// This may be used to include empty fields in Patch requests.
15334	ForceSendFields []string `json:"-"`
15335
15336	// NullFields is a list of field names (e.g. "SimpleResponses") to
15337	// include in API requests with the JSON null value. By default, fields
15338	// with empty values are omitted from API requests. However, any field
15339	// with an empty value appearing in NullFields will be sent to the
15340	// server as null. It is an error if a field in this list has a
15341	// non-empty value. This may be used to include null fields in Patch
15342	// requests.
15343	NullFields []string `json:"-"`
15344}
15345
15346func (s *GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses) MarshalJSON() ([]byte, error) {
15347	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSimpleResponses
15348	raw := NoMethod(*s)
15349	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15350}
15351
15352// GoogleCloudDialogflowV2beta1IntentMessageSuggestion: The suggestion
15353// chip message that the user can tap to quickly post a reply to the
15354// conversation.
15355type GoogleCloudDialogflowV2beta1IntentMessageSuggestion struct {
15356	// Title: Required. The text shown the in the suggestion chip.
15357	Title string `json:"title,omitempty"`
15358
15359	// ForceSendFields is a list of field names (e.g. "Title") to
15360	// unconditionally include in API requests. By default, fields with
15361	// empty or default values are omitted from API requests. However, any
15362	// non-pointer, non-interface field appearing in ForceSendFields will be
15363	// sent to the server regardless of whether the field is empty or not.
15364	// This may be used to include empty fields in Patch requests.
15365	ForceSendFields []string `json:"-"`
15366
15367	// NullFields is a list of field names (e.g. "Title") to include in API
15368	// requests with the JSON null value. By default, fields with empty
15369	// values are omitted from API requests. However, any field with an
15370	// empty value appearing in NullFields will be sent to the server as
15371	// null. It is an error if a field in this list has a non-empty value.
15372	// This may be used to include null fields in Patch requests.
15373	NullFields []string `json:"-"`
15374}
15375
15376func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestion) MarshalJSON() ([]byte, error) {
15377	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestion
15378	raw := NoMethod(*s)
15379	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15380}
15381
15382// GoogleCloudDialogflowV2beta1IntentMessageSuggestions: The collection
15383// of suggestions.
15384type GoogleCloudDialogflowV2beta1IntentMessageSuggestions struct {
15385	// Suggestions: Required. The list of suggested replies.
15386	Suggestions []*GoogleCloudDialogflowV2beta1IntentMessageSuggestion `json:"suggestions,omitempty"`
15387
15388	// ForceSendFields is a list of field names (e.g. "Suggestions") to
15389	// unconditionally include in API requests. By default, fields with
15390	// empty or default values are omitted from API requests. However, any
15391	// non-pointer, non-interface field appearing in ForceSendFields will be
15392	// sent to the server regardless of whether the field is empty or not.
15393	// This may be used to include empty fields in Patch requests.
15394	ForceSendFields []string `json:"-"`
15395
15396	// NullFields is a list of field names (e.g. "Suggestions") to include
15397	// in API requests with the JSON null value. By default, fields with
15398	// empty values are omitted from API requests. However, any field with
15399	// an empty value appearing in NullFields will be sent to the server as
15400	// null. It is an error if a field in this list has a non-empty value.
15401	// This may be used to include null fields in Patch requests.
15402	NullFields []string `json:"-"`
15403}
15404
15405func (s *GoogleCloudDialogflowV2beta1IntentMessageSuggestions) MarshalJSON() ([]byte, error) {
15406	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageSuggestions
15407	raw := NoMethod(*s)
15408	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15409}
15410
15411// GoogleCloudDialogflowV2beta1IntentMessageTableCard: Table card for
15412// Actions on Google.
15413type GoogleCloudDialogflowV2beta1IntentMessageTableCard struct {
15414	// Buttons: Optional. List of buttons for the card.
15415	Buttons []*GoogleCloudDialogflowV2beta1IntentMessageBasicCardButton `json:"buttons,omitempty"`
15416
15417	// ColumnProperties: Optional. Display properties for the columns in
15418	// this table.
15419	ColumnProperties []*GoogleCloudDialogflowV2beta1IntentMessageColumnProperties `json:"columnProperties,omitempty"`
15420
15421	// Image: Optional. Image which should be displayed on the card.
15422	Image *GoogleCloudDialogflowV2beta1IntentMessageImage `json:"image,omitempty"`
15423
15424	// Rows: Optional. Rows in this table of data.
15425	Rows []*GoogleCloudDialogflowV2beta1IntentMessageTableCardRow `json:"rows,omitempty"`
15426
15427	// Subtitle: Optional. Subtitle to the title.
15428	Subtitle string `json:"subtitle,omitempty"`
15429
15430	// Title: Required. Title of the card.
15431	Title string `json:"title,omitempty"`
15432
15433	// ForceSendFields is a list of field names (e.g. "Buttons") to
15434	// unconditionally include in API requests. By default, fields with
15435	// empty or default values are omitted from API requests. However, any
15436	// non-pointer, non-interface field appearing in ForceSendFields will be
15437	// sent to the server regardless of whether the field is empty or not.
15438	// This may be used to include empty fields in Patch requests.
15439	ForceSendFields []string `json:"-"`
15440
15441	// NullFields is a list of field names (e.g. "Buttons") to include in
15442	// API requests with the JSON null value. By default, fields with empty
15443	// values are omitted from API requests. However, any field with an
15444	// empty value appearing in NullFields will be sent to the server as
15445	// null. It is an error if a field in this list has a non-empty value.
15446	// This may be used to include null fields in Patch requests.
15447	NullFields []string `json:"-"`
15448}
15449
15450func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCard) MarshalJSON() ([]byte, error) {
15451	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCard
15452	raw := NoMethod(*s)
15453	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15454}
15455
15456// GoogleCloudDialogflowV2beta1IntentMessageTableCardCell: Cell of
15457// TableCardRow.
15458type GoogleCloudDialogflowV2beta1IntentMessageTableCardCell struct {
15459	// Text: Required. Text in this cell.
15460	Text string `json:"text,omitempty"`
15461
15462	// ForceSendFields is a list of field names (e.g. "Text") to
15463	// unconditionally include in API requests. By default, fields with
15464	// empty or default values are omitted from API requests. However, any
15465	// non-pointer, non-interface field appearing in ForceSendFields will be
15466	// sent to the server regardless of whether the field is empty or not.
15467	// This may be used to include empty fields in Patch requests.
15468	ForceSendFields []string `json:"-"`
15469
15470	// NullFields is a list of field names (e.g. "Text") to include in API
15471	// requests with the JSON null value. By default, fields with empty
15472	// values are omitted from API requests. However, any field with an
15473	// empty value appearing in NullFields will be sent to the server as
15474	// null. It is an error if a field in this list has a non-empty value.
15475	// This may be used to include null fields in Patch requests.
15476	NullFields []string `json:"-"`
15477}
15478
15479func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardCell) MarshalJSON() ([]byte, error) {
15480	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardCell
15481	raw := NoMethod(*s)
15482	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15483}
15484
15485// GoogleCloudDialogflowV2beta1IntentMessageTableCardRow: Row of
15486// TableCard.
15487type GoogleCloudDialogflowV2beta1IntentMessageTableCardRow struct {
15488	// Cells: Optional. List of cells that make up this row.
15489	Cells []*GoogleCloudDialogflowV2beta1IntentMessageTableCardCell `json:"cells,omitempty"`
15490
15491	// DividerAfter: Optional. Whether to add a visual divider after this
15492	// row.
15493	DividerAfter bool `json:"dividerAfter,omitempty"`
15494
15495	// ForceSendFields is a list of field names (e.g. "Cells") to
15496	// unconditionally include in API requests. By default, fields with
15497	// empty or default values are omitted from API requests. However, any
15498	// non-pointer, non-interface field appearing in ForceSendFields will be
15499	// sent to the server regardless of whether the field is empty or not.
15500	// This may be used to include empty fields in Patch requests.
15501	ForceSendFields []string `json:"-"`
15502
15503	// NullFields is a list of field names (e.g. "Cells") to include in API
15504	// requests with the JSON null value. By default, fields with empty
15505	// values are omitted from API requests. However, any field with an
15506	// empty value appearing in NullFields will be sent to the server as
15507	// null. It is an error if a field in this list has a non-empty value.
15508	// This may be used to include null fields in Patch requests.
15509	NullFields []string `json:"-"`
15510}
15511
15512func (s *GoogleCloudDialogflowV2beta1IntentMessageTableCardRow) MarshalJSON() ([]byte, error) {
15513	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTableCardRow
15514	raw := NoMethod(*s)
15515	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15516}
15517
15518// GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio: Plays
15519// audio from a file in Telephony Gateway.
15520type GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio struct {
15521	// AudioUri: Required. URI to a Google Cloud Storage object containing
15522	// the audio to play, e.g., "gs://bucket/object". The object must
15523	// contain a single channel (mono) of linear PCM audio (2 bytes /
15524	// sample) at 8kHz. This object must be readable by the
15525	// `service-@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
15526	// where is the number of the Telephony Gateway project (usually the
15527	// same as the Dialogflow agent project). If the Google Cloud Storage
15528	// bucket is in the Telephony Gateway project, this permission is added
15529	// by default when enabling the Dialogflow V2 API. For audio from other
15530	// sources, consider using the `TelephonySynthesizeSpeech` message with
15531	// SSML.
15532	AudioUri string `json:"audioUri,omitempty"`
15533
15534	// ForceSendFields is a list of field names (e.g. "AudioUri") to
15535	// unconditionally include in API requests. By default, fields with
15536	// empty or default values are omitted from API requests. However, any
15537	// non-pointer, non-interface field appearing in ForceSendFields will be
15538	// sent to the server regardless of whether the field is empty or not.
15539	// This may be used to include empty fields in Patch requests.
15540	ForceSendFields []string `json:"-"`
15541
15542	// NullFields is a list of field names (e.g. "AudioUri") to include in
15543	// API requests with the JSON null value. By default, fields with empty
15544	// values are omitted from API requests. However, any field with an
15545	// empty value appearing in NullFields will be sent to the server as
15546	// null. It is an error if a field in this list has a non-empty value.
15547	// This may be used to include null fields in Patch requests.
15548	NullFields []string `json:"-"`
15549}
15550
15551func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio) MarshalJSON() ([]byte, error) {
15552	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyPlayAudio
15553	raw := NoMethod(*s)
15554	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15555}
15556
15557// GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech:
15558// Synthesizes speech and plays back the synthesized audio to the caller
15559// in Telephony Gateway. Telephony Gateway takes the synthesizer
15560// settings from `DetectIntentResponse.output_audio_config` which can
15561// either be set at request-level or can come from the agent-level
15562// synthesizer config.
15563type GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech struct {
15564	// Ssml: The SSML to be synthesized. For more information, see SSML
15565	// (https://developers.google.com/actions/reference/ssml).
15566	Ssml string `json:"ssml,omitempty"`
15567
15568	// Text: The raw text to be synthesized.
15569	Text string `json:"text,omitempty"`
15570
15571	// ForceSendFields is a list of field names (e.g. "Ssml") to
15572	// unconditionally include in API requests. By default, fields with
15573	// empty or default values are omitted from API requests. However, any
15574	// non-pointer, non-interface field appearing in ForceSendFields will be
15575	// sent to the server regardless of whether the field is empty or not.
15576	// This may be used to include empty fields in Patch requests.
15577	ForceSendFields []string `json:"-"`
15578
15579	// NullFields is a list of field names (e.g. "Ssml") to include in API
15580	// requests with the JSON null value. By default, fields with empty
15581	// values are omitted from API requests. However, any field with an
15582	// empty value appearing in NullFields will be sent to the server as
15583	// null. It is an error if a field in this list has a non-empty value.
15584	// This may be used to include null fields in Patch requests.
15585	NullFields []string `json:"-"`
15586}
15587
15588func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech) MarshalJSON() ([]byte, error) {
15589	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonySynthesizeSpeech
15590	raw := NoMethod(*s)
15591	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15592}
15593
15594// GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall:
15595// Transfers the call in Telephony Gateway.
15596type GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall struct {
15597	// PhoneNumber: Required. The phone number to transfer the call to in
15598	// E.164 format (https://en.wikipedia.org/wiki/E.164). We currently only
15599	// allow transferring to US numbers (+1xxxyyyzzzz).
15600	PhoneNumber string `json:"phoneNumber,omitempty"`
15601
15602	// ForceSendFields is a list of field names (e.g. "PhoneNumber") to
15603	// unconditionally include in API requests. By default, fields with
15604	// empty or default values are omitted from API requests. However, any
15605	// non-pointer, non-interface field appearing in ForceSendFields will be
15606	// sent to the server regardless of whether the field is empty or not.
15607	// This may be used to include empty fields in Patch requests.
15608	ForceSendFields []string `json:"-"`
15609
15610	// NullFields is a list of field names (e.g. "PhoneNumber") to include
15611	// in API requests with the JSON null value. By default, fields with
15612	// empty values are omitted from API requests. However, any field with
15613	// an empty value appearing in NullFields will be sent to the server as
15614	// null. It is an error if a field in this list has a non-empty value.
15615	// This may be used to include null fields in Patch requests.
15616	NullFields []string `json:"-"`
15617}
15618
15619func (s *GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall) MarshalJSON() ([]byte, error) {
15620	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageTelephonyTransferCall
15621	raw := NoMethod(*s)
15622	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15623}
15624
15625// GoogleCloudDialogflowV2beta1IntentMessageText: The text response
15626// message.
15627type GoogleCloudDialogflowV2beta1IntentMessageText struct {
15628	// Text: Optional. The collection of the agent's responses.
15629	Text []string `json:"text,omitempty"`
15630
15631	// ForceSendFields is a list of field names (e.g. "Text") to
15632	// unconditionally include in API requests. By default, fields with
15633	// empty or default values are omitted from API requests. However, any
15634	// non-pointer, non-interface field appearing in ForceSendFields will be
15635	// sent to the server regardless of whether the field is empty or not.
15636	// This may be used to include empty fields in Patch requests.
15637	ForceSendFields []string `json:"-"`
15638
15639	// NullFields is a list of field names (e.g. "Text") to include in API
15640	// requests with the JSON null value. By default, fields with empty
15641	// values are omitted from API requests. However, any field with an
15642	// empty value appearing in NullFields will be sent to the server as
15643	// null. It is an error if a field in this list has a non-empty value.
15644	// This may be used to include null fields in Patch requests.
15645	NullFields []string `json:"-"`
15646}
15647
15648func (s *GoogleCloudDialogflowV2beta1IntentMessageText) MarshalJSON() ([]byte, error) {
15649	type NoMethod GoogleCloudDialogflowV2beta1IntentMessageText
15650	raw := NoMethod(*s)
15651	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15652}
15653
15654// GoogleCloudDialogflowV2beta1IntentParameter: Represents intent
15655// parameters.
15656type GoogleCloudDialogflowV2beta1IntentParameter struct {
15657	// DefaultValue: Optional. The default value to use when the `value`
15658	// yields an empty result. Default values can be extracted from contexts
15659	// by using the following syntax: `#context_name.parameter_name`.
15660	DefaultValue string `json:"defaultValue,omitempty"`
15661
15662	// DisplayName: Required. The name of the parameter.
15663	DisplayName string `json:"displayName,omitempty"`
15664
15665	// EntityTypeDisplayName: Optional. The name of the entity type,
15666	// prefixed with `@`, that describes values of the parameter. If the
15667	// parameter is required, this must be provided.
15668	EntityTypeDisplayName string `json:"entityTypeDisplayName,omitempty"`
15669
15670	// IsList: Optional. Indicates whether the parameter represents a list
15671	// of values.
15672	IsList bool `json:"isList,omitempty"`
15673
15674	// Mandatory: Optional. Indicates whether the parameter is required.
15675	// That is, whether the intent cannot be completed without collecting
15676	// the parameter value.
15677	Mandatory bool `json:"mandatory,omitempty"`
15678
15679	// Name: The unique identifier of this parameter.
15680	Name string `json:"name,omitempty"`
15681
15682	// Prompts: Optional. The collection of prompts that the agent can
15683	// present to the user in order to collect a value for the parameter.
15684	Prompts []string `json:"prompts,omitempty"`
15685
15686	// Value: Optional. The definition of the parameter value. It can be: -
15687	// a constant string, - a parameter value defined as `$parameter_name`,
15688	// - an original parameter value defined as `$parameter_name.original`,
15689	// - a parameter value from some context defined as
15690	// `#context_name.parameter_name`.
15691	Value string `json:"value,omitempty"`
15692
15693	// ForceSendFields is a list of field names (e.g. "DefaultValue") to
15694	// unconditionally include in API requests. By default, fields with
15695	// empty or default values are omitted from API requests. However, any
15696	// non-pointer, non-interface field appearing in ForceSendFields will be
15697	// sent to the server regardless of whether the field is empty or not.
15698	// This may be used to include empty fields in Patch requests.
15699	ForceSendFields []string `json:"-"`
15700
15701	// NullFields is a list of field names (e.g. "DefaultValue") to include
15702	// in API requests with the JSON null value. By default, fields with
15703	// empty values are omitted from API requests. However, any field with
15704	// an empty value appearing in NullFields will be sent to the server as
15705	// null. It is an error if a field in this list has a non-empty value.
15706	// This may be used to include null fields in Patch requests.
15707	NullFields []string `json:"-"`
15708}
15709
15710func (s *GoogleCloudDialogflowV2beta1IntentParameter) MarshalJSON() ([]byte, error) {
15711	type NoMethod GoogleCloudDialogflowV2beta1IntentParameter
15712	raw := NoMethod(*s)
15713	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15714}
15715
15716// GoogleCloudDialogflowV2beta1IntentTrainingPhrase: Represents an
15717// example that the agent is trained on.
15718type GoogleCloudDialogflowV2beta1IntentTrainingPhrase struct {
15719	// Name: Output only. The unique identifier of this training phrase.
15720	Name string `json:"name,omitempty"`
15721
15722	// Parts: Required. The ordered list of training phrase parts. The parts
15723	// are concatenated in order to form the training phrase. Note: The API
15724	// does not automatically annotate training phrases like the Dialogflow
15725	// Console does. Note: Do not forget to include whitespace at part
15726	// boundaries, so the training phrase is well formatted when the parts
15727	// are concatenated. If the training phrase does not need to be
15728	// annotated with parameters, you just need a single part with only the
15729	// Part.text field set. If you want to annotate the training phrase, you
15730	// must create multiple parts, where the fields of each part are
15731	// populated in one of two ways: - `Part.text` is set to a part of the
15732	// phrase that has no parameters. - `Part.text` is set to a part of the
15733	// phrase that you want to annotate, and the `entity_type`, `alias`, and
15734	// `user_defined` fields are all set.
15735	Parts []*GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart `json:"parts,omitempty"`
15736
15737	// TimesAddedCount: Optional. Indicates how many times this example was
15738	// added to the intent. Each time a developer adds an existing sample by
15739	// editing an intent or training, this counter is increased.
15740	TimesAddedCount int64 `json:"timesAddedCount,omitempty"`
15741
15742	// Type: Required. The type of the training phrase.
15743	//
15744	// Possible values:
15745	//   "TYPE_UNSPECIFIED" - Not specified. This value should never be
15746	// used.
15747	//   "EXAMPLE" - Examples do not contain @-prefixed entity type names,
15748	// but example parts can be annotated with entity types.
15749	//   "TEMPLATE" - Templates are not annotated with entity types, but
15750	// they can contain @-prefixed entity type names as substrings. Template
15751	// mode has been deprecated. Example mode is the only supported way to
15752	// create new training phrases. If you have existing training phrases
15753	// that you've created in template mode, those will continue to work.
15754	Type string `json:"type,omitempty"`
15755
15756	// ForceSendFields is a list of field names (e.g. "Name") to
15757	// unconditionally include in API requests. By default, fields with
15758	// empty or default values are omitted from API requests. However, any
15759	// non-pointer, non-interface field appearing in ForceSendFields will be
15760	// sent to the server regardless of whether the field is empty or not.
15761	// This may be used to include empty fields in Patch requests.
15762	ForceSendFields []string `json:"-"`
15763
15764	// NullFields is a list of field names (e.g. "Name") to include in API
15765	// requests with the JSON null value. By default, fields with empty
15766	// values are omitted from API requests. However, any field with an
15767	// empty value appearing in NullFields will be sent to the server as
15768	// null. It is an error if a field in this list has a non-empty value.
15769	// This may be used to include null fields in Patch requests.
15770	NullFields []string `json:"-"`
15771}
15772
15773func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrase) MarshalJSON() ([]byte, error) {
15774	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrase
15775	raw := NoMethod(*s)
15776	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15777}
15778
15779// GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart: Represents a
15780// part of a training phrase.
15781type GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart struct {
15782	// Alias: Optional. The parameter name for the value extracted from the
15783	// annotated part of the example. This field is required for annotated
15784	// parts of the training phrase.
15785	Alias string `json:"alias,omitempty"`
15786
15787	// EntityType: Optional. The entity type name prefixed with `@`. This
15788	// field is required for annotated parts of the training phrase.
15789	EntityType string `json:"entityType,omitempty"`
15790
15791	// Text: Required. The text for this part.
15792	Text string `json:"text,omitempty"`
15793
15794	// UserDefined: Optional. Indicates whether the text was manually
15795	// annotated. This field is set to true when the Dialogflow Console is
15796	// used to manually annotate the part. When creating an annotated part
15797	// with the API, you must set this to true.
15798	UserDefined bool `json:"userDefined,omitempty"`
15799
15800	// ForceSendFields is a list of field names (e.g. "Alias") to
15801	// unconditionally include in API requests. By default, fields with
15802	// empty or default values are omitted from API requests. However, any
15803	// non-pointer, non-interface field appearing in ForceSendFields will be
15804	// sent to the server regardless of whether the field is empty or not.
15805	// This may be used to include empty fields in Patch requests.
15806	ForceSendFields []string `json:"-"`
15807
15808	// NullFields is a list of field names (e.g. "Alias") to include in API
15809	// requests with the JSON null value. By default, fields with empty
15810	// values are omitted from API requests. However, any field with an
15811	// empty value appearing in NullFields will be sent to the server as
15812	// null. It is an error if a field in this list has a non-empty value.
15813	// This may be used to include null fields in Patch requests.
15814	NullFields []string `json:"-"`
15815}
15816
15817func (s *GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart) MarshalJSON() ([]byte, error) {
15818	type NoMethod GoogleCloudDialogflowV2beta1IntentTrainingPhrasePart
15819	raw := NoMethod(*s)
15820	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15821}
15822
15823// GoogleCloudDialogflowV2beta1KnowledgeAnswers: Represents the result
15824// of querying a Knowledge base.
15825type GoogleCloudDialogflowV2beta1KnowledgeAnswers struct {
15826	// Answers: A list of answers from Knowledge Connector.
15827	Answers []*GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer `json:"answers,omitempty"`
15828
15829	// ForceSendFields is a list of field names (e.g. "Answers") to
15830	// unconditionally include in API requests. By default, fields with
15831	// empty or default values are omitted from API requests. However, any
15832	// non-pointer, non-interface field appearing in ForceSendFields will be
15833	// sent to the server regardless of whether the field is empty or not.
15834	// This may be used to include empty fields in Patch requests.
15835	ForceSendFields []string `json:"-"`
15836
15837	// NullFields is a list of field names (e.g. "Answers") to include in
15838	// API requests with the JSON null value. By default, fields with empty
15839	// values are omitted from API requests. However, any field with an
15840	// empty value appearing in NullFields will be sent to the server as
15841	// null. It is an error if a field in this list has a non-empty value.
15842	// This may be used to include null fields in Patch requests.
15843	NullFields []string `json:"-"`
15844}
15845
15846func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswers) MarshalJSON() ([]byte, error) {
15847	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswers
15848	raw := NoMethod(*s)
15849	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15850}
15851
15852// GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer: An answer from
15853// Knowledge Connector.
15854type GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer struct {
15855	// Answer: The piece of text from the `source` knowledge base document
15856	// that answers this conversational query.
15857	Answer string `json:"answer,omitempty"`
15858
15859	// FaqQuestion: The corresponding FAQ question if the answer was
15860	// extracted from a FAQ Document, empty otherwise.
15861	FaqQuestion string `json:"faqQuestion,omitempty"`
15862
15863	// MatchConfidence: The system's confidence score that this Knowledge
15864	// answer is a good match for this conversational query. The range is
15865	// from 0.0 (completely uncertain) to 1.0 (completely certain). Note:
15866	// The confidence score is likely to vary somewhat (possibly even for
15867	// identical requests), as the underlying model is under constant
15868	// improvement. It may be deprecated in the future. We recommend using
15869	// `match_confidence_level` which should be generally more stable.
15870	MatchConfidence float64 `json:"matchConfidence,omitempty"`
15871
15872	// MatchConfidenceLevel: The system's confidence level that this
15873	// knowledge answer is a good match for this conversational query. NOTE:
15874	// The confidence level for a given `` pair may change without notice,
15875	// as it depends on models that are constantly being improved. However,
15876	// it will change less frequently than the confidence score below, and
15877	// should be preferred for referencing the quality of an answer.
15878	//
15879	// Possible values:
15880	//   "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED" - Not specified.
15881	//   "LOW" - Indicates that the confidence is low.
15882	//   "MEDIUM" - Indicates our confidence is medium.
15883	//   "HIGH" - Indicates our confidence is high.
15884	MatchConfidenceLevel string `json:"matchConfidenceLevel,omitempty"`
15885
15886	// Source: Indicates which Knowledge Document this answer was extracted
15887	// from. Format: `projects//knowledgeBases//documents/`.
15888	Source string `json:"source,omitempty"`
15889
15890	// ForceSendFields is a list of field names (e.g. "Answer") to
15891	// unconditionally include in API requests. By default, fields with
15892	// empty or default values are omitted from API requests. However, any
15893	// non-pointer, non-interface field appearing in ForceSendFields will be
15894	// sent to the server regardless of whether the field is empty or not.
15895	// This may be used to include empty fields in Patch requests.
15896	ForceSendFields []string `json:"-"`
15897
15898	// NullFields is a list of field names (e.g. "Answer") to include in API
15899	// requests with the JSON null value. By default, fields with empty
15900	// values are omitted from API requests. However, any field with an
15901	// empty value appearing in NullFields will be sent to the server as
15902	// null. It is an error if a field in this list has a non-empty value.
15903	// This may be used to include null fields in Patch requests.
15904	NullFields []string `json:"-"`
15905}
15906
15907func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) MarshalJSON() ([]byte, error) {
15908	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15909	raw := NoMethod(*s)
15910	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15911}
15912
15913func (s *GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer) UnmarshalJSON(data []byte) error {
15914	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeAnswersAnswer
15915	var s1 struct {
15916		MatchConfidence gensupport.JSONFloat64 `json:"matchConfidence"`
15917		*NoMethod
15918	}
15919	s1.NoMethod = (*NoMethod)(s)
15920	if err := json.Unmarshal(data, &s1); err != nil {
15921		return err
15922	}
15923	s.MatchConfidence = float64(s1.MatchConfidence)
15924	return nil
15925}
15926
15927// GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata: Metadata in
15928// google::longrunning::Operation for Knowledge operations.
15929type GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata struct {
15930	// State: Required. Output only. The current state of this operation.
15931	//
15932	// Possible values:
15933	//   "STATE_UNSPECIFIED" - State unspecified.
15934	//   "PENDING" - The operation has been created.
15935	//   "RUNNING" - The operation is currently running.
15936	//   "DONE" - The operation is done, either cancelled or completed.
15937	State string `json:"state,omitempty"`
15938
15939	// ForceSendFields is a list of field names (e.g. "State") to
15940	// unconditionally include in API requests. By default, fields with
15941	// empty or default values are omitted from API requests. However, any
15942	// non-pointer, non-interface field appearing in ForceSendFields will be
15943	// sent to the server regardless of whether the field is empty or not.
15944	// This may be used to include empty fields in Patch requests.
15945	ForceSendFields []string `json:"-"`
15946
15947	// NullFields is a list of field names (e.g. "State") to include in API
15948	// requests with the JSON null value. By default, fields with empty
15949	// values are omitted from API requests. However, any field with an
15950	// empty value appearing in NullFields will be sent to the server as
15951	// null. It is an error if a field in this list has a non-empty value.
15952	// This may be used to include null fields in Patch requests.
15953	NullFields []string `json:"-"`
15954}
15955
15956func (s *GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
15957	type NoMethod GoogleCloudDialogflowV2beta1KnowledgeOperationMetadata
15958	raw := NoMethod(*s)
15959	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
15960}
15961
15962// GoogleCloudDialogflowV2beta1Message: Represents a message posted into
15963// a conversation.
15964type GoogleCloudDialogflowV2beta1Message struct {
15965	// Content: Required. The message content.
15966	Content string `json:"content,omitempty"`
15967
15968	// CreateTime: Output only. The time when the message was created in
15969	// Contact Center AI.
15970	CreateTime string `json:"createTime,omitempty"`
15971
15972	// LanguageCode: Optional. The message language. This should be a BCP-47
15973	// (https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. Example:
15974	// "en-US".
15975	LanguageCode string `json:"languageCode,omitempty"`
15976
15977	// MessageAnnotation: Output only. The annotation for the message.
15978	MessageAnnotation *GoogleCloudDialogflowV2beta1MessageAnnotation `json:"messageAnnotation,omitempty"`
15979
15980	// Name: Optional. The unique identifier of the message. Format:
15981	// `projects//locations//conversations//messages/`.
15982	Name string `json:"name,omitempty"`
15983
15984	// Participant: Output only. The participant that sends this message.
15985	Participant string `json:"participant,omitempty"`
15986
15987	// ParticipantRole: Output only. The role of the participant.
15988	//
15989	// Possible values:
15990	//   "ROLE_UNSPECIFIED" - Participant role not set.
15991	//   "HUMAN_AGENT" - Participant is a human agent.
15992	//   "AUTOMATED_AGENT" - Participant is an automated agent, such as a
15993	// Dialogflow agent.
15994	//   "END_USER" - Participant is an end user that has called or chatted
15995	// with Dialogflow services.
15996	ParticipantRole string `json:"participantRole,omitempty"`
15997
15998	// SendTime: Optional. The time when the message was sent.
15999	SendTime string `json:"sendTime,omitempty"`
16000
16001	// SentimentAnalysis: Output only. The sentiment analysis result for the
16002	// message.
16003	SentimentAnalysis *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysis,omitempty"`
16004
16005	// ForceSendFields is a list of field names (e.g. "Content") to
16006	// unconditionally include in API requests. By default, fields with
16007	// empty or default values are omitted from API requests. However, any
16008	// non-pointer, non-interface field appearing in ForceSendFields will be
16009	// sent to the server regardless of whether the field is empty or not.
16010	// This may be used to include empty fields in Patch requests.
16011	ForceSendFields []string `json:"-"`
16012
16013	// NullFields is a list of field names (e.g. "Content") to include in
16014	// API requests with the JSON null value. By default, fields with empty
16015	// values are omitted from API requests. However, any field with an
16016	// empty value appearing in NullFields will be sent to the server as
16017	// null. It is an error if a field in this list has a non-empty value.
16018	// This may be used to include null fields in Patch requests.
16019	NullFields []string `json:"-"`
16020}
16021
16022func (s *GoogleCloudDialogflowV2beta1Message) MarshalJSON() ([]byte, error) {
16023	type NoMethod GoogleCloudDialogflowV2beta1Message
16024	raw := NoMethod(*s)
16025	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16026}
16027
16028// GoogleCloudDialogflowV2beta1MessageAnnotation: Represents the result
16029// of annotation for the message.
16030type GoogleCloudDialogflowV2beta1MessageAnnotation struct {
16031	// ContainEntities: Required. Indicates whether the text message
16032	// contains entities.
16033	ContainEntities bool `json:"containEntities,omitempty"`
16034
16035	// Parts: Optional. The collection of annotated message parts ordered by
16036	// their position in the message. You can recover the annotated message
16037	// by concatenating [AnnotatedMessagePart.text].
16038	Parts []*GoogleCloudDialogflowV2beta1AnnotatedMessagePart `json:"parts,omitempty"`
16039
16040	// ForceSendFields is a list of field names (e.g. "ContainEntities") to
16041	// unconditionally include in API requests. By default, fields with
16042	// empty or default values are omitted from API requests. However, any
16043	// non-pointer, non-interface field appearing in ForceSendFields will be
16044	// sent to the server regardless of whether the field is empty or not.
16045	// This may be used to include empty fields in Patch requests.
16046	ForceSendFields []string `json:"-"`
16047
16048	// NullFields is a list of field names (e.g. "ContainEntities") to
16049	// include in API requests with the JSON null value. By default, fields
16050	// with empty values are omitted from API requests. However, any field
16051	// with an empty value appearing in NullFields will be sent to the
16052	// server as null. It is an error if a field in this list has a
16053	// non-empty value. This may be used to include null fields in Patch
16054	// requests.
16055	NullFields []string `json:"-"`
16056}
16057
16058func (s *GoogleCloudDialogflowV2beta1MessageAnnotation) MarshalJSON() ([]byte, error) {
16059	type NoMethod GoogleCloudDialogflowV2beta1MessageAnnotation
16060	raw := NoMethod(*s)
16061	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16062}
16063
16064// GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest: Represents
16065// the contents of the original request that was passed to the
16066// `[Streaming]DetectIntent` call.
16067type GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest struct {
16068	// Payload: Optional. This field is set to the value of the
16069	// `QueryParameters.payload` field passed in the request. Some
16070	// integrations that query a Dialogflow agent may provide additional
16071	// information in the payload. In particular, for the Dialogflow Phone
16072	// Gateway integration, this field has the form: { "telephony": {
16073	// "caller_id": "+18558363987" } } Note: The caller ID field
16074	// (`caller_id`) will be redacted for Trial Edition agents and populated
16075	// with the caller ID in E.164 format
16076	// (https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
16077	Payload googleapi.RawMessage `json:"payload,omitempty"`
16078
16079	// Source: The source of this request, e.g., `google`, `facebook`,
16080	// `slack`. It is set by Dialogflow-owned servers.
16081	Source string `json:"source,omitempty"`
16082
16083	// Version: Optional. The version of the protocol used for this request.
16084	// This field is AoG-specific.
16085	Version string `json:"version,omitempty"`
16086
16087	// ForceSendFields is a list of field names (e.g. "Payload") to
16088	// unconditionally include in API requests. By default, fields with
16089	// empty or default values are omitted from API requests. However, any
16090	// non-pointer, non-interface field appearing in ForceSendFields will be
16091	// sent to the server regardless of whether the field is empty or not.
16092	// This may be used to include empty fields in Patch requests.
16093	ForceSendFields []string `json:"-"`
16094
16095	// NullFields is a list of field names (e.g. "Payload") to include in
16096	// API requests with the JSON null value. By default, fields with empty
16097	// values are omitted from API requests. However, any field with an
16098	// empty value appearing in NullFields will be sent to the server as
16099	// null. It is an error if a field in this list has a non-empty value.
16100	// This may be used to include null fields in Patch requests.
16101	NullFields []string `json:"-"`
16102}
16103
16104func (s *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest) MarshalJSON() ([]byte, error) {
16105	type NoMethod GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest
16106	raw := NoMethod(*s)
16107	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16108}
16109
16110// GoogleCloudDialogflowV2beta1QueryResult: Represents the result of
16111// conversational query or event processing.
16112type GoogleCloudDialogflowV2beta1QueryResult struct {
16113	// Action: The action name from the matched intent.
16114	Action string `json:"action,omitempty"`
16115
16116	// AllRequiredParamsPresent: This field is set to: - `false` if the
16117	// matched intent has required parameters and not all of the required
16118	// parameter values have been collected. - `true` if all required
16119	// parameter values have been collected, or if the matched intent
16120	// doesn't contain any required parameters.
16121	AllRequiredParamsPresent bool `json:"allRequiredParamsPresent,omitempty"`
16122
16123	// CancelsSlotFilling: Indicates whether the conversational query
16124	// triggers a cancellation for slot filling.
16125	CancelsSlotFilling bool `json:"cancelsSlotFilling,omitempty"`
16126
16127	// DiagnosticInfo: Free-form diagnostic information for the associated
16128	// detect intent request. The fields of this data can change without
16129	// notice, so you should not write code that depends on its structure.
16130	// The data may contain: - webhook call latency - webhook errors
16131	DiagnosticInfo googleapi.RawMessage `json:"diagnosticInfo,omitempty"`
16132
16133	// FulfillmentMessages: The collection of rich messages to present to
16134	// the user.
16135	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
16136
16137	// FulfillmentText: The text to be pronounced to the user or shown on
16138	// the screen. Note: This is a legacy field, `fulfillment_messages`
16139	// should be preferred.
16140	FulfillmentText string `json:"fulfillmentText,omitempty"`
16141
16142	// Intent: The intent that matched the conversational query. Some, not
16143	// all fields are filled in this message, including but not limited to:
16144	// `name`, `display_name`, `end_interaction` and `is_fallback`.
16145	Intent *GoogleCloudDialogflowV2beta1Intent `json:"intent,omitempty"`
16146
16147	// IntentDetectionConfidence: The intent detection confidence. Values
16148	// range from 0.0 (completely uncertain) to 1.0 (completely certain).
16149	// This value is for informational purpose only and is only used to help
16150	// match the best intent within the classification threshold. This value
16151	// may change for the same end-user expression at any time due to a
16152	// model retraining or change in implementation. If there are `multiple
16153	// knowledge_answers` messages, this value is set to the greatest
16154	// `knowledgeAnswers.match_confidence` value in the list.
16155	IntentDetectionConfidence float64 `json:"intentDetectionConfidence,omitempty"`
16156
16157	// KnowledgeAnswers: The result from Knowledge Connector (if any),
16158	// ordered by decreasing `KnowledgeAnswers.match_confidence`.
16159	KnowledgeAnswers *GoogleCloudDialogflowV2beta1KnowledgeAnswers `json:"knowledgeAnswers,omitempty"`
16160
16161	// LanguageCode: The language that was triggered during intent
16162	// detection. See Language Support
16163	// (https://cloud.google.com/dialogflow/docs/reference/language) for a
16164	// list of the currently supported language codes.
16165	LanguageCode string `json:"languageCode,omitempty"`
16166
16167	// OutputContexts: The collection of output contexts. If applicable,
16168	// `output_contexts.parameters` contains entries with name `.original`
16169	// containing the original parameter values before the query.
16170	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
16171
16172	// Parameters: The collection of extracted parameters. Depending on your
16173	// protocol or client library language, this is a map, associative
16174	// array, symbol table, dictionary, or JSON object composed of a
16175	// collection of (MapKey, MapValue) pairs: - MapKey type: string -
16176	// MapKey value: parameter name - MapValue type: - If parameter's entity
16177	// type is a composite entity: map - Else: depending on parameter value
16178	// type, could be one of string, number, boolean, null, list or map -
16179	// MapValue value: - If parameter's entity type is a composite entity:
16180	// map from composite entity property names to property values - Else:
16181	// parameter value
16182	Parameters googleapi.RawMessage `json:"parameters,omitempty"`
16183
16184	// QueryText: The original conversational query text: - If natural
16185	// language text was provided as input, `query_text` contains a copy of
16186	// the input. - If natural language speech audio was provided as input,
16187	// `query_text` contains the speech recognition result. If speech
16188	// recognizer produced multiple alternatives, a particular one is
16189	// picked. - If automatic spell correction is enabled, `query_text` will
16190	// contain the corrected user input.
16191	QueryText string `json:"queryText,omitempty"`
16192
16193	// SentimentAnalysisResult: The sentiment analysis result, which depends
16194	// on the `sentiment_analysis_request_config` specified in the request.
16195	SentimentAnalysisResult *GoogleCloudDialogflowV2beta1SentimentAnalysisResult `json:"sentimentAnalysisResult,omitempty"`
16196
16197	// SpeechRecognitionConfidence: The Speech recognition confidence
16198	// between 0.0 and 1.0. A higher number indicates an estimated greater
16199	// likelihood that the recognized words are correct. The default of 0.0
16200	// is a sentinel value indicating that confidence was not set. This
16201	// field is not guaranteed to be accurate or set. In particular this
16202	// field isn't set for StreamingDetectIntent since the streaming
16203	// endpoint has separate confidence estimates per portion of the audio
16204	// in StreamingRecognitionResult.
16205	SpeechRecognitionConfidence float64 `json:"speechRecognitionConfidence,omitempty"`
16206
16207	// WebhookPayload: If the query was fulfilled by a webhook call, this
16208	// field is set to the value of the `payload` field returned in the
16209	// webhook response.
16210	WebhookPayload googleapi.RawMessage `json:"webhookPayload,omitempty"`
16211
16212	// WebhookSource: If the query was fulfilled by a webhook call, this
16213	// field is set to the value of the `source` field returned in the
16214	// webhook response.
16215	WebhookSource string `json:"webhookSource,omitempty"`
16216
16217	// ForceSendFields is a list of field names (e.g. "Action") to
16218	// unconditionally include in API requests. By default, fields with
16219	// empty or default values are omitted from API requests. However, any
16220	// non-pointer, non-interface field appearing in ForceSendFields will be
16221	// sent to the server regardless of whether the field is empty or not.
16222	// This may be used to include empty fields in Patch requests.
16223	ForceSendFields []string `json:"-"`
16224
16225	// NullFields is a list of field names (e.g. "Action") to include in API
16226	// requests with the JSON null value. By default, fields with empty
16227	// values are omitted from API requests. However, any field with an
16228	// empty value appearing in NullFields will be sent to the server as
16229	// null. It is an error if a field in this list has a non-empty value.
16230	// This may be used to include null fields in Patch requests.
16231	NullFields []string `json:"-"`
16232}
16233
16234func (s *GoogleCloudDialogflowV2beta1QueryResult) MarshalJSON() ([]byte, error) {
16235	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
16236	raw := NoMethod(*s)
16237	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16238}
16239
16240func (s *GoogleCloudDialogflowV2beta1QueryResult) UnmarshalJSON(data []byte) error {
16241	type NoMethod GoogleCloudDialogflowV2beta1QueryResult
16242	var s1 struct {
16243		IntentDetectionConfidence   gensupport.JSONFloat64 `json:"intentDetectionConfidence"`
16244		SpeechRecognitionConfidence gensupport.JSONFloat64 `json:"speechRecognitionConfidence"`
16245		*NoMethod
16246	}
16247	s1.NoMethod = (*NoMethod)(s)
16248	if err := json.Unmarshal(data, &s1); err != nil {
16249		return err
16250	}
16251	s.IntentDetectionConfidence = float64(s1.IntentDetectionConfidence)
16252	s.SpeechRecognitionConfidence = float64(s1.SpeechRecognitionConfidence)
16253	return nil
16254}
16255
16256// GoogleCloudDialogflowV2beta1Sentiment: The sentiment, such as
16257// positive/negative feeling or association, for a unit of analysis,
16258// such as the query text.
16259type GoogleCloudDialogflowV2beta1Sentiment struct {
16260	// Magnitude: A non-negative number in the [0, +inf) range, which
16261	// represents the absolute magnitude of sentiment, regardless of score
16262	// (positive or negative).
16263	Magnitude float64 `json:"magnitude,omitempty"`
16264
16265	// Score: Sentiment score between -1.0 (negative sentiment) and 1.0
16266	// (positive sentiment).
16267	Score float64 `json:"score,omitempty"`
16268
16269	// ForceSendFields is a list of field names (e.g. "Magnitude") to
16270	// unconditionally include in API requests. By default, fields with
16271	// empty or default values are omitted from API requests. However, any
16272	// non-pointer, non-interface field appearing in ForceSendFields will be
16273	// sent to the server regardless of whether the field is empty or not.
16274	// This may be used to include empty fields in Patch requests.
16275	ForceSendFields []string `json:"-"`
16276
16277	// NullFields is a list of field names (e.g. "Magnitude") to include in
16278	// API requests with the JSON null value. By default, fields with empty
16279	// values are omitted from API requests. However, any field with an
16280	// empty value appearing in NullFields will be sent to the server as
16281	// null. It is an error if a field in this list has a non-empty value.
16282	// This may be used to include null fields in Patch requests.
16283	NullFields []string `json:"-"`
16284}
16285
16286func (s *GoogleCloudDialogflowV2beta1Sentiment) MarshalJSON() ([]byte, error) {
16287	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16288	raw := NoMethod(*s)
16289	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16290}
16291
16292func (s *GoogleCloudDialogflowV2beta1Sentiment) UnmarshalJSON(data []byte) error {
16293	type NoMethod GoogleCloudDialogflowV2beta1Sentiment
16294	var s1 struct {
16295		Magnitude gensupport.JSONFloat64 `json:"magnitude"`
16296		Score     gensupport.JSONFloat64 `json:"score"`
16297		*NoMethod
16298	}
16299	s1.NoMethod = (*NoMethod)(s)
16300	if err := json.Unmarshal(data, &s1); err != nil {
16301		return err
16302	}
16303	s.Magnitude = float64(s1.Magnitude)
16304	s.Score = float64(s1.Score)
16305	return nil
16306}
16307
16308// GoogleCloudDialogflowV2beta1SentimentAnalysisResult: The result of
16309// sentiment analysis. Sentiment analysis inspects user input and
16310// identifies the prevailing subjective opinion, especially to determine
16311// a user's attitude as positive, negative, or neutral. For
16312// Participants.DetectIntent, it needs to be configured in
16313// DetectIntentRequest.query_params. For
16314// Participants.StreamingDetectIntent, it needs to be configured in
16315// StreamingDetectIntentRequest.query_params. And for
16316// Participants.AnalyzeContent and Participants.StreamingAnalyzeContent,
16317// it needs to be configured in
16318// ConversationProfile.human_agent_assistant_config
16319type GoogleCloudDialogflowV2beta1SentimentAnalysisResult struct {
16320	// QueryTextSentiment: The sentiment analysis result for `query_text`.
16321	QueryTextSentiment *GoogleCloudDialogflowV2beta1Sentiment `json:"queryTextSentiment,omitempty"`
16322
16323	// ForceSendFields is a list of field names (e.g. "QueryTextSentiment")
16324	// to unconditionally include in API requests. By default, fields with
16325	// empty or default values are omitted from API requests. However, any
16326	// non-pointer, non-interface field appearing in ForceSendFields will be
16327	// sent to the server regardless of whether the field is empty or not.
16328	// This may be used to include empty fields in Patch requests.
16329	ForceSendFields []string `json:"-"`
16330
16331	// NullFields is a list of field names (e.g. "QueryTextSentiment") to
16332	// include in API requests with the JSON null value. By default, fields
16333	// with empty values are omitted from API requests. However, any field
16334	// with an empty value appearing in NullFields will be sent to the
16335	// server as null. It is an error if a field in this list has a
16336	// non-empty value. This may be used to include null fields in Patch
16337	// requests.
16338	NullFields []string `json:"-"`
16339}
16340
16341func (s *GoogleCloudDialogflowV2beta1SentimentAnalysisResult) MarshalJSON() ([]byte, error) {
16342	type NoMethod GoogleCloudDialogflowV2beta1SentimentAnalysisResult
16343	raw := NoMethod(*s)
16344	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16345}
16346
16347// GoogleCloudDialogflowV2beta1SessionEntityType: A session represents a
16348// conversation between a Dialogflow agent and an end-user. You can
16349// create special entities, called session entities, during a session.
16350// Session entities can extend or replace custom entity types and only
16351// exist during the session that they were created for. All session
16352// data, including session entities, is stored by Dialogflow for 20
16353// minutes. For more information, see the session entity guide
16354// (https://cloud.google.com/dialogflow/docs/entities-session).
16355type GoogleCloudDialogflowV2beta1SessionEntityType struct {
16356	// Entities: Required. The collection of entities associated with this
16357	// session entity type.
16358	Entities []*GoogleCloudDialogflowV2beta1EntityTypeEntity `json:"entities,omitempty"`
16359
16360	// EntityOverrideMode: Required. Indicates whether the additional data
16361	// should override or supplement the custom entity type definition.
16362	//
16363	// Possible values:
16364	//   "ENTITY_OVERRIDE_MODE_UNSPECIFIED" - Not specified. This value
16365	// should be never used.
16366	//   "ENTITY_OVERRIDE_MODE_OVERRIDE" - The collection of session
16367	// entities overrides the collection of entities in the corresponding
16368	// custom entity type.
16369	//   "ENTITY_OVERRIDE_MODE_SUPPLEMENT" - The collection of session
16370	// entities extends the collection of entities in the corresponding
16371	// custom entity type. Note: Even in this override mode calls to
16372	// `ListSessionEntityTypes`, `GetSessionEntityType`,
16373	// `CreateSessionEntityType` and `UpdateSessionEntityType` only return
16374	// the additional entities added in this session entity type. If you
16375	// want to get the supplemented list, please call
16376	// EntityTypes.GetEntityType on the custom entity type and merge.
16377	EntityOverrideMode string `json:"entityOverrideMode,omitempty"`
16378
16379	// Name: Required. The unique identifier of this session entity type.
16380	// Supported formats: - `projects//agent/sessions//entityTypes/` -
16381	// `projects//locations//agent/sessions//entityTypes/` -
16382	// `projects//agent/environments//users//sessions//entityTypes/` -
16383	// `projects//locations//agent/environments/
16384	// /users//sessions//entityTypes/` If `Location ID` is not specified we
16385	// assume default 'us' location. If `Environment ID` is not specified,
16386	// we assume default 'draft' environment. If `User ID` is not specified,
16387	// we assume default '-' user. `` must be the display name of an
16388	// existing entity type in the same agent that will be overridden or
16389	// supplemented.
16390	Name string `json:"name,omitempty"`
16391
16392	// ForceSendFields is a list of field names (e.g. "Entities") to
16393	// unconditionally include in API requests. By default, fields with
16394	// empty or default values are omitted from API requests. However, any
16395	// non-pointer, non-interface field appearing in ForceSendFields will be
16396	// sent to the server regardless of whether the field is empty or not.
16397	// This may be used to include empty fields in Patch requests.
16398	ForceSendFields []string `json:"-"`
16399
16400	// NullFields is a list of field names (e.g. "Entities") to include in
16401	// API requests with the JSON null value. By default, fields with empty
16402	// values are omitted from API requests. However, any field with an
16403	// empty value appearing in NullFields will be sent to the server as
16404	// null. It is an error if a field in this list has a non-empty value.
16405	// This may be used to include null fields in Patch requests.
16406	NullFields []string `json:"-"`
16407}
16408
16409func (s *GoogleCloudDialogflowV2beta1SessionEntityType) MarshalJSON() ([]byte, error) {
16410	type NoMethod GoogleCloudDialogflowV2beta1SessionEntityType
16411	raw := NoMethod(*s)
16412	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16413}
16414
16415// GoogleCloudDialogflowV2beta1SmartReplyAnswer: Represents a smart
16416// reply answer.
16417type GoogleCloudDialogflowV2beta1SmartReplyAnswer struct {
16418	// AnswerRecord: The name of answer record, in the format of
16419	// "projects//locations//answerRecords/"
16420	AnswerRecord string `json:"answerRecord,omitempty"`
16421
16422	// Confidence: Smart reply confidence. The system's confidence score
16423	// that this reply is a good match for this conversation, as a value
16424	// from 0.0 (completely uncertain) to 1.0 (completely certain).
16425	Confidence float64 `json:"confidence,omitempty"`
16426
16427	// Reply: The content of the reply.
16428	Reply string `json:"reply,omitempty"`
16429
16430	// ForceSendFields is a list of field names (e.g. "AnswerRecord") to
16431	// unconditionally include in API requests. By default, fields with
16432	// empty or default values are omitted from API requests. However, any
16433	// non-pointer, non-interface field appearing in ForceSendFields will be
16434	// sent to the server regardless of whether the field is empty or not.
16435	// This may be used to include empty fields in Patch requests.
16436	ForceSendFields []string `json:"-"`
16437
16438	// NullFields is a list of field names (e.g. "AnswerRecord") to include
16439	// in API requests with the JSON null value. By default, fields with
16440	// empty values are omitted from API requests. However, any field with
16441	// an empty value appearing in NullFields will be sent to the server as
16442	// null. It is an error if a field in this list has a non-empty value.
16443	// This may be used to include null fields in Patch requests.
16444	NullFields []string `json:"-"`
16445}
16446
16447func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) MarshalJSON() ([]byte, error) {
16448	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16449	raw := NoMethod(*s)
16450	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16451}
16452
16453func (s *GoogleCloudDialogflowV2beta1SmartReplyAnswer) UnmarshalJSON(data []byte) error {
16454	type NoMethod GoogleCloudDialogflowV2beta1SmartReplyAnswer
16455	var s1 struct {
16456		Confidence gensupport.JSONFloat64 `json:"confidence"`
16457		*NoMethod
16458	}
16459	s1.NoMethod = (*NoMethod)(s)
16460	if err := json.Unmarshal(data, &s1); err != nil {
16461		return err
16462	}
16463	s.Confidence = float64(s1.Confidence)
16464	return nil
16465}
16466
16467// GoogleCloudDialogflowV2beta1SuggestArticlesResponse: The response
16468// message for Participants.SuggestArticles.
16469type GoogleCloudDialogflowV2beta1SuggestArticlesResponse struct {
16470	// ArticleAnswers: Output only. Articles ordered by score in descending
16471	// order.
16472	ArticleAnswers []*GoogleCloudDialogflowV2beta1ArticleAnswer `json:"articleAnswers,omitempty"`
16473
16474	// ContextSize: Number of messages prior to and including latest_message
16475	// to compile the suggestion. It may be smaller than the
16476	// SuggestArticlesResponse.context_size field in the request if there
16477	// aren't that many messages in the conversation.
16478	ContextSize int64 `json:"contextSize,omitempty"`
16479
16480	// LatestMessage: The name of the latest conversation message used to
16481	// compile suggestion for. Format:
16482	// `projects//locations//conversations//messages/`.
16483	LatestMessage string `json:"latestMessage,omitempty"`
16484
16485	// ForceSendFields is a list of field names (e.g. "ArticleAnswers") to
16486	// unconditionally include in API requests. By default, fields with
16487	// empty or default values are omitted from API requests. However, any
16488	// non-pointer, non-interface field appearing in ForceSendFields will be
16489	// sent to the server regardless of whether the field is empty or not.
16490	// This may be used to include empty fields in Patch requests.
16491	ForceSendFields []string `json:"-"`
16492
16493	// NullFields is a list of field names (e.g. "ArticleAnswers") to
16494	// include in API requests with the JSON null value. By default, fields
16495	// with empty values are omitted from API requests. However, any field
16496	// with an empty value appearing in NullFields will be sent to the
16497	// server as null. It is an error if a field in this list has a
16498	// non-empty value. This may be used to include null fields in Patch
16499	// requests.
16500	NullFields []string `json:"-"`
16501}
16502
16503func (s *GoogleCloudDialogflowV2beta1SuggestArticlesResponse) MarshalJSON() ([]byte, error) {
16504	type NoMethod GoogleCloudDialogflowV2beta1SuggestArticlesResponse
16505	raw := NoMethod(*s)
16506	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16507}
16508
16509// GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse: The request
16510// message for Participants.SuggestFaqAnswers.
16511type GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse struct {
16512	// ContextSize: Number of messages prior to and including latest_message
16513	// to compile the suggestion. It may be smaller than the
16514	// SuggestFaqAnswersRequest.context_size field in the request if there
16515	// aren't that many messages in the conversation.
16516	ContextSize int64 `json:"contextSize,omitempty"`
16517
16518	// FaqAnswers: Output only. Answers extracted from FAQ documents.
16519	FaqAnswers []*GoogleCloudDialogflowV2beta1FaqAnswer `json:"faqAnswers,omitempty"`
16520
16521	// LatestMessage: The name of the latest conversation message used to
16522	// compile suggestion for. Format:
16523	// `projects//locations//conversations//messages/`.
16524	LatestMessage string `json:"latestMessage,omitempty"`
16525
16526	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16527	// unconditionally include in API requests. By default, fields with
16528	// empty or default values are omitted from API requests. However, any
16529	// non-pointer, non-interface field appearing in ForceSendFields will be
16530	// sent to the server regardless of whether the field is empty or not.
16531	// This may be used to include empty fields in Patch requests.
16532	ForceSendFields []string `json:"-"`
16533
16534	// NullFields is a list of field names (e.g. "ContextSize") to include
16535	// in API requests with the JSON null value. By default, fields with
16536	// empty values are omitted from API requests. However, any field with
16537	// an empty value appearing in NullFields will be sent to the server as
16538	// null. It is an error if a field in this list has a non-empty value.
16539	// This may be used to include null fields in Patch requests.
16540	NullFields []string `json:"-"`
16541}
16542
16543func (s *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse) MarshalJSON() ([]byte, error) {
16544	type NoMethod GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse
16545	raw := NoMethod(*s)
16546	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16547}
16548
16549// GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse: The response
16550// message for Participants.SuggestSmartReplies.
16551type GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse struct {
16552	// ContextSize: Number of messages prior to and including latest_message
16553	// to compile the suggestion. It may be smaller than the
16554	// SuggestSmartRepliesRequest.context_size field in the request if there
16555	// aren't that many messages in the conversation.
16556	ContextSize int64 `json:"contextSize,omitempty"`
16557
16558	// LatestMessage: The name of the latest conversation message used to
16559	// compile suggestion for. Format:
16560	// `projects//locations//conversations//messages/`.
16561	LatestMessage string `json:"latestMessage,omitempty"`
16562
16563	// SmartReplyAnswers: Output only. Multiple reply options provided by
16564	// smart reply service. The order is based on the rank of the model
16565	// prediction. The maximum number of the returned replies is set in
16566	// SmartReplyConfig.
16567	SmartReplyAnswers []*GoogleCloudDialogflowV2beta1SmartReplyAnswer `json:"smartReplyAnswers,omitempty"`
16568
16569	// ForceSendFields is a list of field names (e.g. "ContextSize") to
16570	// unconditionally include in API requests. By default, fields with
16571	// empty or default values are omitted from API requests. However, any
16572	// non-pointer, non-interface field appearing in ForceSendFields will be
16573	// sent to the server regardless of whether the field is empty or not.
16574	// This may be used to include empty fields in Patch requests.
16575	ForceSendFields []string `json:"-"`
16576
16577	// NullFields is a list of field names (e.g. "ContextSize") to include
16578	// in API requests with the JSON null value. By default, fields with
16579	// empty values are omitted from API requests. However, any field with
16580	// an empty value appearing in NullFields will be sent to the server as
16581	// null. It is an error if a field in this list has a non-empty value.
16582	// This may be used to include null fields in Patch requests.
16583	NullFields []string `json:"-"`
16584}
16585
16586func (s *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse) MarshalJSON() ([]byte, error) {
16587	type NoMethod GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse
16588	raw := NoMethod(*s)
16589	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16590}
16591
16592// GoogleCloudDialogflowV2beta1SuggestionResult: One response of
16593// different type of suggestion response which is used in the response
16594// of Participants.AnalyzeContent and Participants.AnalyzeContent, as
16595// well as HumanAgentAssistantEvent.
16596type GoogleCloudDialogflowV2beta1SuggestionResult struct {
16597	// Error: Error status if the request failed.
16598	Error *GoogleRpcStatus `json:"error,omitempty"`
16599
16600	// SuggestArticlesResponse: SuggestArticlesResponse if request is for
16601	// ARTICLE_SUGGESTION.
16602	SuggestArticlesResponse *GoogleCloudDialogflowV2beta1SuggestArticlesResponse `json:"suggestArticlesResponse,omitempty"`
16603
16604	// SuggestFaqAnswersResponse: SuggestFaqAnswersResponse if request is
16605	// for FAQ_ANSWER.
16606	SuggestFaqAnswersResponse *GoogleCloudDialogflowV2beta1SuggestFaqAnswersResponse `json:"suggestFaqAnswersResponse,omitempty"`
16607
16608	// SuggestSmartRepliesResponse: SuggestSmartRepliesResponse if request
16609	// is for SMART_REPLY.
16610	SuggestSmartRepliesResponse *GoogleCloudDialogflowV2beta1SuggestSmartRepliesResponse `json:"suggestSmartRepliesResponse,omitempty"`
16611
16612	// ForceSendFields is a list of field names (e.g. "Error") to
16613	// unconditionally include in API requests. By default, fields with
16614	// empty or default values are omitted from API requests. However, any
16615	// non-pointer, non-interface field appearing in ForceSendFields will be
16616	// sent to the server regardless of whether the field is empty or not.
16617	// This may be used to include empty fields in Patch requests.
16618	ForceSendFields []string `json:"-"`
16619
16620	// NullFields is a list of field names (e.g. "Error") to include in API
16621	// requests with the JSON null value. By default, fields with empty
16622	// values are omitted from API requests. However, any field with an
16623	// empty value appearing in NullFields will be sent to the server as
16624	// null. It is an error if a field in this list has a non-empty value.
16625	// This may be used to include null fields in Patch requests.
16626	NullFields []string `json:"-"`
16627}
16628
16629func (s *GoogleCloudDialogflowV2beta1SuggestionResult) MarshalJSON() ([]byte, error) {
16630	type NoMethod GoogleCloudDialogflowV2beta1SuggestionResult
16631	raw := NoMethod(*s)
16632	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16633}
16634
16635// GoogleCloudDialogflowV2beta1WebhookRequest: The request message for a
16636// webhook call.
16637type GoogleCloudDialogflowV2beta1WebhookRequest struct {
16638	// AlternativeQueryResults: Alternative query results from
16639	// KnowledgeService.
16640	AlternativeQueryResults []*GoogleCloudDialogflowV2beta1QueryResult `json:"alternativeQueryResults,omitempty"`
16641
16642	// OriginalDetectIntentRequest: Optional. The contents of the original
16643	// request that was passed to `[Streaming]DetectIntent` call.
16644	OriginalDetectIntentRequest *GoogleCloudDialogflowV2beta1OriginalDetectIntentRequest `json:"originalDetectIntentRequest,omitempty"`
16645
16646	// QueryResult: The result of the conversational query or event
16647	// processing. Contains the same value as
16648	// `[Streaming]DetectIntentResponse.query_result`.
16649	QueryResult *GoogleCloudDialogflowV2beta1QueryResult `json:"queryResult,omitempty"`
16650
16651	// ResponseId: The unique identifier of the response. Contains the same
16652	// value as `[Streaming]DetectIntentResponse.response_id`.
16653	ResponseId string `json:"responseId,omitempty"`
16654
16655	// Session: The unique identifier of detectIntent request session. Can
16656	// be used to identify end-user inside webhook implementation. Supported
16657	// formats: - `projects//agent/sessions/, -
16658	// `projects//locations//agent/sessions/`, -
16659	// `projects//agent/environments//users//sessions/`, -
16660	// `projects//locations//agent/environments//users//sessions/`,
16661	Session string `json:"session,omitempty"`
16662
16663	// ForceSendFields is a list of field names (e.g.
16664	// "AlternativeQueryResults") to unconditionally include in API
16665	// requests. By default, fields with empty or default values are omitted
16666	// from API requests. However, any non-pointer, non-interface field
16667	// appearing in ForceSendFields will be sent to the server regardless of
16668	// whether the field is empty or not. This may be used to include empty
16669	// fields in Patch requests.
16670	ForceSendFields []string `json:"-"`
16671
16672	// NullFields is a list of field names (e.g. "AlternativeQueryResults")
16673	// to include in API requests with the JSON null value. By default,
16674	// fields with empty values are omitted from API requests. However, any
16675	// field with an empty value appearing in NullFields will be sent to the
16676	// server as null. It is an error if a field in this list has a
16677	// non-empty value. This may be used to include null fields in Patch
16678	// requests.
16679	NullFields []string `json:"-"`
16680}
16681
16682func (s *GoogleCloudDialogflowV2beta1WebhookRequest) MarshalJSON() ([]byte, error) {
16683	type NoMethod GoogleCloudDialogflowV2beta1WebhookRequest
16684	raw := NoMethod(*s)
16685	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16686}
16687
16688// GoogleCloudDialogflowV2beta1WebhookResponse: The response message for
16689// a webhook call. This response is validated by the Dialogflow server.
16690// If validation fails, an error will be returned in the
16691// QueryResult.diagnostic_info field. Setting JSON fields to an empty
16692// value with the wrong type is a common error. To avoid this error: -
16693// Use "" for empty strings - Use `{}` or `null` for empty objects -
16694// Use `[]` or `null` for empty arrays For more information, see the
16695// Protocol Buffers Language Guide
16696// (https://developers.google.com/protocol-buffers/docs/proto3#json).
16697type GoogleCloudDialogflowV2beta1WebhookResponse struct {
16698	// EndInteraction: Optional. Indicates that this intent ends an
16699	// interaction. Some integrations (e.g., Actions on Google or Dialogflow
16700	// phone gateway) use this information to close interaction with an end
16701	// user. Default is false.
16702	EndInteraction bool `json:"endInteraction,omitempty"`
16703
16704	// FollowupEventInput: Optional. Invokes the supplied events. When this
16705	// field is set, Dialogflow ignores the `fulfillment_text`,
16706	// `fulfillment_messages`, and `payload` fields.
16707	FollowupEventInput *GoogleCloudDialogflowV2beta1EventInput `json:"followupEventInput,omitempty"`
16708
16709	// FulfillmentMessages: Optional. The rich response messages intended
16710	// for the end-user. When provided, Dialogflow uses this field to
16711	// populate QueryResult.fulfillment_messages sent to the integration or
16712	// API caller.
16713	FulfillmentMessages []*GoogleCloudDialogflowV2beta1IntentMessage `json:"fulfillmentMessages,omitempty"`
16714
16715	// FulfillmentText: Optional. The text response message intended for the
16716	// end-user. It is recommended to use
16717	// `fulfillment_messages.text.text[0]` instead. When provided,
16718	// Dialogflow uses this field to populate QueryResult.fulfillment_text
16719	// sent to the integration or API caller.
16720	FulfillmentText string `json:"fulfillmentText,omitempty"`
16721
16722	// LiveAgentHandoff: Indicates that a live agent should be brought in to
16723	// handle the interaction with the user. In most cases, when you set
16724	// this flag to true, you would also want to set end_interaction to true
16725	// as well. Default is false.
16726	LiveAgentHandoff bool `json:"liveAgentHandoff,omitempty"`
16727
16728	// OutputContexts: Optional. The collection of output contexts that will
16729	// overwrite currently active contexts for the session and reset their
16730	// lifespans. When provided, Dialogflow uses this field to populate
16731	// QueryResult.output_contexts sent to the integration or API caller.
16732	OutputContexts []*GoogleCloudDialogflowV2beta1Context `json:"outputContexts,omitempty"`
16733
16734	// Payload: Optional. This field can be used to pass custom data from
16735	// your webhook to the integration or API caller. Arbitrary JSON objects
16736	// are supported. When provided, Dialogflow uses this field to populate
16737	// QueryResult.webhook_payload sent to the integration or API caller.
16738	// This field is also used by the Google Assistant integration
16739	// (https://cloud.google.com/dialogflow/docs/integrations/aog) for rich
16740	// response messages. See the format definition at Google Assistant
16741	// Dialogflow webhook format
16742	// (https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
16743	Payload googleapi.RawMessage `json:"payload,omitempty"`
16744
16745	// SessionEntityTypes: Optional. Additional session entity types to
16746	// replace or extend developer entity types with. The entity synonyms
16747	// apply to all languages and persist for the session. Setting this data
16748	// from a webhook overwrites the session entity types that have been set
16749	// using `detectIntent`, `streamingDetectIntent` or SessionEntityType
16750	// management methods.
16751	SessionEntityTypes []*GoogleCloudDialogflowV2beta1SessionEntityType `json:"sessionEntityTypes,omitempty"`
16752
16753	// Source: Optional. A custom field used to identify the webhook source.
16754	// Arbitrary strings are supported. When provided, Dialogflow uses this
16755	// field to populate QueryResult.webhook_source sent to the integration
16756	// or API caller.
16757	Source string `json:"source,omitempty"`
16758
16759	// ForceSendFields is a list of field names (e.g. "EndInteraction") to
16760	// unconditionally include in API requests. By default, fields with
16761	// empty or default values are omitted from API requests. However, any
16762	// non-pointer, non-interface field appearing in ForceSendFields will be
16763	// sent to the server regardless of whether the field is empty or not.
16764	// This may be used to include empty fields in Patch requests.
16765	ForceSendFields []string `json:"-"`
16766
16767	// NullFields is a list of field names (e.g. "EndInteraction") to
16768	// include in API requests with the JSON null value. By default, fields
16769	// with empty values are omitted from API requests. However, any field
16770	// with an empty value appearing in NullFields will be sent to the
16771	// server as null. It is an error if a field in this list has a
16772	// non-empty value. This may be used to include null fields in Patch
16773	// requests.
16774	NullFields []string `json:"-"`
16775}
16776
16777func (s *GoogleCloudDialogflowV2beta1WebhookResponse) MarshalJSON() ([]byte, error) {
16778	type NoMethod GoogleCloudDialogflowV2beta1WebhookResponse
16779	raw := NoMethod(*s)
16780	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16781}
16782
16783// GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata:
16784// Metadata for CreateDocument operation.
16785type GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata struct {
16786	// GenericMetadata: The generic information of the operation.
16787	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16788
16789	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16790	// unconditionally include in API requests. By default, fields with
16791	// empty or default values are omitted from API requests. However, any
16792	// non-pointer, non-interface field appearing in ForceSendFields will be
16793	// sent to the server regardless of whether the field is empty or not.
16794	// This may be used to include empty fields in Patch requests.
16795	ForceSendFields []string `json:"-"`
16796
16797	// NullFields is a list of field names (e.g. "GenericMetadata") to
16798	// include in API requests with the JSON null value. By default, fields
16799	// with empty values are omitted from API requests. However, any field
16800	// with an empty value appearing in NullFields will be sent to the
16801	// server as null. It is an error if a field in this list has a
16802	// non-empty value. This may be used to include null fields in Patch
16803	// requests.
16804	NullFields []string `json:"-"`
16805}
16806
16807func (s *GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16808	type NoMethod GoogleCloudDialogflowV3alpha1CreateDocumentOperationMetadata
16809	raw := NoMethod(*s)
16810	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16811}
16812
16813// GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata:
16814// Metadata for DeleteDocument operation.
16815type GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata struct {
16816	// GenericMetadata: The generic information of the operation.
16817	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16818
16819	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16820	// unconditionally include in API requests. By default, fields with
16821	// empty or default values are omitted from API requests. However, any
16822	// non-pointer, non-interface field appearing in ForceSendFields will be
16823	// sent to the server regardless of whether the field is empty or not.
16824	// This may be used to include empty fields in Patch requests.
16825	ForceSendFields []string `json:"-"`
16826
16827	// NullFields is a list of field names (e.g. "GenericMetadata") to
16828	// include in API requests with the JSON null value. By default, fields
16829	// with empty values are omitted from API requests. However, any field
16830	// with an empty value appearing in NullFields will be sent to the
16831	// server as null. It is an error if a field in this list has a
16832	// non-empty value. This may be used to include null fields in Patch
16833	// requests.
16834	NullFields []string `json:"-"`
16835}
16836
16837func (s *GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16838	type NoMethod GoogleCloudDialogflowV3alpha1DeleteDocumentOperationMetadata
16839	raw := NoMethod(*s)
16840	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16841}
16842
16843// GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata:
16844// Metadata in google::longrunning::Operation for Knowledge operations.
16845type GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata struct {
16846	// State: Required. Output only. The current state of this operation.
16847	//
16848	// Possible values:
16849	//   "STATE_UNSPECIFIED" - State unspecified.
16850	//   "PENDING" - The operation has been created.
16851	//   "RUNNING" - The operation is currently running.
16852	//   "DONE" - The operation is done, either cancelled or completed.
16853	State string `json:"state,omitempty"`
16854
16855	// ForceSendFields is a list of field names (e.g. "State") to
16856	// unconditionally include in API requests. By default, fields with
16857	// empty or default values are omitted from API requests. However, any
16858	// non-pointer, non-interface field appearing in ForceSendFields will be
16859	// sent to the server regardless of whether the field is empty or not.
16860	// This may be used to include empty fields in Patch requests.
16861	ForceSendFields []string `json:"-"`
16862
16863	// NullFields is a list of field names (e.g. "State") to include in API
16864	// requests with the JSON null value. By default, fields with empty
16865	// values are omitted from API requests. However, any field with an
16866	// empty value appearing in NullFields will be sent to the server as
16867	// null. It is an error if a field in this list has a non-empty value.
16868	// This may be used to include null fields in Patch requests.
16869	NullFields []string `json:"-"`
16870}
16871
16872func (s *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata) MarshalJSON() ([]byte, error) {
16873	type NoMethod GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata
16874	raw := NoMethod(*s)
16875	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16876}
16877
16878// GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata:
16879// Metadata for ImportDocuments operation.
16880type GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata struct {
16881	// GenericMetadata: The generic information of the operation.
16882	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16883
16884	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16885	// unconditionally include in API requests. By default, fields with
16886	// empty or default values are omitted from API requests. However, any
16887	// non-pointer, non-interface field appearing in ForceSendFields will be
16888	// sent to the server regardless of whether the field is empty or not.
16889	// This may be used to include empty fields in Patch requests.
16890	ForceSendFields []string `json:"-"`
16891
16892	// NullFields is a list of field names (e.g. "GenericMetadata") to
16893	// include in API requests with the JSON null value. By default, fields
16894	// with empty values are omitted from API requests. However, any field
16895	// with an empty value appearing in NullFields will be sent to the
16896	// server as null. It is an error if a field in this list has a
16897	// non-empty value. This may be used to include null fields in Patch
16898	// requests.
16899	NullFields []string `json:"-"`
16900}
16901
16902func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata) MarshalJSON() ([]byte, error) {
16903	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsOperationMetadata
16904	raw := NoMethod(*s)
16905	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16906}
16907
16908// GoogleCloudDialogflowV3alpha1ImportDocumentsResponse: Response
16909// message for Documents.ImportDocuments.
16910type GoogleCloudDialogflowV3alpha1ImportDocumentsResponse struct {
16911	// Warnings: Includes details about skipped documents or any other
16912	// warnings.
16913	Warnings []*GoogleRpcStatus `json:"warnings,omitempty"`
16914
16915	// ForceSendFields is a list of field names (e.g. "Warnings") to
16916	// unconditionally include in API requests. By default, fields with
16917	// empty or default values are omitted from API requests. However, any
16918	// non-pointer, non-interface field appearing in ForceSendFields will be
16919	// sent to the server regardless of whether the field is empty or not.
16920	// This may be used to include empty fields in Patch requests.
16921	ForceSendFields []string `json:"-"`
16922
16923	// NullFields is a list of field names (e.g. "Warnings") to include in
16924	// API requests with the JSON null value. By default, fields with empty
16925	// values are omitted from API requests. However, any field with an
16926	// empty value appearing in NullFields will be sent to the server as
16927	// null. It is an error if a field in this list has a non-empty value.
16928	// This may be used to include null fields in Patch requests.
16929	NullFields []string `json:"-"`
16930}
16931
16932func (s *GoogleCloudDialogflowV3alpha1ImportDocumentsResponse) MarshalJSON() ([]byte, error) {
16933	type NoMethod GoogleCloudDialogflowV3alpha1ImportDocumentsResponse
16934	raw := NoMethod(*s)
16935	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16936}
16937
16938// GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata:
16939// Metadata for ReloadDocument operation.
16940type GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata struct {
16941	// GenericMetadata: The generic information of the operation.
16942	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16943
16944	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16945	// unconditionally include in API requests. By default, fields with
16946	// empty or default values are omitted from API requests. However, any
16947	// non-pointer, non-interface field appearing in ForceSendFields will be
16948	// sent to the server regardless of whether the field is empty or not.
16949	// This may be used to include empty fields in Patch requests.
16950	ForceSendFields []string `json:"-"`
16951
16952	// NullFields is a list of field names (e.g. "GenericMetadata") to
16953	// include in API requests with the JSON null value. By default, fields
16954	// with empty values are omitted from API requests. However, any field
16955	// with an empty value appearing in NullFields will be sent to the
16956	// server as null. It is an error if a field in this list has a
16957	// non-empty value. This may be used to include null fields in Patch
16958	// requests.
16959	NullFields []string `json:"-"`
16960}
16961
16962func (s *GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16963	type NoMethod GoogleCloudDialogflowV3alpha1ReloadDocumentOperationMetadata
16964	raw := NoMethod(*s)
16965	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16966}
16967
16968// GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata:
16969// Metadata for UpdateDocument operation.
16970type GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata struct {
16971	// GenericMetadata: The generic information of the operation.
16972	GenericMetadata *GoogleCloudDialogflowV3alpha1GenericKnowledgeOperationMetadata `json:"genericMetadata,omitempty"`
16973
16974	// ForceSendFields is a list of field names (e.g. "GenericMetadata") to
16975	// unconditionally include in API requests. By default, fields with
16976	// empty or default values are omitted from API requests. However, any
16977	// non-pointer, non-interface field appearing in ForceSendFields will be
16978	// sent to the server regardless of whether the field is empty or not.
16979	// This may be used to include empty fields in Patch requests.
16980	ForceSendFields []string `json:"-"`
16981
16982	// NullFields is a list of field names (e.g. "GenericMetadata") to
16983	// include in API requests with the JSON null value. By default, fields
16984	// with empty values are omitted from API requests. However, any field
16985	// with an empty value appearing in NullFields will be sent to the
16986	// server as null. It is an error if a field in this list has a
16987	// non-empty value. This may be used to include null fields in Patch
16988	// requests.
16989	NullFields []string `json:"-"`
16990}
16991
16992func (s *GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata) MarshalJSON() ([]byte, error) {
16993	type NoMethod GoogleCloudDialogflowV3alpha1UpdateDocumentOperationMetadata
16994	raw := NoMethod(*s)
16995	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
16996}
16997
16998// GoogleCloudLocationListLocationsResponse: The response message for
16999// Locations.ListLocations.
17000type GoogleCloudLocationListLocationsResponse struct {
17001	// Locations: A list of locations that matches the specified filter in
17002	// the request.
17003	Locations []*GoogleCloudLocationLocation `json:"locations,omitempty"`
17004
17005	// NextPageToken: The standard List next-page token.
17006	NextPageToken string `json:"nextPageToken,omitempty"`
17007
17008	// ServerResponse contains the HTTP response code and headers from the
17009	// server.
17010	googleapi.ServerResponse `json:"-"`
17011
17012	// ForceSendFields is a list of field names (e.g. "Locations") to
17013	// unconditionally include in API requests. By default, fields with
17014	// empty or default values are omitted from API requests. However, any
17015	// non-pointer, non-interface field appearing in ForceSendFields will be
17016	// sent to the server regardless of whether the field is empty or not.
17017	// This may be used to include empty fields in Patch requests.
17018	ForceSendFields []string `json:"-"`
17019
17020	// NullFields is a list of field names (e.g. "Locations") to include in
17021	// API requests with the JSON null value. By default, fields with empty
17022	// values are omitted from API requests. However, any field with an
17023	// empty value appearing in NullFields will be sent to the server as
17024	// null. It is an error if a field in this list has a non-empty value.
17025	// This may be used to include null fields in Patch requests.
17026	NullFields []string `json:"-"`
17027}
17028
17029func (s *GoogleCloudLocationListLocationsResponse) MarshalJSON() ([]byte, error) {
17030	type NoMethod GoogleCloudLocationListLocationsResponse
17031	raw := NoMethod(*s)
17032	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17033}
17034
17035// GoogleCloudLocationLocation: A resource that represents Google Cloud
17036// Platform location.
17037type GoogleCloudLocationLocation struct {
17038	// DisplayName: The friendly name for this location, typically a nearby
17039	// city name. For example, "Tokyo".
17040	DisplayName string `json:"displayName,omitempty"`
17041
17042	// Labels: Cross-service attributes for the location. For example
17043	// {"cloud.googleapis.com/region": "us-east1"}
17044	Labels map[string]string `json:"labels,omitempty"`
17045
17046	// LocationId: The canonical id for this location. For example:
17047	// "us-east1".
17048	LocationId string `json:"locationId,omitempty"`
17049
17050	// Metadata: Service-specific metadata. For example the available
17051	// capacity at the given location.
17052	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
17053
17054	// Name: Resource name for the location, which may vary between
17055	// implementations. For example:
17056	// "projects/example-project/locations/us-east1"
17057	Name string `json:"name,omitempty"`
17058
17059	// ServerResponse contains the HTTP response code and headers from the
17060	// server.
17061	googleapi.ServerResponse `json:"-"`
17062
17063	// ForceSendFields is a list of field names (e.g. "DisplayName") to
17064	// unconditionally include in API requests. By default, fields with
17065	// empty or default values are omitted from API requests. However, any
17066	// non-pointer, non-interface field appearing in ForceSendFields will be
17067	// sent to the server regardless of whether the field is empty or not.
17068	// This may be used to include empty fields in Patch requests.
17069	ForceSendFields []string `json:"-"`
17070
17071	// NullFields is a list of field names (e.g. "DisplayName") to include
17072	// in API requests with the JSON null value. By default, fields with
17073	// empty values are omitted from API requests. However, any field with
17074	// an empty value appearing in NullFields will be sent to the server as
17075	// null. It is an error if a field in this list has a non-empty value.
17076	// This may be used to include null fields in Patch requests.
17077	NullFields []string `json:"-"`
17078}
17079
17080func (s *GoogleCloudLocationLocation) MarshalJSON() ([]byte, error) {
17081	type NoMethod GoogleCloudLocationLocation
17082	raw := NoMethod(*s)
17083	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17084}
17085
17086// GoogleLongrunningListOperationsResponse: The response message for
17087// Operations.ListOperations.
17088type GoogleLongrunningListOperationsResponse struct {
17089	// NextPageToken: The standard List next-page token.
17090	NextPageToken string `json:"nextPageToken,omitempty"`
17091
17092	// Operations: A list of operations that matches the specified filter in
17093	// the request.
17094	Operations []*GoogleLongrunningOperation `json:"operations,omitempty"`
17095
17096	// ServerResponse contains the HTTP response code and headers from the
17097	// server.
17098	googleapi.ServerResponse `json:"-"`
17099
17100	// ForceSendFields is a list of field names (e.g. "NextPageToken") to
17101	// unconditionally include in API requests. By default, fields with
17102	// empty or default values are omitted from API requests. However, any
17103	// non-pointer, non-interface field appearing in ForceSendFields will be
17104	// sent to the server regardless of whether the field is empty or not.
17105	// This may be used to include empty fields in Patch requests.
17106	ForceSendFields []string `json:"-"`
17107
17108	// NullFields is a list of field names (e.g. "NextPageToken") to include
17109	// in API requests with the JSON null value. By default, fields with
17110	// empty values are omitted from API requests. However, any field with
17111	// an empty value appearing in NullFields will be sent to the server as
17112	// null. It is an error if a field in this list has a non-empty value.
17113	// This may be used to include null fields in Patch requests.
17114	NullFields []string `json:"-"`
17115}
17116
17117func (s *GoogleLongrunningListOperationsResponse) MarshalJSON() ([]byte, error) {
17118	type NoMethod GoogleLongrunningListOperationsResponse
17119	raw := NoMethod(*s)
17120	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17121}
17122
17123// GoogleLongrunningOperation: This resource represents a long-running
17124// operation that is the result of a network API call.
17125type GoogleLongrunningOperation struct {
17126	// Done: If the value is `false`, it means the operation is still in
17127	// progress. If `true`, the operation is completed, and either `error`
17128	// or `response` is available.
17129	Done bool `json:"done,omitempty"`
17130
17131	// Error: The error result of the operation in case of failure or
17132	// cancellation.
17133	Error *GoogleRpcStatus `json:"error,omitempty"`
17134
17135	// Metadata: Service-specific metadata associated with the operation. It
17136	// typically contains progress information and common metadata such as
17137	// create time. Some services might not provide such metadata. Any
17138	// method that returns a long-running operation should document the
17139	// metadata type, if any.
17140	Metadata googleapi.RawMessage `json:"metadata,omitempty"`
17141
17142	// Name: The server-assigned name, which is only unique within the same
17143	// service that originally returns it. If you use the default HTTP
17144	// mapping, the `name` should be a resource name ending with
17145	// `operations/{unique_id}`.
17146	Name string `json:"name,omitempty"`
17147
17148	// Response: The normal response of the operation in case of success. If
17149	// the original method returns no data on success, such as `Delete`, the
17150	// response is `google.protobuf.Empty`. If the original method is
17151	// standard `Get`/`Create`/`Update`, the response should be the
17152	// resource. For other methods, the response should have the type
17153	// `XxxResponse`, where `Xxx` is the original method name. For example,
17154	// if the original method name is `TakeSnapshot()`, the inferred
17155	// response type is `TakeSnapshotResponse`.
17156	Response googleapi.RawMessage `json:"response,omitempty"`
17157
17158	// ServerResponse contains the HTTP response code and headers from the
17159	// server.
17160	googleapi.ServerResponse `json:"-"`
17161
17162	// ForceSendFields is a list of field names (e.g. "Done") to
17163	// unconditionally include in API requests. By default, fields with
17164	// empty or default values are omitted from API requests. However, any
17165	// non-pointer, non-interface field appearing in ForceSendFields will be
17166	// sent to the server regardless of whether the field is empty or not.
17167	// This may be used to include empty fields in Patch requests.
17168	ForceSendFields []string `json:"-"`
17169
17170	// NullFields is a list of field names (e.g. "Done") to include in API
17171	// requests with the JSON null value. By default, fields with empty
17172	// values are omitted from API requests. However, any field with an
17173	// empty value appearing in NullFields will be sent to the server as
17174	// null. It is an error if a field in this list has a non-empty value.
17175	// This may be used to include null fields in Patch requests.
17176	NullFields []string `json:"-"`
17177}
17178
17179func (s *GoogleLongrunningOperation) MarshalJSON() ([]byte, error) {
17180	type NoMethod GoogleLongrunningOperation
17181	raw := NoMethod(*s)
17182	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17183}
17184
17185// GoogleProtobufEmpty: A generic empty message that you can re-use to
17186// avoid defining duplicated empty messages in your APIs. A typical
17187// example is to use it as the request or the response type of an API
17188// method. For instance: service Foo { rpc Bar(google.protobuf.Empty)
17189// returns (google.protobuf.Empty); } The JSON representation for
17190// `Empty` is empty JSON object `{}`.
17191type GoogleProtobufEmpty struct {
17192	// ServerResponse contains the HTTP response code and headers from the
17193	// server.
17194	googleapi.ServerResponse `json:"-"`
17195}
17196
17197// GoogleRpcStatus: The `Status` type defines a logical error model that
17198// is suitable for different programming environments, including REST
17199// APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each
17200// `Status` message contains three pieces of data: error code, error
17201// message, and error details. You can find out more about this error
17202// model and how to work with it in the API Design Guide
17203// (https://cloud.google.com/apis/design/errors).
17204type GoogleRpcStatus struct {
17205	// Code: The status code, which should be an enum value of
17206	// google.rpc.Code.
17207	Code int64 `json:"code,omitempty"`
17208
17209	// Details: A list of messages that carry the error details. There is a
17210	// common set of message types for APIs to use.
17211	Details []googleapi.RawMessage `json:"details,omitempty"`
17212
17213	// Message: A developer-facing error message, which should be in
17214	// English. Any user-facing error message should be localized and sent
17215	// in the google.rpc.Status.details field, or localized by the client.
17216	Message string `json:"message,omitempty"`
17217
17218	// ForceSendFields is a list of field names (e.g. "Code") to
17219	// unconditionally include in API requests. By default, fields with
17220	// empty or default values are omitted from API requests. However, any
17221	// non-pointer, non-interface field appearing in ForceSendFields will be
17222	// sent to the server regardless of whether the field is empty or not.
17223	// This may be used to include empty fields in Patch requests.
17224	ForceSendFields []string `json:"-"`
17225
17226	// NullFields is a list of field names (e.g. "Code") to include in API
17227	// requests with the JSON null value. By default, fields with empty
17228	// values are omitted from API requests. However, any field with an
17229	// empty value appearing in NullFields will be sent to the server as
17230	// null. It is an error if a field in this list has a non-empty value.
17231	// This may be used to include null fields in Patch requests.
17232	NullFields []string `json:"-"`
17233}
17234
17235func (s *GoogleRpcStatus) MarshalJSON() ([]byte, error) {
17236	type NoMethod GoogleRpcStatus
17237	raw := NoMethod(*s)
17238	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17239}
17240
17241// GoogleTypeLatLng: An object that represents a latitude/longitude
17242// pair. This is expressed as a pair of doubles to represent degrees
17243// latitude and degrees longitude. Unless specified otherwise, this
17244// object must conform to the WGS84 standard. Values must be within
17245// normalized ranges.
17246type GoogleTypeLatLng struct {
17247	// Latitude: The latitude in degrees. It must be in the range [-90.0,
17248	// +90.0].
17249	Latitude float64 `json:"latitude,omitempty"`
17250
17251	// Longitude: The longitude in degrees. It must be in the range [-180.0,
17252	// +180.0].
17253	Longitude float64 `json:"longitude,omitempty"`
17254
17255	// ForceSendFields is a list of field names (e.g. "Latitude") to
17256	// unconditionally include in API requests. By default, fields with
17257	// empty or default values are omitted from API requests. However, any
17258	// non-pointer, non-interface field appearing in ForceSendFields will be
17259	// sent to the server regardless of whether the field is empty or not.
17260	// This may be used to include empty fields in Patch requests.
17261	ForceSendFields []string `json:"-"`
17262
17263	// NullFields is a list of field names (e.g. "Latitude") to include in
17264	// API requests with the JSON null value. By default, fields with empty
17265	// values are omitted from API requests. However, any field with an
17266	// empty value appearing in NullFields will be sent to the server as
17267	// null. It is an error if a field in this list has a non-empty value.
17268	// This may be used to include null fields in Patch requests.
17269	NullFields []string `json:"-"`
17270}
17271
17272func (s *GoogleTypeLatLng) MarshalJSON() ([]byte, error) {
17273	type NoMethod GoogleTypeLatLng
17274	raw := NoMethod(*s)
17275	return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
17276}
17277
17278func (s *GoogleTypeLatLng) UnmarshalJSON(data []byte) error {
17279	type NoMethod GoogleTypeLatLng
17280	var s1 struct {
17281		Latitude  gensupport.JSONFloat64 `json:"latitude"`
17282		Longitude gensupport.JSONFloat64 `json:"longitude"`
17283		*NoMethod
17284	}
17285	s1.NoMethod = (*NoMethod)(s)
17286	if err := json.Unmarshal(data, &s1); err != nil {
17287		return err
17288	}
17289	s.Latitude = float64(s1.Latitude)
17290	s.Longitude = float64(s1.Longitude)
17291	return nil
17292}
17293
17294// method id "dialogflow.projects.locations.get":
17295
17296type ProjectsLocationsGetCall struct {
17297	s            *Service
17298	name         string
17299	urlParams_   gensupport.URLParams
17300	ifNoneMatch_ string
17301	ctx_         context.Context
17302	header_      http.Header
17303}
17304
17305// Get: Gets information about a location.
17306//
17307// - name: Resource name for the location.
17308func (r *ProjectsLocationsService) Get(name string) *ProjectsLocationsGetCall {
17309	c := &ProjectsLocationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17310	c.name = name
17311	return c
17312}
17313
17314// Fields allows partial responses to be retrieved. See
17315// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17316// for more information.
17317func (c *ProjectsLocationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsGetCall {
17318	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17319	return c
17320}
17321
17322// IfNoneMatch sets the optional parameter which makes the operation
17323// fail if the object's ETag matches the given value. This is useful for
17324// getting updates only after the object has changed since the last
17325// request. Use googleapi.IsNotModified to check whether the response
17326// error from Do is the result of In-None-Match.
17327func (c *ProjectsLocationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsGetCall {
17328	c.ifNoneMatch_ = entityTag
17329	return c
17330}
17331
17332// Context sets the context to be used in this call's Do method. Any
17333// pending HTTP request will be aborted if the provided context is
17334// canceled.
17335func (c *ProjectsLocationsGetCall) Context(ctx context.Context) *ProjectsLocationsGetCall {
17336	c.ctx_ = ctx
17337	return c
17338}
17339
17340// Header returns an http.Header that can be modified by the caller to
17341// add HTTP headers to the request.
17342func (c *ProjectsLocationsGetCall) Header() http.Header {
17343	if c.header_ == nil {
17344		c.header_ = make(http.Header)
17345	}
17346	return c.header_
17347}
17348
17349func (c *ProjectsLocationsGetCall) doRequest(alt string) (*http.Response, error) {
17350	reqHeaders := make(http.Header)
17351	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17352	for k, v := range c.header_ {
17353		reqHeaders[k] = v
17354	}
17355	reqHeaders.Set("User-Agent", c.s.userAgent())
17356	if c.ifNoneMatch_ != "" {
17357		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17358	}
17359	var body io.Reader = nil
17360	c.urlParams_.Set("alt", alt)
17361	c.urlParams_.Set("prettyPrint", "false")
17362	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
17363	urls += "?" + c.urlParams_.Encode()
17364	req, err := http.NewRequest("GET", urls, body)
17365	if err != nil {
17366		return nil, err
17367	}
17368	req.Header = reqHeaders
17369	googleapi.Expand(req.URL, map[string]string{
17370		"name": c.name,
17371	})
17372	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17373}
17374
17375// Do executes the "dialogflow.projects.locations.get" call.
17376// Exactly one of *GoogleCloudLocationLocation or error will be non-nil.
17377// Any non-2xx status code is an error. Response headers are in either
17378// *GoogleCloudLocationLocation.ServerResponse.Header or (if a response
17379// was returned at all) in error.(*googleapi.Error).Header. Use
17380// googleapi.IsNotModified to check whether the returned error was
17381// because http.StatusNotModified was returned.
17382func (c *ProjectsLocationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudLocationLocation, error) {
17383	gensupport.SetOptions(c.urlParams_, opts...)
17384	res, err := c.doRequest("json")
17385	if res != nil && res.StatusCode == http.StatusNotModified {
17386		if res.Body != nil {
17387			res.Body.Close()
17388		}
17389		return nil, &googleapi.Error{
17390			Code:   res.StatusCode,
17391			Header: res.Header,
17392		}
17393	}
17394	if err != nil {
17395		return nil, err
17396	}
17397	defer googleapi.CloseBody(res)
17398	if err := googleapi.CheckResponse(res); err != nil {
17399		return nil, err
17400	}
17401	ret := &GoogleCloudLocationLocation{
17402		ServerResponse: googleapi.ServerResponse{
17403			Header:         res.Header,
17404			HTTPStatusCode: res.StatusCode,
17405		},
17406	}
17407	target := &ret
17408	if err := gensupport.DecodeResponse(target, res); err != nil {
17409		return nil, err
17410	}
17411	return ret, nil
17412	// {
17413	//   "description": "Gets information about a location.",
17414	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}",
17415	//   "httpMethod": "GET",
17416	//   "id": "dialogflow.projects.locations.get",
17417	//   "parameterOrder": [
17418	//     "name"
17419	//   ],
17420	//   "parameters": {
17421	//     "name": {
17422	//       "description": "Resource name for the location.",
17423	//       "location": "path",
17424	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17425	//       "required": true,
17426	//       "type": "string"
17427	//     }
17428	//   },
17429	//   "path": "v3beta1/{+name}",
17430	//   "response": {
17431	//     "$ref": "GoogleCloudLocationLocation"
17432	//   },
17433	//   "scopes": [
17434	//     "https://www.googleapis.com/auth/cloud-platform",
17435	//     "https://www.googleapis.com/auth/dialogflow"
17436	//   ]
17437	// }
17438
17439}
17440
17441// method id "dialogflow.projects.locations.list":
17442
17443type ProjectsLocationsListCall struct {
17444	s            *Service
17445	name         string
17446	urlParams_   gensupport.URLParams
17447	ifNoneMatch_ string
17448	ctx_         context.Context
17449	header_      http.Header
17450}
17451
17452// List: Lists information about the supported locations for this
17453// service.
17454//
17455// - name: The resource that owns the locations collection, if
17456//   applicable.
17457func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall {
17458	c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17459	c.name = name
17460	return c
17461}
17462
17463// Filter sets the optional parameter "filter": A filter to narrow down
17464// results to a preferred subset. The filtering language accepts strings
17465// like "displayName=tokyo", and is documented in more detail in AIP-160
17466// (https://google.aip.dev/160).
17467func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall {
17468	c.urlParams_.Set("filter", filter)
17469	return c
17470}
17471
17472// PageSize sets the optional parameter "pageSize": The maximum number
17473// of results to return. If not set, the service selects a default.
17474func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall {
17475	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
17476	return c
17477}
17478
17479// PageToken sets the optional parameter "pageToken": A page token
17480// received from the `next_page_token` field in the response. Send that
17481// page token to receive the subsequent page.
17482func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall {
17483	c.urlParams_.Set("pageToken", pageToken)
17484	return c
17485}
17486
17487// Fields allows partial responses to be retrieved. See
17488// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17489// for more information.
17490func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall {
17491	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17492	return c
17493}
17494
17495// IfNoneMatch sets the optional parameter which makes the operation
17496// fail if the object's ETag matches the given value. This is useful for
17497// getting updates only after the object has changed since the last
17498// request. Use googleapi.IsNotModified to check whether the response
17499// error from Do is the result of In-None-Match.
17500func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall {
17501	c.ifNoneMatch_ = entityTag
17502	return c
17503}
17504
17505// Context sets the context to be used in this call's Do method. Any
17506// pending HTTP request will be aborted if the provided context is
17507// canceled.
17508func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall {
17509	c.ctx_ = ctx
17510	return c
17511}
17512
17513// Header returns an http.Header that can be modified by the caller to
17514// add HTTP headers to the request.
17515func (c *ProjectsLocationsListCall) Header() http.Header {
17516	if c.header_ == nil {
17517		c.header_ = make(http.Header)
17518	}
17519	return c.header_
17520}
17521
17522func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) {
17523	reqHeaders := make(http.Header)
17524	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17525	for k, v := range c.header_ {
17526		reqHeaders[k] = v
17527	}
17528	reqHeaders.Set("User-Agent", c.s.userAgent())
17529	if c.ifNoneMatch_ != "" {
17530		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
17531	}
17532	var body io.Reader = nil
17533	c.urlParams_.Set("alt", alt)
17534	c.urlParams_.Set("prettyPrint", "false")
17535	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}/locations")
17536	urls += "?" + c.urlParams_.Encode()
17537	req, err := http.NewRequest("GET", urls, body)
17538	if err != nil {
17539		return nil, err
17540	}
17541	req.Header = reqHeaders
17542	googleapi.Expand(req.URL, map[string]string{
17543		"name": c.name,
17544	})
17545	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17546}
17547
17548// Do executes the "dialogflow.projects.locations.list" call.
17549// Exactly one of *GoogleCloudLocationListLocationsResponse or error
17550// will be non-nil. Any non-2xx status code is an error. Response
17551// headers are in either
17552// *GoogleCloudLocationListLocationsResponse.ServerResponse.Header or
17553// (if a response was returned at all) in
17554// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17555// whether the returned error was because http.StatusNotModified was
17556// returned.
17557func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudLocationListLocationsResponse, error) {
17558	gensupport.SetOptions(c.urlParams_, opts...)
17559	res, err := c.doRequest("json")
17560	if res != nil && res.StatusCode == http.StatusNotModified {
17561		if res.Body != nil {
17562			res.Body.Close()
17563		}
17564		return nil, &googleapi.Error{
17565			Code:   res.StatusCode,
17566			Header: res.Header,
17567		}
17568	}
17569	if err != nil {
17570		return nil, err
17571	}
17572	defer googleapi.CloseBody(res)
17573	if err := googleapi.CheckResponse(res); err != nil {
17574		return nil, err
17575	}
17576	ret := &GoogleCloudLocationListLocationsResponse{
17577		ServerResponse: googleapi.ServerResponse{
17578			Header:         res.Header,
17579			HTTPStatusCode: res.StatusCode,
17580		},
17581	}
17582	target := &ret
17583	if err := gensupport.DecodeResponse(target, res); err != nil {
17584		return nil, err
17585	}
17586	return ret, nil
17587	// {
17588	//   "description": "Lists information about the supported locations for this service.",
17589	//   "flatPath": "v3beta1/projects/{projectsId}/locations",
17590	//   "httpMethod": "GET",
17591	//   "id": "dialogflow.projects.locations.list",
17592	//   "parameterOrder": [
17593	//     "name"
17594	//   ],
17595	//   "parameters": {
17596	//     "filter": {
17597	//       "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like \"displayName=tokyo\", and is documented in more detail in [AIP-160](https://google.aip.dev/160).",
17598	//       "location": "query",
17599	//       "type": "string"
17600	//     },
17601	//     "name": {
17602	//       "description": "The resource that owns the locations collection, if applicable.",
17603	//       "location": "path",
17604	//       "pattern": "^projects/[^/]+$",
17605	//       "required": true,
17606	//       "type": "string"
17607	//     },
17608	//     "pageSize": {
17609	//       "description": "The maximum number of results to return. If not set, the service selects a default.",
17610	//       "format": "int32",
17611	//       "location": "query",
17612	//       "type": "integer"
17613	//     },
17614	//     "pageToken": {
17615	//       "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page.",
17616	//       "location": "query",
17617	//       "type": "string"
17618	//     }
17619	//   },
17620	//   "path": "v3beta1/{+name}/locations",
17621	//   "response": {
17622	//     "$ref": "GoogleCloudLocationListLocationsResponse"
17623	//   },
17624	//   "scopes": [
17625	//     "https://www.googleapis.com/auth/cloud-platform",
17626	//     "https://www.googleapis.com/auth/dialogflow"
17627	//   ]
17628	// }
17629
17630}
17631
17632// Pages invokes f for each page of results.
17633// A non-nil error returned from f will halt the iteration.
17634// The provided context supersedes any context provided to the Context method.
17635func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*GoogleCloudLocationListLocationsResponse) error) error {
17636	c.ctx_ = ctx
17637	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
17638	for {
17639		x, err := c.Do()
17640		if err != nil {
17641			return err
17642		}
17643		if err := f(x); err != nil {
17644			return err
17645		}
17646		if x.NextPageToken == "" {
17647			return nil
17648		}
17649		c.PageToken(x.NextPageToken)
17650	}
17651}
17652
17653// method id "dialogflow.projects.locations.agents.create":
17654
17655type ProjectsLocationsAgentsCreateCall struct {
17656	s                                   *Service
17657	parent                              string
17658	googleclouddialogflowcxv3beta1agent *GoogleCloudDialogflowCxV3beta1Agent
17659	urlParams_                          gensupport.URLParams
17660	ctx_                                context.Context
17661	header_                             http.Header
17662}
17663
17664// Create: Creates an agent in the specified location. Note: You should
17665// always train a flow prior to sending it queries. See the training
17666// documentation
17667// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
17668//
17669// - parent: The location to create a agent for. Format:
17670//   `projects//locations/`.
17671func (r *ProjectsLocationsAgentsService) Create(parent string, googleclouddialogflowcxv3beta1agent *GoogleCloudDialogflowCxV3beta1Agent) *ProjectsLocationsAgentsCreateCall {
17672	c := &ProjectsLocationsAgentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17673	c.parent = parent
17674	c.googleclouddialogflowcxv3beta1agent = googleclouddialogflowcxv3beta1agent
17675	return c
17676}
17677
17678// Fields allows partial responses to be retrieved. See
17679// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17680// for more information.
17681func (c *ProjectsLocationsAgentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsCreateCall {
17682	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17683	return c
17684}
17685
17686// Context sets the context to be used in this call's Do method. Any
17687// pending HTTP request will be aborted if the provided context is
17688// canceled.
17689func (c *ProjectsLocationsAgentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsCreateCall {
17690	c.ctx_ = ctx
17691	return c
17692}
17693
17694// Header returns an http.Header that can be modified by the caller to
17695// add HTTP headers to the request.
17696func (c *ProjectsLocationsAgentsCreateCall) Header() http.Header {
17697	if c.header_ == nil {
17698		c.header_ = make(http.Header)
17699	}
17700	return c.header_
17701}
17702
17703func (c *ProjectsLocationsAgentsCreateCall) doRequest(alt string) (*http.Response, error) {
17704	reqHeaders := make(http.Header)
17705	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17706	for k, v := range c.header_ {
17707		reqHeaders[k] = v
17708	}
17709	reqHeaders.Set("User-Agent", c.s.userAgent())
17710	var body io.Reader = nil
17711	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1agent)
17712	if err != nil {
17713		return nil, err
17714	}
17715	reqHeaders.Set("Content-Type", "application/json")
17716	c.urlParams_.Set("alt", alt)
17717	c.urlParams_.Set("prettyPrint", "false")
17718	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/agents")
17719	urls += "?" + c.urlParams_.Encode()
17720	req, err := http.NewRequest("POST", urls, body)
17721	if err != nil {
17722		return nil, err
17723	}
17724	req.Header = reqHeaders
17725	googleapi.Expand(req.URL, map[string]string{
17726		"parent": c.parent,
17727	})
17728	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17729}
17730
17731// Do executes the "dialogflow.projects.locations.agents.create" call.
17732// Exactly one of *GoogleCloudDialogflowCxV3beta1Agent or error will be
17733// non-nil. Any non-2xx status code is an error. Response headers are in
17734// either *GoogleCloudDialogflowCxV3beta1Agent.ServerResponse.Header or
17735// (if a response was returned at all) in
17736// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
17737// whether the returned error was because http.StatusNotModified was
17738// returned.
17739func (c *ProjectsLocationsAgentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Agent, error) {
17740	gensupport.SetOptions(c.urlParams_, opts...)
17741	res, err := c.doRequest("json")
17742	if res != nil && res.StatusCode == http.StatusNotModified {
17743		if res.Body != nil {
17744			res.Body.Close()
17745		}
17746		return nil, &googleapi.Error{
17747			Code:   res.StatusCode,
17748			Header: res.Header,
17749		}
17750	}
17751	if err != nil {
17752		return nil, err
17753	}
17754	defer googleapi.CloseBody(res)
17755	if err := googleapi.CheckResponse(res); err != nil {
17756		return nil, err
17757	}
17758	ret := &GoogleCloudDialogflowCxV3beta1Agent{
17759		ServerResponse: googleapi.ServerResponse{
17760			Header:         res.Header,
17761			HTTPStatusCode: res.StatusCode,
17762		},
17763	}
17764	target := &ret
17765	if err := gensupport.DecodeResponse(target, res); err != nil {
17766		return nil, err
17767	}
17768	return ret, nil
17769	// {
17770	//   "description": "Creates an agent in the specified location. 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).",
17771	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents",
17772	//   "httpMethod": "POST",
17773	//   "id": "dialogflow.projects.locations.agents.create",
17774	//   "parameterOrder": [
17775	//     "parent"
17776	//   ],
17777	//   "parameters": {
17778	//     "parent": {
17779	//       "description": "Required. The location to create a agent for. Format: `projects//locations/`.",
17780	//       "location": "path",
17781	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
17782	//       "required": true,
17783	//       "type": "string"
17784	//     }
17785	//   },
17786	//   "path": "v3beta1/{+parent}/agents",
17787	//   "request": {
17788	//     "$ref": "GoogleCloudDialogflowCxV3beta1Agent"
17789	//   },
17790	//   "response": {
17791	//     "$ref": "GoogleCloudDialogflowCxV3beta1Agent"
17792	//   },
17793	//   "scopes": [
17794	//     "https://www.googleapis.com/auth/cloud-platform",
17795	//     "https://www.googleapis.com/auth/dialogflow"
17796	//   ]
17797	// }
17798
17799}
17800
17801// method id "dialogflow.projects.locations.agents.delete":
17802
17803type ProjectsLocationsAgentsDeleteCall struct {
17804	s          *Service
17805	name       string
17806	urlParams_ gensupport.URLParams
17807	ctx_       context.Context
17808	header_    http.Header
17809}
17810
17811// Delete: Deletes the specified agent.
17812//
17813// - name: The name of the agent to delete. Format:
17814//   `projects//locations//agents/`.
17815func (r *ProjectsLocationsAgentsService) Delete(name string) *ProjectsLocationsAgentsDeleteCall {
17816	c := &ProjectsLocationsAgentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17817	c.name = name
17818	return c
17819}
17820
17821// Fields allows partial responses to be retrieved. See
17822// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17823// for more information.
17824func (c *ProjectsLocationsAgentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsDeleteCall {
17825	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17826	return c
17827}
17828
17829// Context sets the context to be used in this call's Do method. Any
17830// pending HTTP request will be aborted if the provided context is
17831// canceled.
17832func (c *ProjectsLocationsAgentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsDeleteCall {
17833	c.ctx_ = ctx
17834	return c
17835}
17836
17837// Header returns an http.Header that can be modified by the caller to
17838// add HTTP headers to the request.
17839func (c *ProjectsLocationsAgentsDeleteCall) Header() http.Header {
17840	if c.header_ == nil {
17841		c.header_ = make(http.Header)
17842	}
17843	return c.header_
17844}
17845
17846func (c *ProjectsLocationsAgentsDeleteCall) doRequest(alt string) (*http.Response, error) {
17847	reqHeaders := make(http.Header)
17848	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17849	for k, v := range c.header_ {
17850		reqHeaders[k] = v
17851	}
17852	reqHeaders.Set("User-Agent", c.s.userAgent())
17853	var body io.Reader = nil
17854	c.urlParams_.Set("alt", alt)
17855	c.urlParams_.Set("prettyPrint", "false")
17856	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
17857	urls += "?" + c.urlParams_.Encode()
17858	req, err := http.NewRequest("DELETE", urls, body)
17859	if err != nil {
17860		return nil, err
17861	}
17862	req.Header = reqHeaders
17863	googleapi.Expand(req.URL, map[string]string{
17864		"name": c.name,
17865	})
17866	return gensupport.SendRequest(c.ctx_, c.s.client, req)
17867}
17868
17869// Do executes the "dialogflow.projects.locations.agents.delete" call.
17870// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
17871// non-2xx status code is an error. Response headers are in either
17872// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
17873// returned at all) in error.(*googleapi.Error).Header. Use
17874// googleapi.IsNotModified to check whether the returned error was
17875// because http.StatusNotModified was returned.
17876func (c *ProjectsLocationsAgentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
17877	gensupport.SetOptions(c.urlParams_, opts...)
17878	res, err := c.doRequest("json")
17879	if res != nil && res.StatusCode == http.StatusNotModified {
17880		if res.Body != nil {
17881			res.Body.Close()
17882		}
17883		return nil, &googleapi.Error{
17884			Code:   res.StatusCode,
17885			Header: res.Header,
17886		}
17887	}
17888	if err != nil {
17889		return nil, err
17890	}
17891	defer googleapi.CloseBody(res)
17892	if err := googleapi.CheckResponse(res); err != nil {
17893		return nil, err
17894	}
17895	ret := &GoogleProtobufEmpty{
17896		ServerResponse: googleapi.ServerResponse{
17897			Header:         res.Header,
17898			HTTPStatusCode: res.StatusCode,
17899		},
17900	}
17901	target := &ret
17902	if err := gensupport.DecodeResponse(target, res); err != nil {
17903		return nil, err
17904	}
17905	return ret, nil
17906	// {
17907	//   "description": "Deletes the specified agent.",
17908	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
17909	//   "httpMethod": "DELETE",
17910	//   "id": "dialogflow.projects.locations.agents.delete",
17911	//   "parameterOrder": [
17912	//     "name"
17913	//   ],
17914	//   "parameters": {
17915	//     "name": {
17916	//       "description": "Required. The name of the agent to delete. Format: `projects//locations//agents/`.",
17917	//       "location": "path",
17918	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
17919	//       "required": true,
17920	//       "type": "string"
17921	//     }
17922	//   },
17923	//   "path": "v3beta1/{+name}",
17924	//   "response": {
17925	//     "$ref": "GoogleProtobufEmpty"
17926	//   },
17927	//   "scopes": [
17928	//     "https://www.googleapis.com/auth/cloud-platform",
17929	//     "https://www.googleapis.com/auth/dialogflow"
17930	//   ]
17931	// }
17932
17933}
17934
17935// method id "dialogflow.projects.locations.agents.export":
17936
17937type ProjectsLocationsAgentsExportCall struct {
17938	s                                                *Service
17939	name                                             string
17940	googleclouddialogflowcxv3beta1exportagentrequest *GoogleCloudDialogflowCxV3beta1ExportAgentRequest
17941	urlParams_                                       gensupport.URLParams
17942	ctx_                                             context.Context
17943	header_                                          http.Header
17944}
17945
17946// Export: Exports the specified agent to a binary file. This method is
17947// a long-running operation
17948// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
17949// The returned `Operation` type has the following method-specific
17950// fields: - `metadata`: An empty Struct message
17951// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
17952// - `response`: ExportAgentResponse
17953//
17954// - name: The name of the agent to export. Format:
17955//   `projects//locations//agents/`.
17956func (r *ProjectsLocationsAgentsService) Export(name string, googleclouddialogflowcxv3beta1exportagentrequest *GoogleCloudDialogflowCxV3beta1ExportAgentRequest) *ProjectsLocationsAgentsExportCall {
17957	c := &ProjectsLocationsAgentsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
17958	c.name = name
17959	c.googleclouddialogflowcxv3beta1exportagentrequest = googleclouddialogflowcxv3beta1exportagentrequest
17960	return c
17961}
17962
17963// Fields allows partial responses to be retrieved. See
17964// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
17965// for more information.
17966func (c *ProjectsLocationsAgentsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsExportCall {
17967	c.urlParams_.Set("fields", googleapi.CombineFields(s))
17968	return c
17969}
17970
17971// Context sets the context to be used in this call's Do method. Any
17972// pending HTTP request will be aborted if the provided context is
17973// canceled.
17974func (c *ProjectsLocationsAgentsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsExportCall {
17975	c.ctx_ = ctx
17976	return c
17977}
17978
17979// Header returns an http.Header that can be modified by the caller to
17980// add HTTP headers to the request.
17981func (c *ProjectsLocationsAgentsExportCall) Header() http.Header {
17982	if c.header_ == nil {
17983		c.header_ = make(http.Header)
17984	}
17985	return c.header_
17986}
17987
17988func (c *ProjectsLocationsAgentsExportCall) doRequest(alt string) (*http.Response, error) {
17989	reqHeaders := make(http.Header)
17990	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
17991	for k, v := range c.header_ {
17992		reqHeaders[k] = v
17993	}
17994	reqHeaders.Set("User-Agent", c.s.userAgent())
17995	var body io.Reader = nil
17996	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1exportagentrequest)
17997	if err != nil {
17998		return nil, err
17999	}
18000	reqHeaders.Set("Content-Type", "application/json")
18001	c.urlParams_.Set("alt", alt)
18002	c.urlParams_.Set("prettyPrint", "false")
18003	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:export")
18004	urls += "?" + c.urlParams_.Encode()
18005	req, err := http.NewRequest("POST", urls, body)
18006	if err != nil {
18007		return nil, err
18008	}
18009	req.Header = reqHeaders
18010	googleapi.Expand(req.URL, map[string]string{
18011		"name": c.name,
18012	})
18013	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18014}
18015
18016// Do executes the "dialogflow.projects.locations.agents.export" call.
18017// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
18018// Any non-2xx status code is an error. Response headers are in either
18019// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
18020// was returned at all) in error.(*googleapi.Error).Header. Use
18021// googleapi.IsNotModified to check whether the returned error was
18022// because http.StatusNotModified was returned.
18023func (c *ProjectsLocationsAgentsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
18024	gensupport.SetOptions(c.urlParams_, opts...)
18025	res, err := c.doRequest("json")
18026	if res != nil && res.StatusCode == http.StatusNotModified {
18027		if res.Body != nil {
18028			res.Body.Close()
18029		}
18030		return nil, &googleapi.Error{
18031			Code:   res.StatusCode,
18032			Header: res.Header,
18033		}
18034	}
18035	if err != nil {
18036		return nil, err
18037	}
18038	defer googleapi.CloseBody(res)
18039	if err := googleapi.CheckResponse(res); err != nil {
18040		return nil, err
18041	}
18042	ret := &GoogleLongrunningOperation{
18043		ServerResponse: googleapi.ServerResponse{
18044			Header:         res.Header,
18045			HTTPStatusCode: res.StatusCode,
18046		},
18047	}
18048	target := &ret
18049	if err := gensupport.DecodeResponse(target, res); err != nil {
18050		return nil, err
18051	}
18052	return ret, nil
18053	// {
18054	//   "description": "Exports the specified agent to a binary file. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: ExportAgentResponse",
18055	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:export",
18056	//   "httpMethod": "POST",
18057	//   "id": "dialogflow.projects.locations.agents.export",
18058	//   "parameterOrder": [
18059	//     "name"
18060	//   ],
18061	//   "parameters": {
18062	//     "name": {
18063	//       "description": "Required. The name of the agent to export. Format: `projects//locations//agents/`.",
18064	//       "location": "path",
18065	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18066	//       "required": true,
18067	//       "type": "string"
18068	//     }
18069	//   },
18070	//   "path": "v3beta1/{+name}:export",
18071	//   "request": {
18072	//     "$ref": "GoogleCloudDialogflowCxV3beta1ExportAgentRequest"
18073	//   },
18074	//   "response": {
18075	//     "$ref": "GoogleLongrunningOperation"
18076	//   },
18077	//   "scopes": [
18078	//     "https://www.googleapis.com/auth/cloud-platform",
18079	//     "https://www.googleapis.com/auth/dialogflow"
18080	//   ]
18081	// }
18082
18083}
18084
18085// method id "dialogflow.projects.locations.agents.get":
18086
18087type ProjectsLocationsAgentsGetCall struct {
18088	s            *Service
18089	name         string
18090	urlParams_   gensupport.URLParams
18091	ifNoneMatch_ string
18092	ctx_         context.Context
18093	header_      http.Header
18094}
18095
18096// Get: Retrieves the specified agent.
18097//
18098// - name: The name of the agent. Format:
18099//   `projects//locations//agents/`.
18100func (r *ProjectsLocationsAgentsService) Get(name string) *ProjectsLocationsAgentsGetCall {
18101	c := &ProjectsLocationsAgentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18102	c.name = name
18103	return c
18104}
18105
18106// Fields allows partial responses to be retrieved. See
18107// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18108// for more information.
18109func (c *ProjectsLocationsAgentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetCall {
18110	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18111	return c
18112}
18113
18114// IfNoneMatch sets the optional parameter which makes the operation
18115// fail if the object's ETag matches the given value. This is useful for
18116// getting updates only after the object has changed since the last
18117// request. Use googleapi.IsNotModified to check whether the response
18118// error from Do is the result of In-None-Match.
18119func (c *ProjectsLocationsAgentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetCall {
18120	c.ifNoneMatch_ = entityTag
18121	return c
18122}
18123
18124// Context sets the context to be used in this call's Do method. Any
18125// pending HTTP request will be aborted if the provided context is
18126// canceled.
18127func (c *ProjectsLocationsAgentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetCall {
18128	c.ctx_ = ctx
18129	return c
18130}
18131
18132// Header returns an http.Header that can be modified by the caller to
18133// add HTTP headers to the request.
18134func (c *ProjectsLocationsAgentsGetCall) Header() http.Header {
18135	if c.header_ == nil {
18136		c.header_ = make(http.Header)
18137	}
18138	return c.header_
18139}
18140
18141func (c *ProjectsLocationsAgentsGetCall) doRequest(alt string) (*http.Response, error) {
18142	reqHeaders := make(http.Header)
18143	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18144	for k, v := range c.header_ {
18145		reqHeaders[k] = v
18146	}
18147	reqHeaders.Set("User-Agent", c.s.userAgent())
18148	if c.ifNoneMatch_ != "" {
18149		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18150	}
18151	var body io.Reader = nil
18152	c.urlParams_.Set("alt", alt)
18153	c.urlParams_.Set("prettyPrint", "false")
18154	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
18155	urls += "?" + c.urlParams_.Encode()
18156	req, err := http.NewRequest("GET", urls, body)
18157	if err != nil {
18158		return nil, err
18159	}
18160	req.Header = reqHeaders
18161	googleapi.Expand(req.URL, map[string]string{
18162		"name": c.name,
18163	})
18164	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18165}
18166
18167// Do executes the "dialogflow.projects.locations.agents.get" call.
18168// Exactly one of *GoogleCloudDialogflowCxV3beta1Agent or error will be
18169// non-nil. Any non-2xx status code is an error. Response headers are in
18170// either *GoogleCloudDialogflowCxV3beta1Agent.ServerResponse.Header or
18171// (if a response was returned at all) in
18172// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18173// whether the returned error was because http.StatusNotModified was
18174// returned.
18175func (c *ProjectsLocationsAgentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Agent, error) {
18176	gensupport.SetOptions(c.urlParams_, opts...)
18177	res, err := c.doRequest("json")
18178	if res != nil && res.StatusCode == http.StatusNotModified {
18179		if res.Body != nil {
18180			res.Body.Close()
18181		}
18182		return nil, &googleapi.Error{
18183			Code:   res.StatusCode,
18184			Header: res.Header,
18185		}
18186	}
18187	if err != nil {
18188		return nil, err
18189	}
18190	defer googleapi.CloseBody(res)
18191	if err := googleapi.CheckResponse(res); err != nil {
18192		return nil, err
18193	}
18194	ret := &GoogleCloudDialogflowCxV3beta1Agent{
18195		ServerResponse: googleapi.ServerResponse{
18196			Header:         res.Header,
18197			HTTPStatusCode: res.StatusCode,
18198		},
18199	}
18200	target := &ret
18201	if err := gensupport.DecodeResponse(target, res); err != nil {
18202		return nil, err
18203	}
18204	return ret, nil
18205	// {
18206	//   "description": "Retrieves the specified agent.",
18207	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
18208	//   "httpMethod": "GET",
18209	//   "id": "dialogflow.projects.locations.agents.get",
18210	//   "parameterOrder": [
18211	//     "name"
18212	//   ],
18213	//   "parameters": {
18214	//     "name": {
18215	//       "description": "Required. The name of the agent. Format: `projects//locations//agents/`.",
18216	//       "location": "path",
18217	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18218	//       "required": true,
18219	//       "type": "string"
18220	//     }
18221	//   },
18222	//   "path": "v3beta1/{+name}",
18223	//   "response": {
18224	//     "$ref": "GoogleCloudDialogflowCxV3beta1Agent"
18225	//   },
18226	//   "scopes": [
18227	//     "https://www.googleapis.com/auth/cloud-platform",
18228	//     "https://www.googleapis.com/auth/dialogflow"
18229	//   ]
18230	// }
18231
18232}
18233
18234// method id "dialogflow.projects.locations.agents.getValidationResult":
18235
18236type ProjectsLocationsAgentsGetValidationResultCall struct {
18237	s            *Service
18238	name         string
18239	urlParams_   gensupport.URLParams
18240	ifNoneMatch_ string
18241	ctx_         context.Context
18242	header_      http.Header
18243}
18244
18245// GetValidationResult: Gets the latest agent validation result. Agent
18246// validation is performed when ValidateAgent is called.
18247//
18248// - name: The agent name. Format:
18249//   `projects//locations//agents//validationResult`.
18250func (r *ProjectsLocationsAgentsService) GetValidationResult(name string) *ProjectsLocationsAgentsGetValidationResultCall {
18251	c := &ProjectsLocationsAgentsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18252	c.name = name
18253	return c
18254}
18255
18256// LanguageCode sets the optional parameter "languageCode": If not
18257// specified, the agent's default language is used.
18258func (c *ProjectsLocationsAgentsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsGetValidationResultCall {
18259	c.urlParams_.Set("languageCode", languageCode)
18260	return c
18261}
18262
18263// Fields allows partial responses to be retrieved. See
18264// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18265// for more information.
18266func (c *ProjectsLocationsAgentsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsGetValidationResultCall {
18267	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18268	return c
18269}
18270
18271// IfNoneMatch sets the optional parameter which makes the operation
18272// fail if the object's ETag matches the given value. This is useful for
18273// getting updates only after the object has changed since the last
18274// request. Use googleapi.IsNotModified to check whether the response
18275// error from Do is the result of In-None-Match.
18276func (c *ProjectsLocationsAgentsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsGetValidationResultCall {
18277	c.ifNoneMatch_ = entityTag
18278	return c
18279}
18280
18281// Context sets the context to be used in this call's Do method. Any
18282// pending HTTP request will be aborted if the provided context is
18283// canceled.
18284func (c *ProjectsLocationsAgentsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsGetValidationResultCall {
18285	c.ctx_ = ctx
18286	return c
18287}
18288
18289// Header returns an http.Header that can be modified by the caller to
18290// add HTTP headers to the request.
18291func (c *ProjectsLocationsAgentsGetValidationResultCall) Header() http.Header {
18292	if c.header_ == nil {
18293		c.header_ = make(http.Header)
18294	}
18295	return c.header_
18296}
18297
18298func (c *ProjectsLocationsAgentsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
18299	reqHeaders := make(http.Header)
18300	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18301	for k, v := range c.header_ {
18302		reqHeaders[k] = v
18303	}
18304	reqHeaders.Set("User-Agent", c.s.userAgent())
18305	if c.ifNoneMatch_ != "" {
18306		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18307	}
18308	var body io.Reader = nil
18309	c.urlParams_.Set("alt", alt)
18310	c.urlParams_.Set("prettyPrint", "false")
18311	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
18312	urls += "?" + c.urlParams_.Encode()
18313	req, err := http.NewRequest("GET", urls, body)
18314	if err != nil {
18315		return nil, err
18316	}
18317	req.Header = reqHeaders
18318	googleapi.Expand(req.URL, map[string]string{
18319		"name": c.name,
18320	})
18321	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18322}
18323
18324// Do executes the "dialogflow.projects.locations.agents.getValidationResult" call.
18325// Exactly one of *GoogleCloudDialogflowCxV3beta1AgentValidationResult
18326// or error will be non-nil. Any non-2xx status code is an error.
18327// Response headers are in either
18328// *GoogleCloudDialogflowCxV3beta1AgentValidationResult.ServerResponse.He
18329// ader or (if a response was returned at all) in
18330// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18331// whether the returned error was because http.StatusNotModified was
18332// returned.
18333func (c *ProjectsLocationsAgentsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1AgentValidationResult, error) {
18334	gensupport.SetOptions(c.urlParams_, opts...)
18335	res, err := c.doRequest("json")
18336	if res != nil && res.StatusCode == http.StatusNotModified {
18337		if res.Body != nil {
18338			res.Body.Close()
18339		}
18340		return nil, &googleapi.Error{
18341			Code:   res.StatusCode,
18342			Header: res.Header,
18343		}
18344	}
18345	if err != nil {
18346		return nil, err
18347	}
18348	defer googleapi.CloseBody(res)
18349	if err := googleapi.CheckResponse(res); err != nil {
18350		return nil, err
18351	}
18352	ret := &GoogleCloudDialogflowCxV3beta1AgentValidationResult{
18353		ServerResponse: googleapi.ServerResponse{
18354			Header:         res.Header,
18355			HTTPStatusCode: res.StatusCode,
18356		},
18357	}
18358	target := &ret
18359	if err := gensupport.DecodeResponse(target, res); err != nil {
18360		return nil, err
18361	}
18362	return ret, nil
18363	// {
18364	//   "description": "Gets the latest agent validation result. Agent validation is performed when ValidateAgent is called.",
18365	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/validationResult",
18366	//   "httpMethod": "GET",
18367	//   "id": "dialogflow.projects.locations.agents.getValidationResult",
18368	//   "parameterOrder": [
18369	//     "name"
18370	//   ],
18371	//   "parameters": {
18372	//     "languageCode": {
18373	//       "description": "If not specified, the agent's default language is used.",
18374	//       "location": "query",
18375	//       "type": "string"
18376	//     },
18377	//     "name": {
18378	//       "description": "Required. The agent name. Format: `projects//locations//agents//validationResult`.",
18379	//       "location": "path",
18380	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/validationResult$",
18381	//       "required": true,
18382	//       "type": "string"
18383	//     }
18384	//   },
18385	//   "path": "v3beta1/{+name}",
18386	//   "response": {
18387	//     "$ref": "GoogleCloudDialogflowCxV3beta1AgentValidationResult"
18388	//   },
18389	//   "scopes": [
18390	//     "https://www.googleapis.com/auth/cloud-platform",
18391	//     "https://www.googleapis.com/auth/dialogflow"
18392	//   ]
18393	// }
18394
18395}
18396
18397// method id "dialogflow.projects.locations.agents.list":
18398
18399type ProjectsLocationsAgentsListCall struct {
18400	s            *Service
18401	parent       string
18402	urlParams_   gensupport.URLParams
18403	ifNoneMatch_ string
18404	ctx_         context.Context
18405	header_      http.Header
18406}
18407
18408// List: Returns the list of all agents in the specified location.
18409//
18410// - parent: The location to list all agents for. Format:
18411//   `projects//locations/`.
18412func (r *ProjectsLocationsAgentsService) List(parent string) *ProjectsLocationsAgentsListCall {
18413	c := &ProjectsLocationsAgentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18414	c.parent = parent
18415	return c
18416}
18417
18418// PageSize sets the optional parameter "pageSize": The maximum number
18419// of items to return in a single page. By default 100 and at most 1000.
18420func (c *ProjectsLocationsAgentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsListCall {
18421	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
18422	return c
18423}
18424
18425// PageToken sets the optional parameter "pageToken": The
18426// next_page_token value returned from a previous list request.
18427func (c *ProjectsLocationsAgentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsListCall {
18428	c.urlParams_.Set("pageToken", pageToken)
18429	return c
18430}
18431
18432// Fields allows partial responses to be retrieved. See
18433// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18434// for more information.
18435func (c *ProjectsLocationsAgentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsListCall {
18436	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18437	return c
18438}
18439
18440// IfNoneMatch sets the optional parameter which makes the operation
18441// fail if the object's ETag matches the given value. This is useful for
18442// getting updates only after the object has changed since the last
18443// request. Use googleapi.IsNotModified to check whether the response
18444// error from Do is the result of In-None-Match.
18445func (c *ProjectsLocationsAgentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsListCall {
18446	c.ifNoneMatch_ = entityTag
18447	return c
18448}
18449
18450// Context sets the context to be used in this call's Do method. Any
18451// pending HTTP request will be aborted if the provided context is
18452// canceled.
18453func (c *ProjectsLocationsAgentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsListCall {
18454	c.ctx_ = ctx
18455	return c
18456}
18457
18458// Header returns an http.Header that can be modified by the caller to
18459// add HTTP headers to the request.
18460func (c *ProjectsLocationsAgentsListCall) Header() http.Header {
18461	if c.header_ == nil {
18462		c.header_ = make(http.Header)
18463	}
18464	return c.header_
18465}
18466
18467func (c *ProjectsLocationsAgentsListCall) doRequest(alt string) (*http.Response, error) {
18468	reqHeaders := make(http.Header)
18469	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18470	for k, v := range c.header_ {
18471		reqHeaders[k] = v
18472	}
18473	reqHeaders.Set("User-Agent", c.s.userAgent())
18474	if c.ifNoneMatch_ != "" {
18475		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
18476	}
18477	var body io.Reader = nil
18478	c.urlParams_.Set("alt", alt)
18479	c.urlParams_.Set("prettyPrint", "false")
18480	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/agents")
18481	urls += "?" + c.urlParams_.Encode()
18482	req, err := http.NewRequest("GET", urls, body)
18483	if err != nil {
18484		return nil, err
18485	}
18486	req.Header = reqHeaders
18487	googleapi.Expand(req.URL, map[string]string{
18488		"parent": c.parent,
18489	})
18490	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18491}
18492
18493// Do executes the "dialogflow.projects.locations.agents.list" call.
18494// Exactly one of *GoogleCloudDialogflowCxV3beta1ListAgentsResponse or
18495// error will be non-nil. Any non-2xx status code is an error. Response
18496// headers are in either
18497// *GoogleCloudDialogflowCxV3beta1ListAgentsResponse.ServerResponse.Heade
18498// r or (if a response was returned at all) in
18499// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18500// whether the returned error was because http.StatusNotModified was
18501// returned.
18502func (c *ProjectsLocationsAgentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListAgentsResponse, error) {
18503	gensupport.SetOptions(c.urlParams_, opts...)
18504	res, err := c.doRequest("json")
18505	if res != nil && res.StatusCode == http.StatusNotModified {
18506		if res.Body != nil {
18507			res.Body.Close()
18508		}
18509		return nil, &googleapi.Error{
18510			Code:   res.StatusCode,
18511			Header: res.Header,
18512		}
18513	}
18514	if err != nil {
18515		return nil, err
18516	}
18517	defer googleapi.CloseBody(res)
18518	if err := googleapi.CheckResponse(res); err != nil {
18519		return nil, err
18520	}
18521	ret := &GoogleCloudDialogflowCxV3beta1ListAgentsResponse{
18522		ServerResponse: googleapi.ServerResponse{
18523			Header:         res.Header,
18524			HTTPStatusCode: res.StatusCode,
18525		},
18526	}
18527	target := &ret
18528	if err := gensupport.DecodeResponse(target, res); err != nil {
18529		return nil, err
18530	}
18531	return ret, nil
18532	// {
18533	//   "description": "Returns the list of all agents in the specified location.",
18534	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents",
18535	//   "httpMethod": "GET",
18536	//   "id": "dialogflow.projects.locations.agents.list",
18537	//   "parameterOrder": [
18538	//     "parent"
18539	//   ],
18540	//   "parameters": {
18541	//     "pageSize": {
18542	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
18543	//       "format": "int32",
18544	//       "location": "query",
18545	//       "type": "integer"
18546	//     },
18547	//     "pageToken": {
18548	//       "description": "The next_page_token value returned from a previous list request.",
18549	//       "location": "query",
18550	//       "type": "string"
18551	//     },
18552	//     "parent": {
18553	//       "description": "Required. The location to list all agents for. Format: `projects//locations/`.",
18554	//       "location": "path",
18555	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
18556	//       "required": true,
18557	//       "type": "string"
18558	//     }
18559	//   },
18560	//   "path": "v3beta1/{+parent}/agents",
18561	//   "response": {
18562	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListAgentsResponse"
18563	//   },
18564	//   "scopes": [
18565	//     "https://www.googleapis.com/auth/cloud-platform",
18566	//     "https://www.googleapis.com/auth/dialogflow"
18567	//   ]
18568	// }
18569
18570}
18571
18572// Pages invokes f for each page of results.
18573// A non-nil error returned from f will halt the iteration.
18574// The provided context supersedes any context provided to the Context method.
18575func (c *ProjectsLocationsAgentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListAgentsResponse) error) error {
18576	c.ctx_ = ctx
18577	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
18578	for {
18579		x, err := c.Do()
18580		if err != nil {
18581			return err
18582		}
18583		if err := f(x); err != nil {
18584			return err
18585		}
18586		if x.NextPageToken == "" {
18587			return nil
18588		}
18589		c.PageToken(x.NextPageToken)
18590	}
18591}
18592
18593// method id "dialogflow.projects.locations.agents.patch":
18594
18595type ProjectsLocationsAgentsPatchCall struct {
18596	s                                   *Service
18597	nameid                              string
18598	googleclouddialogflowcxv3beta1agent *GoogleCloudDialogflowCxV3beta1Agent
18599	urlParams_                          gensupport.URLParams
18600	ctx_                                context.Context
18601	header_                             http.Header
18602}
18603
18604// Patch: Updates the specified agent. Note: You should always train a
18605// flow prior to sending it queries. See the training documentation
18606// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18607//
18608// - name: The unique identifier of the agent. Required for the
18609//   Agents.UpdateAgent method. Agents.CreateAgent populates the name
18610//   automatically. Format: `projects//locations//agents/`.
18611func (r *ProjectsLocationsAgentsService) Patch(nameid string, googleclouddialogflowcxv3beta1agent *GoogleCloudDialogflowCxV3beta1Agent) *ProjectsLocationsAgentsPatchCall {
18612	c := &ProjectsLocationsAgentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18613	c.nameid = nameid
18614	c.googleclouddialogflowcxv3beta1agent = googleclouddialogflowcxv3beta1agent
18615	return c
18616}
18617
18618// UpdateMask sets the optional parameter "updateMask": The mask to
18619// control which fields get updated. If the mask is not present, all
18620// fields will be updated.
18621func (c *ProjectsLocationsAgentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsPatchCall {
18622	c.urlParams_.Set("updateMask", updateMask)
18623	return c
18624}
18625
18626// Fields allows partial responses to be retrieved. See
18627// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18628// for more information.
18629func (c *ProjectsLocationsAgentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsPatchCall {
18630	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18631	return c
18632}
18633
18634// Context sets the context to be used in this call's Do method. Any
18635// pending HTTP request will be aborted if the provided context is
18636// canceled.
18637func (c *ProjectsLocationsAgentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsPatchCall {
18638	c.ctx_ = ctx
18639	return c
18640}
18641
18642// Header returns an http.Header that can be modified by the caller to
18643// add HTTP headers to the request.
18644func (c *ProjectsLocationsAgentsPatchCall) Header() http.Header {
18645	if c.header_ == nil {
18646		c.header_ = make(http.Header)
18647	}
18648	return c.header_
18649}
18650
18651func (c *ProjectsLocationsAgentsPatchCall) doRequest(alt string) (*http.Response, error) {
18652	reqHeaders := make(http.Header)
18653	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18654	for k, v := range c.header_ {
18655		reqHeaders[k] = v
18656	}
18657	reqHeaders.Set("User-Agent", c.s.userAgent())
18658	var body io.Reader = nil
18659	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1agent)
18660	if err != nil {
18661		return nil, err
18662	}
18663	reqHeaders.Set("Content-Type", "application/json")
18664	c.urlParams_.Set("alt", alt)
18665	c.urlParams_.Set("prettyPrint", "false")
18666	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
18667	urls += "?" + c.urlParams_.Encode()
18668	req, err := http.NewRequest("PATCH", urls, body)
18669	if err != nil {
18670		return nil, err
18671	}
18672	req.Header = reqHeaders
18673	googleapi.Expand(req.URL, map[string]string{
18674		"name": c.nameid,
18675	})
18676	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18677}
18678
18679// Do executes the "dialogflow.projects.locations.agents.patch" call.
18680// Exactly one of *GoogleCloudDialogflowCxV3beta1Agent or error will be
18681// non-nil. Any non-2xx status code is an error. Response headers are in
18682// either *GoogleCloudDialogflowCxV3beta1Agent.ServerResponse.Header or
18683// (if a response was returned at all) in
18684// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18685// whether the returned error was because http.StatusNotModified was
18686// returned.
18687func (c *ProjectsLocationsAgentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Agent, error) {
18688	gensupport.SetOptions(c.urlParams_, opts...)
18689	res, err := c.doRequest("json")
18690	if res != nil && res.StatusCode == http.StatusNotModified {
18691		if res.Body != nil {
18692			res.Body.Close()
18693		}
18694		return nil, &googleapi.Error{
18695			Code:   res.StatusCode,
18696			Header: res.Header,
18697		}
18698	}
18699	if err != nil {
18700		return nil, err
18701	}
18702	defer googleapi.CloseBody(res)
18703	if err := googleapi.CheckResponse(res); err != nil {
18704		return nil, err
18705	}
18706	ret := &GoogleCloudDialogflowCxV3beta1Agent{
18707		ServerResponse: googleapi.ServerResponse{
18708			Header:         res.Header,
18709			HTTPStatusCode: res.StatusCode,
18710		},
18711	}
18712	target := &ret
18713	if err := gensupport.DecodeResponse(target, res); err != nil {
18714		return nil, err
18715	}
18716	return ret, nil
18717	// {
18718	//   "description": "Updates 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).",
18719	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}",
18720	//   "httpMethod": "PATCH",
18721	//   "id": "dialogflow.projects.locations.agents.patch",
18722	//   "parameterOrder": [
18723	//     "name"
18724	//   ],
18725	//   "parameters": {
18726	//     "name": {
18727	//       "description": "The unique identifier of the agent. Required for the Agents.UpdateAgent method. Agents.CreateAgent populates the name automatically. Format: `projects//locations//agents/`.",
18728	//       "location": "path",
18729	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18730	//       "required": true,
18731	//       "type": "string"
18732	//     },
18733	//     "updateMask": {
18734	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
18735	//       "format": "google-fieldmask",
18736	//       "location": "query",
18737	//       "type": "string"
18738	//     }
18739	//   },
18740	//   "path": "v3beta1/{+name}",
18741	//   "request": {
18742	//     "$ref": "GoogleCloudDialogflowCxV3beta1Agent"
18743	//   },
18744	//   "response": {
18745	//     "$ref": "GoogleCloudDialogflowCxV3beta1Agent"
18746	//   },
18747	//   "scopes": [
18748	//     "https://www.googleapis.com/auth/cloud-platform",
18749	//     "https://www.googleapis.com/auth/dialogflow"
18750	//   ]
18751	// }
18752
18753}
18754
18755// method id "dialogflow.projects.locations.agents.restore":
18756
18757type ProjectsLocationsAgentsRestoreCall struct {
18758	s                                                 *Service
18759	name                                              string
18760	googleclouddialogflowcxv3beta1restoreagentrequest *GoogleCloudDialogflowCxV3beta1RestoreAgentRequest
18761	urlParams_                                        gensupport.URLParams
18762	ctx_                                              context.Context
18763	header_                                           http.Header
18764}
18765
18766// Restore: Restores the specified agent from a binary file. Replaces
18767// the current agent with a new one. Note that all existing resources in
18768// agent (e.g. intents, entity types, flows) will be removed. This
18769// method is a long-running operation
18770// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
18771// The returned `Operation` type has the following method-specific
18772// fields: - `metadata`: An empty Struct message
18773// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
18774// - `response`: An Empty message
18775// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
18776// Note: You should always train a flow prior to sending it queries. See
18777// the training documentation
18778// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
18779//
18780// - name: The name of the agent to restore into. Format:
18781//   `projects//locations//agents/`.
18782func (r *ProjectsLocationsAgentsService) Restore(name string, googleclouddialogflowcxv3beta1restoreagentrequest *GoogleCloudDialogflowCxV3beta1RestoreAgentRequest) *ProjectsLocationsAgentsRestoreCall {
18783	c := &ProjectsLocationsAgentsRestoreCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18784	c.name = name
18785	c.googleclouddialogflowcxv3beta1restoreagentrequest = googleclouddialogflowcxv3beta1restoreagentrequest
18786	return c
18787}
18788
18789// Fields allows partial responses to be retrieved. See
18790// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18791// for more information.
18792func (c *ProjectsLocationsAgentsRestoreCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsRestoreCall {
18793	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18794	return c
18795}
18796
18797// Context sets the context to be used in this call's Do method. Any
18798// pending HTTP request will be aborted if the provided context is
18799// canceled.
18800func (c *ProjectsLocationsAgentsRestoreCall) Context(ctx context.Context) *ProjectsLocationsAgentsRestoreCall {
18801	c.ctx_ = ctx
18802	return c
18803}
18804
18805// Header returns an http.Header that can be modified by the caller to
18806// add HTTP headers to the request.
18807func (c *ProjectsLocationsAgentsRestoreCall) Header() http.Header {
18808	if c.header_ == nil {
18809		c.header_ = make(http.Header)
18810	}
18811	return c.header_
18812}
18813
18814func (c *ProjectsLocationsAgentsRestoreCall) doRequest(alt string) (*http.Response, error) {
18815	reqHeaders := make(http.Header)
18816	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18817	for k, v := range c.header_ {
18818		reqHeaders[k] = v
18819	}
18820	reqHeaders.Set("User-Agent", c.s.userAgent())
18821	var body io.Reader = nil
18822	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1restoreagentrequest)
18823	if err != nil {
18824		return nil, err
18825	}
18826	reqHeaders.Set("Content-Type", "application/json")
18827	c.urlParams_.Set("alt", alt)
18828	c.urlParams_.Set("prettyPrint", "false")
18829	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:restore")
18830	urls += "?" + c.urlParams_.Encode()
18831	req, err := http.NewRequest("POST", urls, body)
18832	if err != nil {
18833		return nil, err
18834	}
18835	req.Header = reqHeaders
18836	googleapi.Expand(req.URL, map[string]string{
18837		"name": c.name,
18838	})
18839	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18840}
18841
18842// Do executes the "dialogflow.projects.locations.agents.restore" call.
18843// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
18844// Any non-2xx status code is an error. Response headers are in either
18845// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
18846// was returned at all) in error.(*googleapi.Error).Header. Use
18847// googleapi.IsNotModified to check whether the returned error was
18848// because http.StatusNotModified was returned.
18849func (c *ProjectsLocationsAgentsRestoreCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
18850	gensupport.SetOptions(c.urlParams_, opts...)
18851	res, err := c.doRequest("json")
18852	if res != nil && res.StatusCode == http.StatusNotModified {
18853		if res.Body != nil {
18854			res.Body.Close()
18855		}
18856		return nil, &googleapi.Error{
18857			Code:   res.StatusCode,
18858			Header: res.Header,
18859		}
18860	}
18861	if err != nil {
18862		return nil, err
18863	}
18864	defer googleapi.CloseBody(res)
18865	if err := googleapi.CheckResponse(res); err != nil {
18866		return nil, err
18867	}
18868	ret := &GoogleLongrunningOperation{
18869		ServerResponse: googleapi.ServerResponse{
18870			Header:         res.Header,
18871			HTTPStatusCode: res.StatusCode,
18872		},
18873	}
18874	target := &ret
18875	if err := gensupport.DecodeResponse(target, res); err != nil {
18876		return nil, err
18877	}
18878	return ret, nil
18879	// {
18880	//   "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. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: An [Empty message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 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).",
18881	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:restore",
18882	//   "httpMethod": "POST",
18883	//   "id": "dialogflow.projects.locations.agents.restore",
18884	//   "parameterOrder": [
18885	//     "name"
18886	//   ],
18887	//   "parameters": {
18888	//     "name": {
18889	//       "description": "Required. The name of the agent to restore into. Format: `projects//locations//agents/`.",
18890	//       "location": "path",
18891	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
18892	//       "required": true,
18893	//       "type": "string"
18894	//     }
18895	//   },
18896	//   "path": "v3beta1/{+name}:restore",
18897	//   "request": {
18898	//     "$ref": "GoogleCloudDialogflowCxV3beta1RestoreAgentRequest"
18899	//   },
18900	//   "response": {
18901	//     "$ref": "GoogleLongrunningOperation"
18902	//   },
18903	//   "scopes": [
18904	//     "https://www.googleapis.com/auth/cloud-platform",
18905	//     "https://www.googleapis.com/auth/dialogflow"
18906	//   ]
18907	// }
18908
18909}
18910
18911// method id "dialogflow.projects.locations.agents.validate":
18912
18913type ProjectsLocationsAgentsValidateCall struct {
18914	s                                                  *Service
18915	name                                               string
18916	googleclouddialogflowcxv3beta1validateagentrequest *GoogleCloudDialogflowCxV3beta1ValidateAgentRequest
18917	urlParams_                                         gensupport.URLParams
18918	ctx_                                               context.Context
18919	header_                                            http.Header
18920}
18921
18922// Validate: Validates the specified agent and creates or updates
18923// validation results. The agent in draft version is validated. Please
18924// call this API after the training is completed to get the complete
18925// validation results.
18926//
18927// - name: The agent to validate. Format:
18928//   `projects//locations//agents/`.
18929func (r *ProjectsLocationsAgentsService) Validate(name string, googleclouddialogflowcxv3beta1validateagentrequest *GoogleCloudDialogflowCxV3beta1ValidateAgentRequest) *ProjectsLocationsAgentsValidateCall {
18930	c := &ProjectsLocationsAgentsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
18931	c.name = name
18932	c.googleclouddialogflowcxv3beta1validateagentrequest = googleclouddialogflowcxv3beta1validateagentrequest
18933	return c
18934}
18935
18936// Fields allows partial responses to be retrieved. See
18937// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
18938// for more information.
18939func (c *ProjectsLocationsAgentsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsValidateCall {
18940	c.urlParams_.Set("fields", googleapi.CombineFields(s))
18941	return c
18942}
18943
18944// Context sets the context to be used in this call's Do method. Any
18945// pending HTTP request will be aborted if the provided context is
18946// canceled.
18947func (c *ProjectsLocationsAgentsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsValidateCall {
18948	c.ctx_ = ctx
18949	return c
18950}
18951
18952// Header returns an http.Header that can be modified by the caller to
18953// add HTTP headers to the request.
18954func (c *ProjectsLocationsAgentsValidateCall) Header() http.Header {
18955	if c.header_ == nil {
18956		c.header_ = make(http.Header)
18957	}
18958	return c.header_
18959}
18960
18961func (c *ProjectsLocationsAgentsValidateCall) doRequest(alt string) (*http.Response, error) {
18962	reqHeaders := make(http.Header)
18963	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
18964	for k, v := range c.header_ {
18965		reqHeaders[k] = v
18966	}
18967	reqHeaders.Set("User-Agent", c.s.userAgent())
18968	var body io.Reader = nil
18969	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1validateagentrequest)
18970	if err != nil {
18971		return nil, err
18972	}
18973	reqHeaders.Set("Content-Type", "application/json")
18974	c.urlParams_.Set("alt", alt)
18975	c.urlParams_.Set("prettyPrint", "false")
18976	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:validate")
18977	urls += "?" + c.urlParams_.Encode()
18978	req, err := http.NewRequest("POST", urls, body)
18979	if err != nil {
18980		return nil, err
18981	}
18982	req.Header = reqHeaders
18983	googleapi.Expand(req.URL, map[string]string{
18984		"name": c.name,
18985	})
18986	return gensupport.SendRequest(c.ctx_, c.s.client, req)
18987}
18988
18989// Do executes the "dialogflow.projects.locations.agents.validate" call.
18990// Exactly one of *GoogleCloudDialogflowCxV3beta1AgentValidationResult
18991// or error will be non-nil. Any non-2xx status code is an error.
18992// Response headers are in either
18993// *GoogleCloudDialogflowCxV3beta1AgentValidationResult.ServerResponse.He
18994// ader or (if a response was returned at all) in
18995// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
18996// whether the returned error was because http.StatusNotModified was
18997// returned.
18998func (c *ProjectsLocationsAgentsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1AgentValidationResult, error) {
18999	gensupport.SetOptions(c.urlParams_, opts...)
19000	res, err := c.doRequest("json")
19001	if res != nil && res.StatusCode == http.StatusNotModified {
19002		if res.Body != nil {
19003			res.Body.Close()
19004		}
19005		return nil, &googleapi.Error{
19006			Code:   res.StatusCode,
19007			Header: res.Header,
19008		}
19009	}
19010	if err != nil {
19011		return nil, err
19012	}
19013	defer googleapi.CloseBody(res)
19014	if err := googleapi.CheckResponse(res); err != nil {
19015		return nil, err
19016	}
19017	ret := &GoogleCloudDialogflowCxV3beta1AgentValidationResult{
19018		ServerResponse: googleapi.ServerResponse{
19019			Header:         res.Header,
19020			HTTPStatusCode: res.StatusCode,
19021		},
19022	}
19023	target := &ret
19024	if err := gensupport.DecodeResponse(target, res); err != nil {
19025		return nil, err
19026	}
19027	return ret, nil
19028	// {
19029	//   "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.",
19030	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}:validate",
19031	//   "httpMethod": "POST",
19032	//   "id": "dialogflow.projects.locations.agents.validate",
19033	//   "parameterOrder": [
19034	//     "name"
19035	//   ],
19036	//   "parameters": {
19037	//     "name": {
19038	//       "description": "Required. The agent to validate. Format: `projects//locations//agents/`.",
19039	//       "location": "path",
19040	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19041	//       "required": true,
19042	//       "type": "string"
19043	//     }
19044	//   },
19045	//   "path": "v3beta1/{+name}:validate",
19046	//   "request": {
19047	//     "$ref": "GoogleCloudDialogflowCxV3beta1ValidateAgentRequest"
19048	//   },
19049	//   "response": {
19050	//     "$ref": "GoogleCloudDialogflowCxV3beta1AgentValidationResult"
19051	//   },
19052	//   "scopes": [
19053	//     "https://www.googleapis.com/auth/cloud-platform",
19054	//     "https://www.googleapis.com/auth/dialogflow"
19055	//   ]
19056	// }
19057
19058}
19059
19060// method id "dialogflow.projects.locations.agents.entityTypes.create":
19061
19062type ProjectsLocationsAgentsEntityTypesCreateCall struct {
19063	s                                        *Service
19064	parent                                   string
19065	googleclouddialogflowcxv3beta1entitytype *GoogleCloudDialogflowCxV3beta1EntityType
19066	urlParams_                               gensupport.URLParams
19067	ctx_                                     context.Context
19068	header_                                  http.Header
19069}
19070
19071// Create: Creates an entity type in the specified agent.
19072//
19073// - parent: The agent to create a entity type for. Format:
19074//   `projects//locations//agents/`.
19075func (r *ProjectsLocationsAgentsEntityTypesService) Create(parent string, googleclouddialogflowcxv3beta1entitytype *GoogleCloudDialogflowCxV3beta1EntityType) *ProjectsLocationsAgentsEntityTypesCreateCall {
19076	c := &ProjectsLocationsAgentsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19077	c.parent = parent
19078	c.googleclouddialogflowcxv3beta1entitytype = googleclouddialogflowcxv3beta1entitytype
19079	return c
19080}
19081
19082// LanguageCode sets the optional parameter "languageCode": The language
19083// of the following fields in `entity_type`: *
19084// `EntityType.entities.value` * `EntityType.entities.synonyms` *
19085// `EntityType.excluded_phrases.value` If not specified, the agent's
19086// default language is used. Many languages
19087// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19088// supported. Note: languages must be enabled in the agent before they
19089// can be used.
19090func (c *ProjectsLocationsAgentsEntityTypesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesCreateCall {
19091	c.urlParams_.Set("languageCode", languageCode)
19092	return c
19093}
19094
19095// Fields allows partial responses to be retrieved. See
19096// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19097// for more information.
19098func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesCreateCall {
19099	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19100	return c
19101}
19102
19103// Context sets the context to be used in this call's Do method. Any
19104// pending HTTP request will be aborted if the provided context is
19105// canceled.
19106func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesCreateCall {
19107	c.ctx_ = ctx
19108	return c
19109}
19110
19111// Header returns an http.Header that can be modified by the caller to
19112// add HTTP headers to the request.
19113func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Header() http.Header {
19114	if c.header_ == nil {
19115		c.header_ = make(http.Header)
19116	}
19117	return c.header_
19118}
19119
19120func (c *ProjectsLocationsAgentsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
19121	reqHeaders := make(http.Header)
19122	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19123	for k, v := range c.header_ {
19124		reqHeaders[k] = v
19125	}
19126	reqHeaders.Set("User-Agent", c.s.userAgent())
19127	var body io.Reader = nil
19128	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1entitytype)
19129	if err != nil {
19130		return nil, err
19131	}
19132	reqHeaders.Set("Content-Type", "application/json")
19133	c.urlParams_.Set("alt", alt)
19134	c.urlParams_.Set("prettyPrint", "false")
19135	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
19136	urls += "?" + c.urlParams_.Encode()
19137	req, err := http.NewRequest("POST", urls, body)
19138	if err != nil {
19139		return nil, err
19140	}
19141	req.Header = reqHeaders
19142	googleapi.Expand(req.URL, map[string]string{
19143		"parent": c.parent,
19144	})
19145	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19146}
19147
19148// Do executes the "dialogflow.projects.locations.agents.entityTypes.create" call.
19149// Exactly one of *GoogleCloudDialogflowCxV3beta1EntityType or error
19150// will be non-nil. Any non-2xx status code is an error. Response
19151// headers are in either
19152// *GoogleCloudDialogflowCxV3beta1EntityType.ServerResponse.Header or
19153// (if a response was returned at all) in
19154// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19155// whether the returned error was because http.StatusNotModified was
19156// returned.
19157func (c *ProjectsLocationsAgentsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1EntityType, error) {
19158	gensupport.SetOptions(c.urlParams_, opts...)
19159	res, err := c.doRequest("json")
19160	if res != nil && res.StatusCode == http.StatusNotModified {
19161		if res.Body != nil {
19162			res.Body.Close()
19163		}
19164		return nil, &googleapi.Error{
19165			Code:   res.StatusCode,
19166			Header: res.Header,
19167		}
19168	}
19169	if err != nil {
19170		return nil, err
19171	}
19172	defer googleapi.CloseBody(res)
19173	if err := googleapi.CheckResponse(res); err != nil {
19174		return nil, err
19175	}
19176	ret := &GoogleCloudDialogflowCxV3beta1EntityType{
19177		ServerResponse: googleapi.ServerResponse{
19178			Header:         res.Header,
19179			HTTPStatusCode: res.StatusCode,
19180		},
19181	}
19182	target := &ret
19183	if err := gensupport.DecodeResponse(target, res); err != nil {
19184		return nil, err
19185	}
19186	return ret, nil
19187	// {
19188	//   "description": "Creates an entity type in the specified agent.",
19189	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
19190	//   "httpMethod": "POST",
19191	//   "id": "dialogflow.projects.locations.agents.entityTypes.create",
19192	//   "parameterOrder": [
19193	//     "parent"
19194	//   ],
19195	//   "parameters": {
19196	//     "languageCode": {
19197	//       "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.",
19198	//       "location": "query",
19199	//       "type": "string"
19200	//     },
19201	//     "parent": {
19202	//       "description": "Required. The agent to create a entity type for. Format: `projects//locations//agents/`.",
19203	//       "location": "path",
19204	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19205	//       "required": true,
19206	//       "type": "string"
19207	//     }
19208	//   },
19209	//   "path": "v3beta1/{+parent}/entityTypes",
19210	//   "request": {
19211	//     "$ref": "GoogleCloudDialogflowCxV3beta1EntityType"
19212	//   },
19213	//   "response": {
19214	//     "$ref": "GoogleCloudDialogflowCxV3beta1EntityType"
19215	//   },
19216	//   "scopes": [
19217	//     "https://www.googleapis.com/auth/cloud-platform",
19218	//     "https://www.googleapis.com/auth/dialogflow"
19219	//   ]
19220	// }
19221
19222}
19223
19224// method id "dialogflow.projects.locations.agents.entityTypes.delete":
19225
19226type ProjectsLocationsAgentsEntityTypesDeleteCall struct {
19227	s          *Service
19228	name       string
19229	urlParams_ gensupport.URLParams
19230	ctx_       context.Context
19231	header_    http.Header
19232}
19233
19234// Delete: Deletes the specified entity type. Note: You should always
19235// train a flow prior to sending it queries. See the training
19236// documentation
19237// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19238//
19239// - name: The name of the entity type to delete. Format:
19240//   `projects//locations//agents//entityTypes/`.
19241func (r *ProjectsLocationsAgentsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19242	c := &ProjectsLocationsAgentsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19243	c.name = name
19244	return c
19245}
19246
19247// Force sets the optional parameter "force": This field has no effect
19248// for entity type not being used. For entity types that are used by
19249// intents or pages: * If `force` is set to false, an error will be
19250// returned with message indicating the referencing resources. * If
19251// `force` is set to true, Dialogflow will remove the entity type, as
19252// well as any references to the entity type (i.e. Page parameter of the
19253// entity type will be changed to '@sys.any' and intent parameter of the
19254// entity type will be removed).
19255func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Force(force bool) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19256	c.urlParams_.Set("force", fmt.Sprint(force))
19257	return c
19258}
19259
19260// Fields allows partial responses to be retrieved. See
19261// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19262// for more information.
19263func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19264	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19265	return c
19266}
19267
19268// Context sets the context to be used in this call's Do method. Any
19269// pending HTTP request will be aborted if the provided context is
19270// canceled.
19271func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesDeleteCall {
19272	c.ctx_ = ctx
19273	return c
19274}
19275
19276// Header returns an http.Header that can be modified by the caller to
19277// add HTTP headers to the request.
19278func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Header() http.Header {
19279	if c.header_ == nil {
19280		c.header_ = make(http.Header)
19281	}
19282	return c.header_
19283}
19284
19285func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
19286	reqHeaders := make(http.Header)
19287	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19288	for k, v := range c.header_ {
19289		reqHeaders[k] = v
19290	}
19291	reqHeaders.Set("User-Agent", c.s.userAgent())
19292	var body io.Reader = nil
19293	c.urlParams_.Set("alt", alt)
19294	c.urlParams_.Set("prettyPrint", "false")
19295	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
19296	urls += "?" + c.urlParams_.Encode()
19297	req, err := http.NewRequest("DELETE", urls, body)
19298	if err != nil {
19299		return nil, err
19300	}
19301	req.Header = reqHeaders
19302	googleapi.Expand(req.URL, map[string]string{
19303		"name": c.name,
19304	})
19305	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19306}
19307
19308// Do executes the "dialogflow.projects.locations.agents.entityTypes.delete" call.
19309// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
19310// non-2xx status code is an error. Response headers are in either
19311// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
19312// returned at all) in error.(*googleapi.Error).Header. Use
19313// googleapi.IsNotModified to check whether the returned error was
19314// because http.StatusNotModified was returned.
19315func (c *ProjectsLocationsAgentsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
19316	gensupport.SetOptions(c.urlParams_, opts...)
19317	res, err := c.doRequest("json")
19318	if res != nil && res.StatusCode == http.StatusNotModified {
19319		if res.Body != nil {
19320			res.Body.Close()
19321		}
19322		return nil, &googleapi.Error{
19323			Code:   res.StatusCode,
19324			Header: res.Header,
19325		}
19326	}
19327	if err != nil {
19328		return nil, err
19329	}
19330	defer googleapi.CloseBody(res)
19331	if err := googleapi.CheckResponse(res); err != nil {
19332		return nil, err
19333	}
19334	ret := &GoogleProtobufEmpty{
19335		ServerResponse: googleapi.ServerResponse{
19336			Header:         res.Header,
19337			HTTPStatusCode: res.StatusCode,
19338		},
19339	}
19340	target := &ret
19341	if err := gensupport.DecodeResponse(target, res); err != nil {
19342		return nil, err
19343	}
19344	return ret, nil
19345	// {
19346	//   "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).",
19347	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19348	//   "httpMethod": "DELETE",
19349	//   "id": "dialogflow.projects.locations.agents.entityTypes.delete",
19350	//   "parameterOrder": [
19351	//     "name"
19352	//   ],
19353	//   "parameters": {
19354	//     "force": {
19355	//       "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).",
19356	//       "location": "query",
19357	//       "type": "boolean"
19358	//     },
19359	//     "name": {
19360	//       "description": "Required. The name of the entity type to delete. Format: `projects//locations//agents//entityTypes/`.",
19361	//       "location": "path",
19362	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19363	//       "required": true,
19364	//       "type": "string"
19365	//     }
19366	//   },
19367	//   "path": "v3beta1/{+name}",
19368	//   "response": {
19369	//     "$ref": "GoogleProtobufEmpty"
19370	//   },
19371	//   "scopes": [
19372	//     "https://www.googleapis.com/auth/cloud-platform",
19373	//     "https://www.googleapis.com/auth/dialogflow"
19374	//   ]
19375	// }
19376
19377}
19378
19379// method id "dialogflow.projects.locations.agents.entityTypes.get":
19380
19381type ProjectsLocationsAgentsEntityTypesGetCall struct {
19382	s            *Service
19383	name         string
19384	urlParams_   gensupport.URLParams
19385	ifNoneMatch_ string
19386	ctx_         context.Context
19387	header_      http.Header
19388}
19389
19390// Get: Retrieves the specified entity type.
19391//
19392// - name: The name of the entity type. Format:
19393//   `projects//locations//agents//entityTypes/`.
19394func (r *ProjectsLocationsAgentsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEntityTypesGetCall {
19395	c := &ProjectsLocationsAgentsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19396	c.name = name
19397	return c
19398}
19399
19400// LanguageCode sets the optional parameter "languageCode": The language
19401// to retrieve the entity type for. The following fields are language
19402// dependent: * `EntityType.entities.value` *
19403// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
19404// If not specified, the agent's default language is used. Many
19405// languages
19406// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19407// supported. Note: languages must be enabled in the agent before they
19408// can be used.
19409func (c *ProjectsLocationsAgentsEntityTypesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesGetCall {
19410	c.urlParams_.Set("languageCode", languageCode)
19411	return c
19412}
19413
19414// Fields allows partial responses to be retrieved. See
19415// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19416// for more information.
19417func (c *ProjectsLocationsAgentsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesGetCall {
19418	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19419	return c
19420}
19421
19422// IfNoneMatch sets the optional parameter which makes the operation
19423// fail if the object's ETag matches the given value. This is useful for
19424// getting updates only after the object has changed since the last
19425// request. Use googleapi.IsNotModified to check whether the response
19426// error from Do is the result of In-None-Match.
19427func (c *ProjectsLocationsAgentsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesGetCall {
19428	c.ifNoneMatch_ = entityTag
19429	return c
19430}
19431
19432// Context sets the context to be used in this call's Do method. Any
19433// pending HTTP request will be aborted if the provided context is
19434// canceled.
19435func (c *ProjectsLocationsAgentsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesGetCall {
19436	c.ctx_ = ctx
19437	return c
19438}
19439
19440// Header returns an http.Header that can be modified by the caller to
19441// add HTTP headers to the request.
19442func (c *ProjectsLocationsAgentsEntityTypesGetCall) Header() http.Header {
19443	if c.header_ == nil {
19444		c.header_ = make(http.Header)
19445	}
19446	return c.header_
19447}
19448
19449func (c *ProjectsLocationsAgentsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
19450	reqHeaders := make(http.Header)
19451	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19452	for k, v := range c.header_ {
19453		reqHeaders[k] = v
19454	}
19455	reqHeaders.Set("User-Agent", c.s.userAgent())
19456	if c.ifNoneMatch_ != "" {
19457		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19458	}
19459	var body io.Reader = nil
19460	c.urlParams_.Set("alt", alt)
19461	c.urlParams_.Set("prettyPrint", "false")
19462	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
19463	urls += "?" + c.urlParams_.Encode()
19464	req, err := http.NewRequest("GET", urls, body)
19465	if err != nil {
19466		return nil, err
19467	}
19468	req.Header = reqHeaders
19469	googleapi.Expand(req.URL, map[string]string{
19470		"name": c.name,
19471	})
19472	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19473}
19474
19475// Do executes the "dialogflow.projects.locations.agents.entityTypes.get" call.
19476// Exactly one of *GoogleCloudDialogflowCxV3beta1EntityType or error
19477// will be non-nil. Any non-2xx status code is an error. Response
19478// headers are in either
19479// *GoogleCloudDialogflowCxV3beta1EntityType.ServerResponse.Header or
19480// (if a response was returned at all) in
19481// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19482// whether the returned error was because http.StatusNotModified was
19483// returned.
19484func (c *ProjectsLocationsAgentsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1EntityType, error) {
19485	gensupport.SetOptions(c.urlParams_, opts...)
19486	res, err := c.doRequest("json")
19487	if res != nil && res.StatusCode == http.StatusNotModified {
19488		if res.Body != nil {
19489			res.Body.Close()
19490		}
19491		return nil, &googleapi.Error{
19492			Code:   res.StatusCode,
19493			Header: res.Header,
19494		}
19495	}
19496	if err != nil {
19497		return nil, err
19498	}
19499	defer googleapi.CloseBody(res)
19500	if err := googleapi.CheckResponse(res); err != nil {
19501		return nil, err
19502	}
19503	ret := &GoogleCloudDialogflowCxV3beta1EntityType{
19504		ServerResponse: googleapi.ServerResponse{
19505			Header:         res.Header,
19506			HTTPStatusCode: res.StatusCode,
19507		},
19508	}
19509	target := &ret
19510	if err := gensupport.DecodeResponse(target, res); err != nil {
19511		return nil, err
19512	}
19513	return ret, nil
19514	// {
19515	//   "description": "Retrieves the specified entity type.",
19516	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19517	//   "httpMethod": "GET",
19518	//   "id": "dialogflow.projects.locations.agents.entityTypes.get",
19519	//   "parameterOrder": [
19520	//     "name"
19521	//   ],
19522	//   "parameters": {
19523	//     "languageCode": {
19524	//       "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.",
19525	//       "location": "query",
19526	//       "type": "string"
19527	//     },
19528	//     "name": {
19529	//       "description": "Required. The name of the entity type. Format: `projects//locations//agents//entityTypes/`.",
19530	//       "location": "path",
19531	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19532	//       "required": true,
19533	//       "type": "string"
19534	//     }
19535	//   },
19536	//   "path": "v3beta1/{+name}",
19537	//   "response": {
19538	//     "$ref": "GoogleCloudDialogflowCxV3beta1EntityType"
19539	//   },
19540	//   "scopes": [
19541	//     "https://www.googleapis.com/auth/cloud-platform",
19542	//     "https://www.googleapis.com/auth/dialogflow"
19543	//   ]
19544	// }
19545
19546}
19547
19548// method id "dialogflow.projects.locations.agents.entityTypes.list":
19549
19550type ProjectsLocationsAgentsEntityTypesListCall struct {
19551	s            *Service
19552	parent       string
19553	urlParams_   gensupport.URLParams
19554	ifNoneMatch_ string
19555	ctx_         context.Context
19556	header_      http.Header
19557}
19558
19559// List: Returns the list of all entity types in the specified agent.
19560//
19561// - parent: The agent to list all entity types for. Format:
19562//   `projects//locations//agents/`.
19563func (r *ProjectsLocationsAgentsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEntityTypesListCall {
19564	c := &ProjectsLocationsAgentsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19565	c.parent = parent
19566	return c
19567}
19568
19569// LanguageCode sets the optional parameter "languageCode": The language
19570// to list entity types for. The following fields are language
19571// dependent: * `EntityType.entities.value` *
19572// `EntityType.entities.synonyms` * `EntityType.excluded_phrases.value`
19573// If not specified, the agent's default language is used. Many
19574// languages
19575// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19576// supported. Note: languages must be enabled in the agent before they
19577// can be used.
19578func (c *ProjectsLocationsAgentsEntityTypesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesListCall {
19579	c.urlParams_.Set("languageCode", languageCode)
19580	return c
19581}
19582
19583// PageSize sets the optional parameter "pageSize": The maximum number
19584// of items to return in a single page. By default 100 and at most 1000.
19585func (c *ProjectsLocationsAgentsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEntityTypesListCall {
19586	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
19587	return c
19588}
19589
19590// PageToken sets the optional parameter "pageToken": The
19591// next_page_token value returned from a previous list request.
19592func (c *ProjectsLocationsAgentsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEntityTypesListCall {
19593	c.urlParams_.Set("pageToken", pageToken)
19594	return c
19595}
19596
19597// Fields allows partial responses to be retrieved. See
19598// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19599// for more information.
19600func (c *ProjectsLocationsAgentsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesListCall {
19601	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19602	return c
19603}
19604
19605// IfNoneMatch sets the optional parameter which makes the operation
19606// fail if the object's ETag matches the given value. This is useful for
19607// getting updates only after the object has changed since the last
19608// request. Use googleapi.IsNotModified to check whether the response
19609// error from Do is the result of In-None-Match.
19610func (c *ProjectsLocationsAgentsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEntityTypesListCall {
19611	c.ifNoneMatch_ = entityTag
19612	return c
19613}
19614
19615// Context sets the context to be used in this call's Do method. Any
19616// pending HTTP request will be aborted if the provided context is
19617// canceled.
19618func (c *ProjectsLocationsAgentsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesListCall {
19619	c.ctx_ = ctx
19620	return c
19621}
19622
19623// Header returns an http.Header that can be modified by the caller to
19624// add HTTP headers to the request.
19625func (c *ProjectsLocationsAgentsEntityTypesListCall) Header() http.Header {
19626	if c.header_ == nil {
19627		c.header_ = make(http.Header)
19628	}
19629	return c.header_
19630}
19631
19632func (c *ProjectsLocationsAgentsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
19633	reqHeaders := make(http.Header)
19634	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19635	for k, v := range c.header_ {
19636		reqHeaders[k] = v
19637	}
19638	reqHeaders.Set("User-Agent", c.s.userAgent())
19639	if c.ifNoneMatch_ != "" {
19640		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
19641	}
19642	var body io.Reader = nil
19643	c.urlParams_.Set("alt", alt)
19644	c.urlParams_.Set("prettyPrint", "false")
19645	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
19646	urls += "?" + c.urlParams_.Encode()
19647	req, err := http.NewRequest("GET", urls, body)
19648	if err != nil {
19649		return nil, err
19650	}
19651	req.Header = reqHeaders
19652	googleapi.Expand(req.URL, map[string]string{
19653		"parent": c.parent,
19654	})
19655	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19656}
19657
19658// Do executes the "dialogflow.projects.locations.agents.entityTypes.list" call.
19659// Exactly one of *GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse
19660// or error will be non-nil. Any non-2xx status code is an error.
19661// Response headers are in either
19662// *GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse.ServerResponse.
19663// Header or (if a response was returned at all) in
19664// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19665// whether the returned error was because http.StatusNotModified was
19666// returned.
19667func (c *ProjectsLocationsAgentsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse, error) {
19668	gensupport.SetOptions(c.urlParams_, opts...)
19669	res, err := c.doRequest("json")
19670	if res != nil && res.StatusCode == http.StatusNotModified {
19671		if res.Body != nil {
19672			res.Body.Close()
19673		}
19674		return nil, &googleapi.Error{
19675			Code:   res.StatusCode,
19676			Header: res.Header,
19677		}
19678	}
19679	if err != nil {
19680		return nil, err
19681	}
19682	defer googleapi.CloseBody(res)
19683	if err := googleapi.CheckResponse(res); err != nil {
19684		return nil, err
19685	}
19686	ret := &GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse{
19687		ServerResponse: googleapi.ServerResponse{
19688			Header:         res.Header,
19689			HTTPStatusCode: res.StatusCode,
19690		},
19691	}
19692	target := &ret
19693	if err := gensupport.DecodeResponse(target, res); err != nil {
19694		return nil, err
19695	}
19696	return ret, nil
19697	// {
19698	//   "description": "Returns the list of all entity types in the specified agent.",
19699	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes",
19700	//   "httpMethod": "GET",
19701	//   "id": "dialogflow.projects.locations.agents.entityTypes.list",
19702	//   "parameterOrder": [
19703	//     "parent"
19704	//   ],
19705	//   "parameters": {
19706	//     "languageCode": {
19707	//       "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.",
19708	//       "location": "query",
19709	//       "type": "string"
19710	//     },
19711	//     "pageSize": {
19712	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
19713	//       "format": "int32",
19714	//       "location": "query",
19715	//       "type": "integer"
19716	//     },
19717	//     "pageToken": {
19718	//       "description": "The next_page_token value returned from a previous list request.",
19719	//       "location": "query",
19720	//       "type": "string"
19721	//     },
19722	//     "parent": {
19723	//       "description": "Required. The agent to list all entity types for. Format: `projects//locations//agents/`.",
19724	//       "location": "path",
19725	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
19726	//       "required": true,
19727	//       "type": "string"
19728	//     }
19729	//   },
19730	//   "path": "v3beta1/{+parent}/entityTypes",
19731	//   "response": {
19732	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse"
19733	//   },
19734	//   "scopes": [
19735	//     "https://www.googleapis.com/auth/cloud-platform",
19736	//     "https://www.googleapis.com/auth/dialogflow"
19737	//   ]
19738	// }
19739
19740}
19741
19742// Pages invokes f for each page of results.
19743// A non-nil error returned from f will halt the iteration.
19744// The provided context supersedes any context provided to the Context method.
19745func (c *ProjectsLocationsAgentsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListEntityTypesResponse) error) error {
19746	c.ctx_ = ctx
19747	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
19748	for {
19749		x, err := c.Do()
19750		if err != nil {
19751			return err
19752		}
19753		if err := f(x); err != nil {
19754			return err
19755		}
19756		if x.NextPageToken == "" {
19757			return nil
19758		}
19759		c.PageToken(x.NextPageToken)
19760	}
19761}
19762
19763// method id "dialogflow.projects.locations.agents.entityTypes.patch":
19764
19765type ProjectsLocationsAgentsEntityTypesPatchCall struct {
19766	s                                        *Service
19767	nameid                                   string
19768	googleclouddialogflowcxv3beta1entitytype *GoogleCloudDialogflowCxV3beta1EntityType
19769	urlParams_                               gensupport.URLParams
19770	ctx_                                     context.Context
19771	header_                                  http.Header
19772}
19773
19774// Patch: Updates the specified entity type. Note: You should always
19775// train a flow prior to sending it queries. See the training
19776// documentation
19777// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
19778//
19779// - name: The unique identifier of the entity type. Required for
19780//   EntityTypes.UpdateEntityType. Format:
19781//   `projects//locations//agents//entityTypes/`.
19782func (r *ProjectsLocationsAgentsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3beta1entitytype *GoogleCloudDialogflowCxV3beta1EntityType) *ProjectsLocationsAgentsEntityTypesPatchCall {
19783	c := &ProjectsLocationsAgentsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19784	c.nameid = nameid
19785	c.googleclouddialogflowcxv3beta1entitytype = googleclouddialogflowcxv3beta1entitytype
19786	return c
19787}
19788
19789// LanguageCode sets the optional parameter "languageCode": The language
19790// of the following fields in `entity_type`: *
19791// `EntityType.entities.value` * `EntityType.entities.synonyms` *
19792// `EntityType.excluded_phrases.value` If not specified, the agent's
19793// default language is used. Many languages
19794// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
19795// supported. Note: languages must be enabled in the agent before they
19796// can be used.
19797func (c *ProjectsLocationsAgentsEntityTypesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19798	c.urlParams_.Set("languageCode", languageCode)
19799	return c
19800}
19801
19802// UpdateMask sets the optional parameter "updateMask": The mask to
19803// control which fields get updated.
19804func (c *ProjectsLocationsAgentsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEntityTypesPatchCall {
19805	c.urlParams_.Set("updateMask", updateMask)
19806	return c
19807}
19808
19809// Fields allows partial responses to be retrieved. See
19810// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19811// for more information.
19812func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEntityTypesPatchCall {
19813	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19814	return c
19815}
19816
19817// Context sets the context to be used in this call's Do method. Any
19818// pending HTTP request will be aborted if the provided context is
19819// canceled.
19820func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEntityTypesPatchCall {
19821	c.ctx_ = ctx
19822	return c
19823}
19824
19825// Header returns an http.Header that can be modified by the caller to
19826// add HTTP headers to the request.
19827func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Header() http.Header {
19828	if c.header_ == nil {
19829		c.header_ = make(http.Header)
19830	}
19831	return c.header_
19832}
19833
19834func (c *ProjectsLocationsAgentsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
19835	reqHeaders := make(http.Header)
19836	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
19837	for k, v := range c.header_ {
19838		reqHeaders[k] = v
19839	}
19840	reqHeaders.Set("User-Agent", c.s.userAgent())
19841	var body io.Reader = nil
19842	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1entitytype)
19843	if err != nil {
19844		return nil, err
19845	}
19846	reqHeaders.Set("Content-Type", "application/json")
19847	c.urlParams_.Set("alt", alt)
19848	c.urlParams_.Set("prettyPrint", "false")
19849	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
19850	urls += "?" + c.urlParams_.Encode()
19851	req, err := http.NewRequest("PATCH", urls, body)
19852	if err != nil {
19853		return nil, err
19854	}
19855	req.Header = reqHeaders
19856	googleapi.Expand(req.URL, map[string]string{
19857		"name": c.nameid,
19858	})
19859	return gensupport.SendRequest(c.ctx_, c.s.client, req)
19860}
19861
19862// Do executes the "dialogflow.projects.locations.agents.entityTypes.patch" call.
19863// Exactly one of *GoogleCloudDialogflowCxV3beta1EntityType or error
19864// will be non-nil. Any non-2xx status code is an error. Response
19865// headers are in either
19866// *GoogleCloudDialogflowCxV3beta1EntityType.ServerResponse.Header or
19867// (if a response was returned at all) in
19868// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
19869// whether the returned error was because http.StatusNotModified was
19870// returned.
19871func (c *ProjectsLocationsAgentsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1EntityType, error) {
19872	gensupport.SetOptions(c.urlParams_, opts...)
19873	res, err := c.doRequest("json")
19874	if res != nil && res.StatusCode == http.StatusNotModified {
19875		if res.Body != nil {
19876			res.Body.Close()
19877		}
19878		return nil, &googleapi.Error{
19879			Code:   res.StatusCode,
19880			Header: res.Header,
19881		}
19882	}
19883	if err != nil {
19884		return nil, err
19885	}
19886	defer googleapi.CloseBody(res)
19887	if err := googleapi.CheckResponse(res); err != nil {
19888		return nil, err
19889	}
19890	ret := &GoogleCloudDialogflowCxV3beta1EntityType{
19891		ServerResponse: googleapi.ServerResponse{
19892			Header:         res.Header,
19893			HTTPStatusCode: res.StatusCode,
19894		},
19895	}
19896	target := &ret
19897	if err := gensupport.DecodeResponse(target, res); err != nil {
19898		return nil, err
19899	}
19900	return ret, nil
19901	// {
19902	//   "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).",
19903	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/entityTypes/{entityTypesId}",
19904	//   "httpMethod": "PATCH",
19905	//   "id": "dialogflow.projects.locations.agents.entityTypes.patch",
19906	//   "parameterOrder": [
19907	//     "name"
19908	//   ],
19909	//   "parameters": {
19910	//     "languageCode": {
19911	//       "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.",
19912	//       "location": "query",
19913	//       "type": "string"
19914	//     },
19915	//     "name": {
19916	//       "description": "The unique identifier of the entity type. Required for EntityTypes.UpdateEntityType. Format: `projects//locations//agents//entityTypes/`.",
19917	//       "location": "path",
19918	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/entityTypes/[^/]+$",
19919	//       "required": true,
19920	//       "type": "string"
19921	//     },
19922	//     "updateMask": {
19923	//       "description": "The mask to control which fields get updated.",
19924	//       "format": "google-fieldmask",
19925	//       "location": "query",
19926	//       "type": "string"
19927	//     }
19928	//   },
19929	//   "path": "v3beta1/{+name}",
19930	//   "request": {
19931	//     "$ref": "GoogleCloudDialogflowCxV3beta1EntityType"
19932	//   },
19933	//   "response": {
19934	//     "$ref": "GoogleCloudDialogflowCxV3beta1EntityType"
19935	//   },
19936	//   "scopes": [
19937	//     "https://www.googleapis.com/auth/cloud-platform",
19938	//     "https://www.googleapis.com/auth/dialogflow"
19939	//   ]
19940	// }
19941
19942}
19943
19944// method id "dialogflow.projects.locations.agents.environments.create":
19945
19946type ProjectsLocationsAgentsEnvironmentsCreateCall struct {
19947	s                                         *Service
19948	parent                                    string
19949	googleclouddialogflowcxv3beta1environment *GoogleCloudDialogflowCxV3beta1Environment
19950	urlParams_                                gensupport.URLParams
19951	ctx_                                      context.Context
19952	header_                                   http.Header
19953}
19954
19955// Create: Creates an Environment in the specified Agent. This method is
19956// a long-running operation
19957// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
19958// The returned `Operation` type has the following method-specific
19959// fields: - `metadata`: An empty Struct message
19960// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
19961// - `response`: Environment
19962//
19963// - parent: The Agent to create an Environment for. Format:
19964//   `projects//locations//agents/`.
19965func (r *ProjectsLocationsAgentsEnvironmentsService) Create(parent string, googleclouddialogflowcxv3beta1environment *GoogleCloudDialogflowCxV3beta1Environment) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19966	c := &ProjectsLocationsAgentsEnvironmentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
19967	c.parent = parent
19968	c.googleclouddialogflowcxv3beta1environment = googleclouddialogflowcxv3beta1environment
19969	return c
19970}
19971
19972// Fields allows partial responses to be retrieved. See
19973// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
19974// for more information.
19975func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19976	c.urlParams_.Set("fields", googleapi.CombineFields(s))
19977	return c
19978}
19979
19980// Context sets the context to be used in this call's Do method. Any
19981// pending HTTP request will be aborted if the provided context is
19982// canceled.
19983func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsCreateCall {
19984	c.ctx_ = ctx
19985	return c
19986}
19987
19988// Header returns an http.Header that can be modified by the caller to
19989// add HTTP headers to the request.
19990func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Header() http.Header {
19991	if c.header_ == nil {
19992		c.header_ = make(http.Header)
19993	}
19994	return c.header_
19995}
19996
19997func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) doRequest(alt string) (*http.Response, error) {
19998	reqHeaders := make(http.Header)
19999	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20000	for k, v := range c.header_ {
20001		reqHeaders[k] = v
20002	}
20003	reqHeaders.Set("User-Agent", c.s.userAgent())
20004	var body io.Reader = nil
20005	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1environment)
20006	if err != nil {
20007		return nil, err
20008	}
20009	reqHeaders.Set("Content-Type", "application/json")
20010	c.urlParams_.Set("alt", alt)
20011	c.urlParams_.Set("prettyPrint", "false")
20012	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/environments")
20013	urls += "?" + c.urlParams_.Encode()
20014	req, err := http.NewRequest("POST", urls, body)
20015	if err != nil {
20016		return nil, err
20017	}
20018	req.Header = reqHeaders
20019	googleapi.Expand(req.URL, map[string]string{
20020		"parent": c.parent,
20021	})
20022	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20023}
20024
20025// Do executes the "dialogflow.projects.locations.agents.environments.create" call.
20026// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20027// Any non-2xx status code is an error. Response headers are in either
20028// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20029// was returned at all) in error.(*googleapi.Error).Header. Use
20030// googleapi.IsNotModified to check whether the returned error was
20031// because http.StatusNotModified was returned.
20032func (c *ProjectsLocationsAgentsEnvironmentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20033	gensupport.SetOptions(c.urlParams_, opts...)
20034	res, err := c.doRequest("json")
20035	if res != nil && res.StatusCode == http.StatusNotModified {
20036		if res.Body != nil {
20037			res.Body.Close()
20038		}
20039		return nil, &googleapi.Error{
20040			Code:   res.StatusCode,
20041			Header: res.Header,
20042		}
20043	}
20044	if err != nil {
20045		return nil, err
20046	}
20047	defer googleapi.CloseBody(res)
20048	if err := googleapi.CheckResponse(res); err != nil {
20049		return nil, err
20050	}
20051	ret := &GoogleLongrunningOperation{
20052		ServerResponse: googleapi.ServerResponse{
20053			Header:         res.Header,
20054			HTTPStatusCode: res.StatusCode,
20055		},
20056	}
20057	target := &ret
20058	if err := gensupport.DecodeResponse(target, res); err != nil {
20059		return nil, err
20060	}
20061	return ret, nil
20062	// {
20063	//   "description": "Creates an Environment in the specified Agent. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: Environment",
20064	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
20065	//   "httpMethod": "POST",
20066	//   "id": "dialogflow.projects.locations.agents.environments.create",
20067	//   "parameterOrder": [
20068	//     "parent"
20069	//   ],
20070	//   "parameters": {
20071	//     "parent": {
20072	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents/`.",
20073	//       "location": "path",
20074	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
20075	//       "required": true,
20076	//       "type": "string"
20077	//     }
20078	//   },
20079	//   "path": "v3beta1/{+parent}/environments",
20080	//   "request": {
20081	//     "$ref": "GoogleCloudDialogflowCxV3beta1Environment"
20082	//   },
20083	//   "response": {
20084	//     "$ref": "GoogleLongrunningOperation"
20085	//   },
20086	//   "scopes": [
20087	//     "https://www.googleapis.com/auth/cloud-platform",
20088	//     "https://www.googleapis.com/auth/dialogflow"
20089	//   ]
20090	// }
20091
20092}
20093
20094// method id "dialogflow.projects.locations.agents.environments.delete":
20095
20096type ProjectsLocationsAgentsEnvironmentsDeleteCall struct {
20097	s          *Service
20098	name       string
20099	urlParams_ gensupport.URLParams
20100	ctx_       context.Context
20101	header_    http.Header
20102}
20103
20104// Delete: Deletes the specified Environment.
20105//
20106// - name: The name of the Environment to delete. Format:
20107//   `projects//locations//agents//environments/`.
20108func (r *ProjectsLocationsAgentsEnvironmentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20109	c := &ProjectsLocationsAgentsEnvironmentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20110	c.name = name
20111	return c
20112}
20113
20114// Fields allows partial responses to be retrieved. See
20115// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20116// for more information.
20117func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20118	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20119	return c
20120}
20121
20122// Context sets the context to be used in this call's Do method. Any
20123// pending HTTP request will be aborted if the provided context is
20124// canceled.
20125func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsDeleteCall {
20126	c.ctx_ = ctx
20127	return c
20128}
20129
20130// Header returns an http.Header that can be modified by the caller to
20131// add HTTP headers to the request.
20132func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Header() http.Header {
20133	if c.header_ == nil {
20134		c.header_ = make(http.Header)
20135	}
20136	return c.header_
20137}
20138
20139func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) doRequest(alt string) (*http.Response, error) {
20140	reqHeaders := make(http.Header)
20141	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20142	for k, v := range c.header_ {
20143		reqHeaders[k] = v
20144	}
20145	reqHeaders.Set("User-Agent", c.s.userAgent())
20146	var body io.Reader = nil
20147	c.urlParams_.Set("alt", alt)
20148	c.urlParams_.Set("prettyPrint", "false")
20149	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
20150	urls += "?" + c.urlParams_.Encode()
20151	req, err := http.NewRequest("DELETE", urls, body)
20152	if err != nil {
20153		return nil, err
20154	}
20155	req.Header = reqHeaders
20156	googleapi.Expand(req.URL, map[string]string{
20157		"name": c.name,
20158	})
20159	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20160}
20161
20162// Do executes the "dialogflow.projects.locations.agents.environments.delete" call.
20163// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
20164// non-2xx status code is an error. Response headers are in either
20165// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
20166// returned at all) in error.(*googleapi.Error).Header. Use
20167// googleapi.IsNotModified to check whether the returned error was
20168// because http.StatusNotModified was returned.
20169func (c *ProjectsLocationsAgentsEnvironmentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
20170	gensupport.SetOptions(c.urlParams_, opts...)
20171	res, err := c.doRequest("json")
20172	if res != nil && res.StatusCode == http.StatusNotModified {
20173		if res.Body != nil {
20174			res.Body.Close()
20175		}
20176		return nil, &googleapi.Error{
20177			Code:   res.StatusCode,
20178			Header: res.Header,
20179		}
20180	}
20181	if err != nil {
20182		return nil, err
20183	}
20184	defer googleapi.CloseBody(res)
20185	if err := googleapi.CheckResponse(res); err != nil {
20186		return nil, err
20187	}
20188	ret := &GoogleProtobufEmpty{
20189		ServerResponse: googleapi.ServerResponse{
20190			Header:         res.Header,
20191			HTTPStatusCode: res.StatusCode,
20192		},
20193	}
20194	target := &ret
20195	if err := gensupport.DecodeResponse(target, res); err != nil {
20196		return nil, err
20197	}
20198	return ret, nil
20199	// {
20200	//   "description": "Deletes the specified Environment.",
20201	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20202	//   "httpMethod": "DELETE",
20203	//   "id": "dialogflow.projects.locations.agents.environments.delete",
20204	//   "parameterOrder": [
20205	//     "name"
20206	//   ],
20207	//   "parameters": {
20208	//     "name": {
20209	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments/`.",
20210	//       "location": "path",
20211	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20212	//       "required": true,
20213	//       "type": "string"
20214	//     }
20215	//   },
20216	//   "path": "v3beta1/{+name}",
20217	//   "response": {
20218	//     "$ref": "GoogleProtobufEmpty"
20219	//   },
20220	//   "scopes": [
20221	//     "https://www.googleapis.com/auth/cloud-platform",
20222	//     "https://www.googleapis.com/auth/dialogflow"
20223	//   ]
20224	// }
20225
20226}
20227
20228// method id "dialogflow.projects.locations.agents.environments.get":
20229
20230type ProjectsLocationsAgentsEnvironmentsGetCall struct {
20231	s            *Service
20232	name         string
20233	urlParams_   gensupport.URLParams
20234	ifNoneMatch_ string
20235	ctx_         context.Context
20236	header_      http.Header
20237}
20238
20239// Get: Retrieves the specified Environment.
20240//
20241// - name: The name of the Environment. Format:
20242//   `projects//locations//agents//environments/`.
20243func (r *ProjectsLocationsAgentsEnvironmentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsGetCall {
20244	c := &ProjectsLocationsAgentsEnvironmentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20245	c.name = name
20246	return c
20247}
20248
20249// Fields allows partial responses to be retrieved. See
20250// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20251// for more information.
20252func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsGetCall {
20253	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20254	return c
20255}
20256
20257// IfNoneMatch sets the optional parameter which makes the operation
20258// fail if the object's ETag matches the given value. This is useful for
20259// getting updates only after the object has changed since the last
20260// request. Use googleapi.IsNotModified to check whether the response
20261// error from Do is the result of In-None-Match.
20262func (c *ProjectsLocationsAgentsEnvironmentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsGetCall {
20263	c.ifNoneMatch_ = entityTag
20264	return c
20265}
20266
20267// Context sets the context to be used in this call's Do method. Any
20268// pending HTTP request will be aborted if the provided context is
20269// canceled.
20270func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsGetCall {
20271	c.ctx_ = ctx
20272	return c
20273}
20274
20275// Header returns an http.Header that can be modified by the caller to
20276// add HTTP headers to the request.
20277func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Header() http.Header {
20278	if c.header_ == nil {
20279		c.header_ = make(http.Header)
20280	}
20281	return c.header_
20282}
20283
20284func (c *ProjectsLocationsAgentsEnvironmentsGetCall) doRequest(alt string) (*http.Response, error) {
20285	reqHeaders := make(http.Header)
20286	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20287	for k, v := range c.header_ {
20288		reqHeaders[k] = v
20289	}
20290	reqHeaders.Set("User-Agent", c.s.userAgent())
20291	if c.ifNoneMatch_ != "" {
20292		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20293	}
20294	var body io.Reader = nil
20295	c.urlParams_.Set("alt", alt)
20296	c.urlParams_.Set("prettyPrint", "false")
20297	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
20298	urls += "?" + c.urlParams_.Encode()
20299	req, err := http.NewRequest("GET", urls, body)
20300	if err != nil {
20301		return nil, err
20302	}
20303	req.Header = reqHeaders
20304	googleapi.Expand(req.URL, map[string]string{
20305		"name": c.name,
20306	})
20307	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20308}
20309
20310// Do executes the "dialogflow.projects.locations.agents.environments.get" call.
20311// Exactly one of *GoogleCloudDialogflowCxV3beta1Environment or error
20312// will be non-nil. Any non-2xx status code is an error. Response
20313// headers are in either
20314// *GoogleCloudDialogflowCxV3beta1Environment.ServerResponse.Header or
20315// (if a response was returned at all) in
20316// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20317// whether the returned error was because http.StatusNotModified was
20318// returned.
20319func (c *ProjectsLocationsAgentsEnvironmentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Environment, error) {
20320	gensupport.SetOptions(c.urlParams_, opts...)
20321	res, err := c.doRequest("json")
20322	if res != nil && res.StatusCode == http.StatusNotModified {
20323		if res.Body != nil {
20324			res.Body.Close()
20325		}
20326		return nil, &googleapi.Error{
20327			Code:   res.StatusCode,
20328			Header: res.Header,
20329		}
20330	}
20331	if err != nil {
20332		return nil, err
20333	}
20334	defer googleapi.CloseBody(res)
20335	if err := googleapi.CheckResponse(res); err != nil {
20336		return nil, err
20337	}
20338	ret := &GoogleCloudDialogflowCxV3beta1Environment{
20339		ServerResponse: googleapi.ServerResponse{
20340			Header:         res.Header,
20341			HTTPStatusCode: res.StatusCode,
20342		},
20343	}
20344	target := &ret
20345	if err := gensupport.DecodeResponse(target, res); err != nil {
20346		return nil, err
20347	}
20348	return ret, nil
20349	// {
20350	//   "description": "Retrieves the specified Environment.",
20351	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20352	//   "httpMethod": "GET",
20353	//   "id": "dialogflow.projects.locations.agents.environments.get",
20354	//   "parameterOrder": [
20355	//     "name"
20356	//   ],
20357	//   "parameters": {
20358	//     "name": {
20359	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments/`.",
20360	//       "location": "path",
20361	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20362	//       "required": true,
20363	//       "type": "string"
20364	//     }
20365	//   },
20366	//   "path": "v3beta1/{+name}",
20367	//   "response": {
20368	//     "$ref": "GoogleCloudDialogflowCxV3beta1Environment"
20369	//   },
20370	//   "scopes": [
20371	//     "https://www.googleapis.com/auth/cloud-platform",
20372	//     "https://www.googleapis.com/auth/dialogflow"
20373	//   ]
20374	// }
20375
20376}
20377
20378// method id "dialogflow.projects.locations.agents.environments.list":
20379
20380type ProjectsLocationsAgentsEnvironmentsListCall struct {
20381	s            *Service
20382	parent       string
20383	urlParams_   gensupport.URLParams
20384	ifNoneMatch_ string
20385	ctx_         context.Context
20386	header_      http.Header
20387}
20388
20389// List: Returns the list of all environments in the specified Agent.
20390//
20391// - parent: The Agent to list all environments for. Format:
20392//   `projects//locations//agents/`.
20393func (r *ProjectsLocationsAgentsEnvironmentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsListCall {
20394	c := &ProjectsLocationsAgentsEnvironmentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20395	c.parent = parent
20396	return c
20397}
20398
20399// PageSize sets the optional parameter "pageSize": The maximum number
20400// of items to return in a single page. By default 20 and at most 100.
20401func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsListCall {
20402	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20403	return c
20404}
20405
20406// PageToken sets the optional parameter "pageToken": The
20407// next_page_token value returned from a previous list request.
20408func (c *ProjectsLocationsAgentsEnvironmentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsListCall {
20409	c.urlParams_.Set("pageToken", pageToken)
20410	return c
20411}
20412
20413// Fields allows partial responses to be retrieved. See
20414// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20415// for more information.
20416func (c *ProjectsLocationsAgentsEnvironmentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsListCall {
20417	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20418	return c
20419}
20420
20421// IfNoneMatch sets the optional parameter which makes the operation
20422// fail if the object's ETag matches the given value. This is useful for
20423// getting updates only after the object has changed since the last
20424// request. Use googleapi.IsNotModified to check whether the response
20425// error from Do is the result of In-None-Match.
20426func (c *ProjectsLocationsAgentsEnvironmentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsListCall {
20427	c.ifNoneMatch_ = entityTag
20428	return c
20429}
20430
20431// Context sets the context to be used in this call's Do method. Any
20432// pending HTTP request will be aborted if the provided context is
20433// canceled.
20434func (c *ProjectsLocationsAgentsEnvironmentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsListCall {
20435	c.ctx_ = ctx
20436	return c
20437}
20438
20439// Header returns an http.Header that can be modified by the caller to
20440// add HTTP headers to the request.
20441func (c *ProjectsLocationsAgentsEnvironmentsListCall) Header() http.Header {
20442	if c.header_ == nil {
20443		c.header_ = make(http.Header)
20444	}
20445	return c.header_
20446}
20447
20448func (c *ProjectsLocationsAgentsEnvironmentsListCall) doRequest(alt string) (*http.Response, error) {
20449	reqHeaders := make(http.Header)
20450	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20451	for k, v := range c.header_ {
20452		reqHeaders[k] = v
20453	}
20454	reqHeaders.Set("User-Agent", c.s.userAgent())
20455	if c.ifNoneMatch_ != "" {
20456		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20457	}
20458	var body io.Reader = nil
20459	c.urlParams_.Set("alt", alt)
20460	c.urlParams_.Set("prettyPrint", "false")
20461	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/environments")
20462	urls += "?" + c.urlParams_.Encode()
20463	req, err := http.NewRequest("GET", urls, body)
20464	if err != nil {
20465		return nil, err
20466	}
20467	req.Header = reqHeaders
20468	googleapi.Expand(req.URL, map[string]string{
20469		"parent": c.parent,
20470	})
20471	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20472}
20473
20474// Do executes the "dialogflow.projects.locations.agents.environments.list" call.
20475// Exactly one of
20476// *GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse or error will
20477// be non-nil. Any non-2xx status code is an error. Response headers are
20478// in either
20479// *GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse.ServerResponse
20480// .Header or (if a response was returned at all) in
20481// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20482// whether the returned error was because http.StatusNotModified was
20483// returned.
20484func (c *ProjectsLocationsAgentsEnvironmentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse, error) {
20485	gensupport.SetOptions(c.urlParams_, opts...)
20486	res, err := c.doRequest("json")
20487	if res != nil && res.StatusCode == http.StatusNotModified {
20488		if res.Body != nil {
20489			res.Body.Close()
20490		}
20491		return nil, &googleapi.Error{
20492			Code:   res.StatusCode,
20493			Header: res.Header,
20494		}
20495	}
20496	if err != nil {
20497		return nil, err
20498	}
20499	defer googleapi.CloseBody(res)
20500	if err := googleapi.CheckResponse(res); err != nil {
20501		return nil, err
20502	}
20503	ret := &GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse{
20504		ServerResponse: googleapi.ServerResponse{
20505			Header:         res.Header,
20506			HTTPStatusCode: res.StatusCode,
20507		},
20508	}
20509	target := &ret
20510	if err := gensupport.DecodeResponse(target, res); err != nil {
20511		return nil, err
20512	}
20513	return ret, nil
20514	// {
20515	//   "description": "Returns the list of all environments in the specified Agent.",
20516	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments",
20517	//   "httpMethod": "GET",
20518	//   "id": "dialogflow.projects.locations.agents.environments.list",
20519	//   "parameterOrder": [
20520	//     "parent"
20521	//   ],
20522	//   "parameters": {
20523	//     "pageSize": {
20524	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
20525	//       "format": "int32",
20526	//       "location": "query",
20527	//       "type": "integer"
20528	//     },
20529	//     "pageToken": {
20530	//       "description": "The next_page_token value returned from a previous list request.",
20531	//       "location": "query",
20532	//       "type": "string"
20533	//     },
20534	//     "parent": {
20535	//       "description": "Required. The Agent to list all environments for. Format: `projects//locations//agents/`.",
20536	//       "location": "path",
20537	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
20538	//       "required": true,
20539	//       "type": "string"
20540	//     }
20541	//   },
20542	//   "path": "v3beta1/{+parent}/environments",
20543	//   "response": {
20544	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse"
20545	//   },
20546	//   "scopes": [
20547	//     "https://www.googleapis.com/auth/cloud-platform",
20548	//     "https://www.googleapis.com/auth/dialogflow"
20549	//   ]
20550	// }
20551
20552}
20553
20554// Pages invokes f for each page of results.
20555// A non-nil error returned from f will halt the iteration.
20556// The provided context supersedes any context provided to the Context method.
20557func (c *ProjectsLocationsAgentsEnvironmentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListEnvironmentsResponse) error) error {
20558	c.ctx_ = ctx
20559	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20560	for {
20561		x, err := c.Do()
20562		if err != nil {
20563			return err
20564		}
20565		if err := f(x); err != nil {
20566			return err
20567		}
20568		if x.NextPageToken == "" {
20569			return nil
20570		}
20571		c.PageToken(x.NextPageToken)
20572	}
20573}
20574
20575// method id "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory":
20576
20577type ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall struct {
20578	s            *Service
20579	name         string
20580	urlParams_   gensupport.URLParams
20581	ifNoneMatch_ string
20582	ctx_         context.Context
20583	header_      http.Header
20584}
20585
20586// LookupEnvironmentHistory: Looks up the history of the specified
20587// Environment.
20588//
20589// - name: Resource name of the environment to look up the history for.
20590//   Format: `projects//locations//agents//environments/`.
20591func (r *ProjectsLocationsAgentsEnvironmentsService) LookupEnvironmentHistory(name string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20592	c := &ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20593	c.name = name
20594	return c
20595}
20596
20597// PageSize sets the optional parameter "pageSize": The maximum number
20598// of items to return in a single page. By default 100 and at most 1000.
20599func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20600	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
20601	return c
20602}
20603
20604// PageToken sets the optional parameter "pageToken": The
20605// next_page_token value returned from a previous list request.
20606func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20607	c.urlParams_.Set("pageToken", pageToken)
20608	return c
20609}
20610
20611// Fields allows partial responses to be retrieved. See
20612// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20613// for more information.
20614func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20615	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20616	return c
20617}
20618
20619// IfNoneMatch sets the optional parameter which makes the operation
20620// fail if the object's ETag matches the given value. This is useful for
20621// getting updates only after the object has changed since the last
20622// request. Use googleapi.IsNotModified to check whether the response
20623// error from Do is the result of In-None-Match.
20624func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20625	c.ifNoneMatch_ = entityTag
20626	return c
20627}
20628
20629// Context sets the context to be used in this call's Do method. Any
20630// pending HTTP request will be aborted if the provided context is
20631// canceled.
20632func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall {
20633	c.ctx_ = ctx
20634	return c
20635}
20636
20637// Header returns an http.Header that can be modified by the caller to
20638// add HTTP headers to the request.
20639func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Header() http.Header {
20640	if c.header_ == nil {
20641		c.header_ = make(http.Header)
20642	}
20643	return c.header_
20644}
20645
20646func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) doRequest(alt string) (*http.Response, error) {
20647	reqHeaders := make(http.Header)
20648	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20649	for k, v := range c.header_ {
20650		reqHeaders[k] = v
20651	}
20652	reqHeaders.Set("User-Agent", c.s.userAgent())
20653	if c.ifNoneMatch_ != "" {
20654		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
20655	}
20656	var body io.Reader = nil
20657	c.urlParams_.Set("alt", alt)
20658	c.urlParams_.Set("prettyPrint", "false")
20659	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:lookupEnvironmentHistory")
20660	urls += "?" + c.urlParams_.Encode()
20661	req, err := http.NewRequest("GET", urls, body)
20662	if err != nil {
20663		return nil, err
20664	}
20665	req.Header = reqHeaders
20666	googleapi.Expand(req.URL, map[string]string{
20667		"name": c.name,
20668	})
20669	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20670}
20671
20672// Do executes the "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory" call.
20673// Exactly one of
20674// *GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse or
20675// error will be non-nil. Any non-2xx status code is an error. Response
20676// headers are in either
20677// *GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse.Server
20678// Response.Header or (if a response was returned at all) in
20679// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
20680// whether the returned error was because http.StatusNotModified was
20681// returned.
20682func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse, error) {
20683	gensupport.SetOptions(c.urlParams_, opts...)
20684	res, err := c.doRequest("json")
20685	if res != nil && res.StatusCode == http.StatusNotModified {
20686		if res.Body != nil {
20687			res.Body.Close()
20688		}
20689		return nil, &googleapi.Error{
20690			Code:   res.StatusCode,
20691			Header: res.Header,
20692		}
20693	}
20694	if err != nil {
20695		return nil, err
20696	}
20697	defer googleapi.CloseBody(res)
20698	if err := googleapi.CheckResponse(res); err != nil {
20699		return nil, err
20700	}
20701	ret := &GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse{
20702		ServerResponse: googleapi.ServerResponse{
20703			Header:         res.Header,
20704			HTTPStatusCode: res.StatusCode,
20705		},
20706	}
20707	target := &ret
20708	if err := gensupport.DecodeResponse(target, res); err != nil {
20709		return nil, err
20710	}
20711	return ret, nil
20712	// {
20713	//   "description": "Looks up the history of the specified Environment.",
20714	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:lookupEnvironmentHistory",
20715	//   "httpMethod": "GET",
20716	//   "id": "dialogflow.projects.locations.agents.environments.lookupEnvironmentHistory",
20717	//   "parameterOrder": [
20718	//     "name"
20719	//   ],
20720	//   "parameters": {
20721	//     "name": {
20722	//       "description": "Required. Resource name of the environment to look up the history for. Format: `projects//locations//agents//environments/`.",
20723	//       "location": "path",
20724	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20725	//       "required": true,
20726	//       "type": "string"
20727	//     },
20728	//     "pageSize": {
20729	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
20730	//       "format": "int32",
20731	//       "location": "query",
20732	//       "type": "integer"
20733	//     },
20734	//     "pageToken": {
20735	//       "description": "The next_page_token value returned from a previous list request.",
20736	//       "location": "query",
20737	//       "type": "string"
20738	//     }
20739	//   },
20740	//   "path": "v3beta1/{+name}:lookupEnvironmentHistory",
20741	//   "response": {
20742	//     "$ref": "GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse"
20743	//   },
20744	//   "scopes": [
20745	//     "https://www.googleapis.com/auth/cloud-platform",
20746	//     "https://www.googleapis.com/auth/dialogflow"
20747	//   ]
20748	// }
20749
20750}
20751
20752// Pages invokes f for each page of results.
20753// A non-nil error returned from f will halt the iteration.
20754// The provided context supersedes any context provided to the Context method.
20755func (c *ProjectsLocationsAgentsEnvironmentsLookupEnvironmentHistoryCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1LookupEnvironmentHistoryResponse) error) error {
20756	c.ctx_ = ctx
20757	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
20758	for {
20759		x, err := c.Do()
20760		if err != nil {
20761			return err
20762		}
20763		if err := f(x); err != nil {
20764			return err
20765		}
20766		if x.NextPageToken == "" {
20767			return nil
20768		}
20769		c.PageToken(x.NextPageToken)
20770	}
20771}
20772
20773// method id "dialogflow.projects.locations.agents.environments.patch":
20774
20775type ProjectsLocationsAgentsEnvironmentsPatchCall struct {
20776	s                                         *Service
20777	name                                      string
20778	googleclouddialogflowcxv3beta1environment *GoogleCloudDialogflowCxV3beta1Environment
20779	urlParams_                                gensupport.URLParams
20780	ctx_                                      context.Context
20781	header_                                   http.Header
20782}
20783
20784// Patch: Updates the specified Environment. This method is a
20785// long-running operation
20786// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
20787// The returned `Operation` type has the following method-specific
20788// fields: - `metadata`: An empty Struct message
20789// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
20790// - `response`: Environment
20791//
20792// - name: The name of the environment. Format:
20793//   `projects//locations//agents//environments/`.
20794func (r *ProjectsLocationsAgentsEnvironmentsService) Patch(name string, googleclouddialogflowcxv3beta1environment *GoogleCloudDialogflowCxV3beta1Environment) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20795	c := &ProjectsLocationsAgentsEnvironmentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20796	c.name = name
20797	c.googleclouddialogflowcxv3beta1environment = googleclouddialogflowcxv3beta1environment
20798	return c
20799}
20800
20801// UpdateMask sets the optional parameter "updateMask": Required. The
20802// mask to control which fields get updated.
20803func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20804	c.urlParams_.Set("updateMask", updateMask)
20805	return c
20806}
20807
20808// Fields allows partial responses to be retrieved. See
20809// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20810// for more information.
20811func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20812	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20813	return c
20814}
20815
20816// Context sets the context to be used in this call's Do method. Any
20817// pending HTTP request will be aborted if the provided context is
20818// canceled.
20819func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsPatchCall {
20820	c.ctx_ = ctx
20821	return c
20822}
20823
20824// Header returns an http.Header that can be modified by the caller to
20825// add HTTP headers to the request.
20826func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Header() http.Header {
20827	if c.header_ == nil {
20828		c.header_ = make(http.Header)
20829	}
20830	return c.header_
20831}
20832
20833func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) doRequest(alt string) (*http.Response, error) {
20834	reqHeaders := make(http.Header)
20835	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20836	for k, v := range c.header_ {
20837		reqHeaders[k] = v
20838	}
20839	reqHeaders.Set("User-Agent", c.s.userAgent())
20840	var body io.Reader = nil
20841	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1environment)
20842	if err != nil {
20843		return nil, err
20844	}
20845	reqHeaders.Set("Content-Type", "application/json")
20846	c.urlParams_.Set("alt", alt)
20847	c.urlParams_.Set("prettyPrint", "false")
20848	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
20849	urls += "?" + c.urlParams_.Encode()
20850	req, err := http.NewRequest("PATCH", urls, body)
20851	if err != nil {
20852		return nil, err
20853	}
20854	req.Header = reqHeaders
20855	googleapi.Expand(req.URL, map[string]string{
20856		"name": c.name,
20857	})
20858	return gensupport.SendRequest(c.ctx_, c.s.client, req)
20859}
20860
20861// Do executes the "dialogflow.projects.locations.agents.environments.patch" call.
20862// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
20863// Any non-2xx status code is an error. Response headers are in either
20864// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
20865// was returned at all) in error.(*googleapi.Error).Header. Use
20866// googleapi.IsNotModified to check whether the returned error was
20867// because http.StatusNotModified was returned.
20868func (c *ProjectsLocationsAgentsEnvironmentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
20869	gensupport.SetOptions(c.urlParams_, opts...)
20870	res, err := c.doRequest("json")
20871	if res != nil && res.StatusCode == http.StatusNotModified {
20872		if res.Body != nil {
20873			res.Body.Close()
20874		}
20875		return nil, &googleapi.Error{
20876			Code:   res.StatusCode,
20877			Header: res.Header,
20878		}
20879	}
20880	if err != nil {
20881		return nil, err
20882	}
20883	defer googleapi.CloseBody(res)
20884	if err := googleapi.CheckResponse(res); err != nil {
20885		return nil, err
20886	}
20887	ret := &GoogleLongrunningOperation{
20888		ServerResponse: googleapi.ServerResponse{
20889			Header:         res.Header,
20890			HTTPStatusCode: res.StatusCode,
20891		},
20892	}
20893	target := &ret
20894	if err := gensupport.DecodeResponse(target, res); err != nil {
20895		return nil, err
20896	}
20897	return ret, nil
20898	// {
20899	//   "description": "Updates the specified Environment. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: Environment",
20900	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}",
20901	//   "httpMethod": "PATCH",
20902	//   "id": "dialogflow.projects.locations.agents.environments.patch",
20903	//   "parameterOrder": [
20904	//     "name"
20905	//   ],
20906	//   "parameters": {
20907	//     "name": {
20908	//       "description": "The name of the environment. Format: `projects//locations//agents//environments/`.",
20909	//       "location": "path",
20910	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
20911	//       "required": true,
20912	//       "type": "string"
20913	//     },
20914	//     "updateMask": {
20915	//       "description": "Required. The mask to control which fields get updated.",
20916	//       "format": "google-fieldmask",
20917	//       "location": "query",
20918	//       "type": "string"
20919	//     }
20920	//   },
20921	//   "path": "v3beta1/{+name}",
20922	//   "request": {
20923	//     "$ref": "GoogleCloudDialogflowCxV3beta1Environment"
20924	//   },
20925	//   "response": {
20926	//     "$ref": "GoogleLongrunningOperation"
20927	//   },
20928	//   "scopes": [
20929	//     "https://www.googleapis.com/auth/cloud-platform",
20930	//     "https://www.googleapis.com/auth/dialogflow"
20931	//   ]
20932	// }
20933
20934}
20935
20936// method id "dialogflow.projects.locations.agents.environments.runContinuousTest":
20937
20938type ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall struct {
20939	s                                                      *Service
20940	environment                                            string
20941	googleclouddialogflowcxv3beta1runcontinuoustestrequest *GoogleCloudDialogflowCxV3beta1RunContinuousTestRequest
20942	urlParams_                                             gensupport.URLParams
20943	ctx_                                                   context.Context
20944	header_                                                http.Header
20945}
20946
20947// RunContinuousTest: Kicks off a continuous test under the specified
20948// Environment. This method is a long-running operation
20949// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
20950// The returned `Operation` type has the following method-specific
20951// fields: - `metadata`: RunContinuousTestMetadata - `response`:
20952// RunContinuousTestResponse
20953//
20954// - environment: Format: `projects//locations//agents//environments/`.
20955func (r *ProjectsLocationsAgentsEnvironmentsService) RunContinuousTest(environment string, googleclouddialogflowcxv3beta1runcontinuoustestrequest *GoogleCloudDialogflowCxV3beta1RunContinuousTestRequest) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20956	c := &ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall{s: r.s, urlParams_: make(gensupport.URLParams)}
20957	c.environment = environment
20958	c.googleclouddialogflowcxv3beta1runcontinuoustestrequest = googleclouddialogflowcxv3beta1runcontinuoustestrequest
20959	return c
20960}
20961
20962// Fields allows partial responses to be retrieved. See
20963// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
20964// for more information.
20965func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20966	c.urlParams_.Set("fields", googleapi.CombineFields(s))
20967	return c
20968}
20969
20970// Context sets the context to be used in this call's Do method. Any
20971// pending HTTP request will be aborted if the provided context is
20972// canceled.
20973func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall {
20974	c.ctx_ = ctx
20975	return c
20976}
20977
20978// Header returns an http.Header that can be modified by the caller to
20979// add HTTP headers to the request.
20980func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Header() http.Header {
20981	if c.header_ == nil {
20982		c.header_ = make(http.Header)
20983	}
20984	return c.header_
20985}
20986
20987func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) doRequest(alt string) (*http.Response, error) {
20988	reqHeaders := make(http.Header)
20989	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
20990	for k, v := range c.header_ {
20991		reqHeaders[k] = v
20992	}
20993	reqHeaders.Set("User-Agent", c.s.userAgent())
20994	var body io.Reader = nil
20995	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1runcontinuoustestrequest)
20996	if err != nil {
20997		return nil, err
20998	}
20999	reqHeaders.Set("Content-Type", "application/json")
21000	c.urlParams_.Set("alt", alt)
21001	c.urlParams_.Set("prettyPrint", "false")
21002	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+environment}:runContinuousTest")
21003	urls += "?" + c.urlParams_.Encode()
21004	req, err := http.NewRequest("POST", urls, body)
21005	if err != nil {
21006		return nil, err
21007	}
21008	req.Header = reqHeaders
21009	googleapi.Expand(req.URL, map[string]string{
21010		"environment": c.environment,
21011	})
21012	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21013}
21014
21015// Do executes the "dialogflow.projects.locations.agents.environments.runContinuousTest" call.
21016// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
21017// Any non-2xx status code is an error. Response headers are in either
21018// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
21019// was returned at all) in error.(*googleapi.Error).Header. Use
21020// googleapi.IsNotModified to check whether the returned error was
21021// because http.StatusNotModified was returned.
21022func (c *ProjectsLocationsAgentsEnvironmentsRunContinuousTestCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
21023	gensupport.SetOptions(c.urlParams_, opts...)
21024	res, err := c.doRequest("json")
21025	if res != nil && res.StatusCode == http.StatusNotModified {
21026		if res.Body != nil {
21027			res.Body.Close()
21028		}
21029		return nil, &googleapi.Error{
21030			Code:   res.StatusCode,
21031			Header: res.Header,
21032		}
21033	}
21034	if err != nil {
21035		return nil, err
21036	}
21037	defer googleapi.CloseBody(res)
21038	if err := googleapi.CheckResponse(res); err != nil {
21039		return nil, err
21040	}
21041	ret := &GoogleLongrunningOperation{
21042		ServerResponse: googleapi.ServerResponse{
21043			Header:         res.Header,
21044			HTTPStatusCode: res.StatusCode,
21045		},
21046	}
21047	target := &ret
21048	if err := gensupport.DecodeResponse(target, res); err != nil {
21049		return nil, err
21050	}
21051	return ret, nil
21052	// {
21053	//   "description": "Kicks off a continuous test under the specified Environment. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: RunContinuousTestMetadata - `response`: RunContinuousTestResponse",
21054	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}:runContinuousTest",
21055	//   "httpMethod": "POST",
21056	//   "id": "dialogflow.projects.locations.agents.environments.runContinuousTest",
21057	//   "parameterOrder": [
21058	//     "environment"
21059	//   ],
21060	//   "parameters": {
21061	//     "environment": {
21062	//       "description": "Required. Format: `projects//locations//agents//environments/`.",
21063	//       "location": "path",
21064	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21065	//       "required": true,
21066	//       "type": "string"
21067	//     }
21068	//   },
21069	//   "path": "v3beta1/{+environment}:runContinuousTest",
21070	//   "request": {
21071	//     "$ref": "GoogleCloudDialogflowCxV3beta1RunContinuousTestRequest"
21072	//   },
21073	//   "response": {
21074	//     "$ref": "GoogleLongrunningOperation"
21075	//   },
21076	//   "scopes": [
21077	//     "https://www.googleapis.com/auth/cloud-platform",
21078	//     "https://www.googleapis.com/auth/dialogflow"
21079	//   ]
21080	// }
21081
21082}
21083
21084// method id "dialogflow.projects.locations.agents.environments.continuousTestResults.list":
21085
21086type ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall struct {
21087	s            *Service
21088	parent       string
21089	urlParams_   gensupport.URLParams
21090	ifNoneMatch_ string
21091	ctx_         context.Context
21092	header_      http.Header
21093}
21094
21095// List: Fetches a list of continuous test results for a given
21096// environment.
21097//
21098// - parent: The environment to list results for. Format:
21099//   `projects//locations//agents// environments/`.
21100func (r *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21101	c := &ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21102	c.parent = parent
21103	return c
21104}
21105
21106// PageSize sets the optional parameter "pageSize": The maximum number
21107// of items to return in a single page. By default 100 and at most 1000.
21108func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21109	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21110	return c
21111}
21112
21113// PageToken sets the optional parameter "pageToken": The
21114// next_page_token value returned from a previous list request.
21115func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21116	c.urlParams_.Set("pageToken", pageToken)
21117	return c
21118}
21119
21120// Fields allows partial responses to be retrieved. See
21121// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21122// for more information.
21123func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21124	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21125	return c
21126}
21127
21128// IfNoneMatch sets the optional parameter which makes the operation
21129// fail if the object's ETag matches the given value. This is useful for
21130// getting updates only after the object has changed since the last
21131// request. Use googleapi.IsNotModified to check whether the response
21132// error from Do is the result of In-None-Match.
21133func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21134	c.ifNoneMatch_ = entityTag
21135	return c
21136}
21137
21138// Context sets the context to be used in this call's Do method. Any
21139// pending HTTP request will be aborted if the provided context is
21140// canceled.
21141func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall {
21142	c.ctx_ = ctx
21143	return c
21144}
21145
21146// Header returns an http.Header that can be modified by the caller to
21147// add HTTP headers to the request.
21148func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Header() http.Header {
21149	if c.header_ == nil {
21150		c.header_ = make(http.Header)
21151	}
21152	return c.header_
21153}
21154
21155func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) doRequest(alt string) (*http.Response, error) {
21156	reqHeaders := make(http.Header)
21157	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21158	for k, v := range c.header_ {
21159		reqHeaders[k] = v
21160	}
21161	reqHeaders.Set("User-Agent", c.s.userAgent())
21162	if c.ifNoneMatch_ != "" {
21163		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21164	}
21165	var body io.Reader = nil
21166	c.urlParams_.Set("alt", alt)
21167	c.urlParams_.Set("prettyPrint", "false")
21168	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/continuousTestResults")
21169	urls += "?" + c.urlParams_.Encode()
21170	req, err := http.NewRequest("GET", urls, body)
21171	if err != nil {
21172		return nil, err
21173	}
21174	req.Header = reqHeaders
21175	googleapi.Expand(req.URL, map[string]string{
21176		"parent": c.parent,
21177	})
21178	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21179}
21180
21181// Do executes the "dialogflow.projects.locations.agents.environments.continuousTestResults.list" call.
21182// Exactly one of
21183// *GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse or
21184// error will be non-nil. Any non-2xx status code is an error. Response
21185// headers are in either
21186// *GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse.Serve
21187// rResponse.Header or (if a response was returned at all) in
21188// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21189// whether the returned error was because http.StatusNotModified was
21190// returned.
21191func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse, error) {
21192	gensupport.SetOptions(c.urlParams_, opts...)
21193	res, err := c.doRequest("json")
21194	if res != nil && res.StatusCode == http.StatusNotModified {
21195		if res.Body != nil {
21196			res.Body.Close()
21197		}
21198		return nil, &googleapi.Error{
21199			Code:   res.StatusCode,
21200			Header: res.Header,
21201		}
21202	}
21203	if err != nil {
21204		return nil, err
21205	}
21206	defer googleapi.CloseBody(res)
21207	if err := googleapi.CheckResponse(res); err != nil {
21208		return nil, err
21209	}
21210	ret := &GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse{
21211		ServerResponse: googleapi.ServerResponse{
21212			Header:         res.Header,
21213			HTTPStatusCode: res.StatusCode,
21214		},
21215	}
21216	target := &ret
21217	if err := gensupport.DecodeResponse(target, res); err != nil {
21218		return nil, err
21219	}
21220	return ret, nil
21221	// {
21222	//   "description": "Fetches a list of continuous test results for a given environment.",
21223	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/continuousTestResults",
21224	//   "httpMethod": "GET",
21225	//   "id": "dialogflow.projects.locations.agents.environments.continuousTestResults.list",
21226	//   "parameterOrder": [
21227	//     "parent"
21228	//   ],
21229	//   "parameters": {
21230	//     "pageSize": {
21231	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
21232	//       "format": "int32",
21233	//       "location": "query",
21234	//       "type": "integer"
21235	//     },
21236	//     "pageToken": {
21237	//       "description": "The next_page_token value returned from a previous list request.",
21238	//       "location": "query",
21239	//       "type": "string"
21240	//     },
21241	//     "parent": {
21242	//       "description": "Required. The environment to list results for. Format: `projects//locations//agents// environments/`.",
21243	//       "location": "path",
21244	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21245	//       "required": true,
21246	//       "type": "string"
21247	//     }
21248	//   },
21249	//   "path": "v3beta1/{+parent}/continuousTestResults",
21250	//   "response": {
21251	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse"
21252	//   },
21253	//   "scopes": [
21254	//     "https://www.googleapis.com/auth/cloud-platform",
21255	//     "https://www.googleapis.com/auth/dialogflow"
21256	//   ]
21257	// }
21258
21259}
21260
21261// Pages invokes f for each page of results.
21262// A non-nil error returned from f will halt the iteration.
21263// The provided context supersedes any context provided to the Context method.
21264func (c *ProjectsLocationsAgentsEnvironmentsContinuousTestResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListContinuousTestResultsResponse) error) error {
21265	c.ctx_ = ctx
21266	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21267	for {
21268		x, err := c.Do()
21269		if err != nil {
21270			return err
21271		}
21272		if err := f(x); err != nil {
21273			return err
21274		}
21275		if x.NextPageToken == "" {
21276			return nil
21277		}
21278		c.PageToken(x.NextPageToken)
21279	}
21280}
21281
21282// method id "dialogflow.projects.locations.agents.environments.experiments.create":
21283
21284type ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall struct {
21285	s                                        *Service
21286	parent                                   string
21287	googleclouddialogflowcxv3beta1experiment *GoogleCloudDialogflowCxV3beta1Experiment
21288	urlParams_                               gensupport.URLParams
21289	ctx_                                     context.Context
21290	header_                                  http.Header
21291}
21292
21293// Create: Creates an Experiment in the specified Environment.
21294//
21295// - parent: The Agent to create an Environment for. Format:
21296//   `projects//locations//agents//environments/`.
21297func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Create(parent string, googleclouddialogflowcxv3beta1experiment *GoogleCloudDialogflowCxV3beta1Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21298	c := &ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21299	c.parent = parent
21300	c.googleclouddialogflowcxv3beta1experiment = googleclouddialogflowcxv3beta1experiment
21301	return c
21302}
21303
21304// Fields allows partial responses to be retrieved. See
21305// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21306// for more information.
21307func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21308	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21309	return c
21310}
21311
21312// Context sets the context to be used in this call's Do method. Any
21313// pending HTTP request will be aborted if the provided context is
21314// canceled.
21315func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall {
21316	c.ctx_ = ctx
21317	return c
21318}
21319
21320// Header returns an http.Header that can be modified by the caller to
21321// add HTTP headers to the request.
21322func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Header() http.Header {
21323	if c.header_ == nil {
21324		c.header_ = make(http.Header)
21325	}
21326	return c.header_
21327}
21328
21329func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) doRequest(alt string) (*http.Response, error) {
21330	reqHeaders := make(http.Header)
21331	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21332	for k, v := range c.header_ {
21333		reqHeaders[k] = v
21334	}
21335	reqHeaders.Set("User-Agent", c.s.userAgent())
21336	var body io.Reader = nil
21337	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1experiment)
21338	if err != nil {
21339		return nil, err
21340	}
21341	reqHeaders.Set("Content-Type", "application/json")
21342	c.urlParams_.Set("alt", alt)
21343	c.urlParams_.Set("prettyPrint", "false")
21344	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/experiments")
21345	urls += "?" + c.urlParams_.Encode()
21346	req, err := http.NewRequest("POST", urls, body)
21347	if err != nil {
21348		return nil, err
21349	}
21350	req.Header = reqHeaders
21351	googleapi.Expand(req.URL, map[string]string{
21352		"parent": c.parent,
21353	})
21354	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21355}
21356
21357// Do executes the "dialogflow.projects.locations.agents.environments.experiments.create" call.
21358// Exactly one of *GoogleCloudDialogflowCxV3beta1Experiment or error
21359// will be non-nil. Any non-2xx status code is an error. Response
21360// headers are in either
21361// *GoogleCloudDialogflowCxV3beta1Experiment.ServerResponse.Header or
21362// (if a response was returned at all) in
21363// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21364// whether the returned error was because http.StatusNotModified was
21365// returned.
21366func (c *ProjectsLocationsAgentsEnvironmentsExperimentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Experiment, error) {
21367	gensupport.SetOptions(c.urlParams_, opts...)
21368	res, err := c.doRequest("json")
21369	if res != nil && res.StatusCode == http.StatusNotModified {
21370		if res.Body != nil {
21371			res.Body.Close()
21372		}
21373		return nil, &googleapi.Error{
21374			Code:   res.StatusCode,
21375			Header: res.Header,
21376		}
21377	}
21378	if err != nil {
21379		return nil, err
21380	}
21381	defer googleapi.CloseBody(res)
21382	if err := googleapi.CheckResponse(res); err != nil {
21383		return nil, err
21384	}
21385	ret := &GoogleCloudDialogflowCxV3beta1Experiment{
21386		ServerResponse: googleapi.ServerResponse{
21387			Header:         res.Header,
21388			HTTPStatusCode: res.StatusCode,
21389		},
21390	}
21391	target := &ret
21392	if err := gensupport.DecodeResponse(target, res); err != nil {
21393		return nil, err
21394	}
21395	return ret, nil
21396	// {
21397	//   "description": "Creates an Experiment in the specified Environment.",
21398	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
21399	//   "httpMethod": "POST",
21400	//   "id": "dialogflow.projects.locations.agents.environments.experiments.create",
21401	//   "parameterOrder": [
21402	//     "parent"
21403	//   ],
21404	//   "parameters": {
21405	//     "parent": {
21406	//       "description": "Required. The Agent to create an Environment for. Format: `projects//locations//agents//environments/`.",
21407	//       "location": "path",
21408	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21409	//       "required": true,
21410	//       "type": "string"
21411	//     }
21412	//   },
21413	//   "path": "v3beta1/{+parent}/experiments",
21414	//   "request": {
21415	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
21416	//   },
21417	//   "response": {
21418	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
21419	//   },
21420	//   "scopes": [
21421	//     "https://www.googleapis.com/auth/cloud-platform",
21422	//     "https://www.googleapis.com/auth/dialogflow"
21423	//   ]
21424	// }
21425
21426}
21427
21428// method id "dialogflow.projects.locations.agents.environments.experiments.delete":
21429
21430type ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall struct {
21431	s          *Service
21432	name       string
21433	urlParams_ gensupport.URLParams
21434	ctx_       context.Context
21435	header_    http.Header
21436}
21437
21438// Delete: Deletes the specified Experiment.
21439//
21440// - name: The name of the Environment to delete. Format:
21441//   `projects//locations//agents//environments//experiments/`.
21442func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21443	c := &ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21444	c.name = name
21445	return c
21446}
21447
21448// Fields allows partial responses to be retrieved. See
21449// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21450// for more information.
21451func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21452	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21453	return c
21454}
21455
21456// Context sets the context to be used in this call's Do method. Any
21457// pending HTTP request will be aborted if the provided context is
21458// canceled.
21459func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall {
21460	c.ctx_ = ctx
21461	return c
21462}
21463
21464// Header returns an http.Header that can be modified by the caller to
21465// add HTTP headers to the request.
21466func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Header() http.Header {
21467	if c.header_ == nil {
21468		c.header_ = make(http.Header)
21469	}
21470	return c.header_
21471}
21472
21473func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) doRequest(alt string) (*http.Response, error) {
21474	reqHeaders := make(http.Header)
21475	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21476	for k, v := range c.header_ {
21477		reqHeaders[k] = v
21478	}
21479	reqHeaders.Set("User-Agent", c.s.userAgent())
21480	var body io.Reader = nil
21481	c.urlParams_.Set("alt", alt)
21482	c.urlParams_.Set("prettyPrint", "false")
21483	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
21484	urls += "?" + c.urlParams_.Encode()
21485	req, err := http.NewRequest("DELETE", urls, body)
21486	if err != nil {
21487		return nil, err
21488	}
21489	req.Header = reqHeaders
21490	googleapi.Expand(req.URL, map[string]string{
21491		"name": c.name,
21492	})
21493	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21494}
21495
21496// Do executes the "dialogflow.projects.locations.agents.environments.experiments.delete" call.
21497// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
21498// non-2xx status code is an error. Response headers are in either
21499// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
21500// returned at all) in error.(*googleapi.Error).Header. Use
21501// googleapi.IsNotModified to check whether the returned error was
21502// because http.StatusNotModified was returned.
21503func (c *ProjectsLocationsAgentsEnvironmentsExperimentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
21504	gensupport.SetOptions(c.urlParams_, opts...)
21505	res, err := c.doRequest("json")
21506	if res != nil && res.StatusCode == http.StatusNotModified {
21507		if res.Body != nil {
21508			res.Body.Close()
21509		}
21510		return nil, &googleapi.Error{
21511			Code:   res.StatusCode,
21512			Header: res.Header,
21513		}
21514	}
21515	if err != nil {
21516		return nil, err
21517	}
21518	defer googleapi.CloseBody(res)
21519	if err := googleapi.CheckResponse(res); err != nil {
21520		return nil, err
21521	}
21522	ret := &GoogleProtobufEmpty{
21523		ServerResponse: googleapi.ServerResponse{
21524			Header:         res.Header,
21525			HTTPStatusCode: res.StatusCode,
21526		},
21527	}
21528	target := &ret
21529	if err := gensupport.DecodeResponse(target, res); err != nil {
21530		return nil, err
21531	}
21532	return ret, nil
21533	// {
21534	//   "description": "Deletes the specified Experiment.",
21535	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21536	//   "httpMethod": "DELETE",
21537	//   "id": "dialogflow.projects.locations.agents.environments.experiments.delete",
21538	//   "parameterOrder": [
21539	//     "name"
21540	//   ],
21541	//   "parameters": {
21542	//     "name": {
21543	//       "description": "Required. The name of the Environment to delete. Format: `projects//locations//agents//environments//experiments/`.",
21544	//       "location": "path",
21545	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21546	//       "required": true,
21547	//       "type": "string"
21548	//     }
21549	//   },
21550	//   "path": "v3beta1/{+name}",
21551	//   "response": {
21552	//     "$ref": "GoogleProtobufEmpty"
21553	//   },
21554	//   "scopes": [
21555	//     "https://www.googleapis.com/auth/cloud-platform",
21556	//     "https://www.googleapis.com/auth/dialogflow"
21557	//   ]
21558	// }
21559
21560}
21561
21562// method id "dialogflow.projects.locations.agents.environments.experiments.get":
21563
21564type ProjectsLocationsAgentsEnvironmentsExperimentsGetCall struct {
21565	s            *Service
21566	name         string
21567	urlParams_   gensupport.URLParams
21568	ifNoneMatch_ string
21569	ctx_         context.Context
21570	header_      http.Header
21571}
21572
21573// Get: Retrieves the specified Experiment.
21574//
21575// - name: The name of the Environment. Format:
21576//   `projects//locations//agents//environments//experiments/`.
21577func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Get(name string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21578	c := &ProjectsLocationsAgentsEnvironmentsExperimentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21579	c.name = name
21580	return c
21581}
21582
21583// Fields allows partial responses to be retrieved. See
21584// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21585// for more information.
21586func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21587	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21588	return c
21589}
21590
21591// IfNoneMatch sets the optional parameter which makes the operation
21592// fail if the object's ETag matches the given value. This is useful for
21593// getting updates only after the object has changed since the last
21594// request. Use googleapi.IsNotModified to check whether the response
21595// error from Do is the result of In-None-Match.
21596func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21597	c.ifNoneMatch_ = entityTag
21598	return c
21599}
21600
21601// Context sets the context to be used in this call's Do method. Any
21602// pending HTTP request will be aborted if the provided context is
21603// canceled.
21604func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall {
21605	c.ctx_ = ctx
21606	return c
21607}
21608
21609// Header returns an http.Header that can be modified by the caller to
21610// add HTTP headers to the request.
21611func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Header() http.Header {
21612	if c.header_ == nil {
21613		c.header_ = make(http.Header)
21614	}
21615	return c.header_
21616}
21617
21618func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) doRequest(alt string) (*http.Response, error) {
21619	reqHeaders := make(http.Header)
21620	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21621	for k, v := range c.header_ {
21622		reqHeaders[k] = v
21623	}
21624	reqHeaders.Set("User-Agent", c.s.userAgent())
21625	if c.ifNoneMatch_ != "" {
21626		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21627	}
21628	var body io.Reader = nil
21629	c.urlParams_.Set("alt", alt)
21630	c.urlParams_.Set("prettyPrint", "false")
21631	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
21632	urls += "?" + c.urlParams_.Encode()
21633	req, err := http.NewRequest("GET", urls, body)
21634	if err != nil {
21635		return nil, err
21636	}
21637	req.Header = reqHeaders
21638	googleapi.Expand(req.URL, map[string]string{
21639		"name": c.name,
21640	})
21641	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21642}
21643
21644// Do executes the "dialogflow.projects.locations.agents.environments.experiments.get" call.
21645// Exactly one of *GoogleCloudDialogflowCxV3beta1Experiment or error
21646// will be non-nil. Any non-2xx status code is an error. Response
21647// headers are in either
21648// *GoogleCloudDialogflowCxV3beta1Experiment.ServerResponse.Header or
21649// (if a response was returned at all) in
21650// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21651// whether the returned error was because http.StatusNotModified was
21652// returned.
21653func (c *ProjectsLocationsAgentsEnvironmentsExperimentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Experiment, error) {
21654	gensupport.SetOptions(c.urlParams_, opts...)
21655	res, err := c.doRequest("json")
21656	if res != nil && res.StatusCode == http.StatusNotModified {
21657		if res.Body != nil {
21658			res.Body.Close()
21659		}
21660		return nil, &googleapi.Error{
21661			Code:   res.StatusCode,
21662			Header: res.Header,
21663		}
21664	}
21665	if err != nil {
21666		return nil, err
21667	}
21668	defer googleapi.CloseBody(res)
21669	if err := googleapi.CheckResponse(res); err != nil {
21670		return nil, err
21671	}
21672	ret := &GoogleCloudDialogflowCxV3beta1Experiment{
21673		ServerResponse: googleapi.ServerResponse{
21674			Header:         res.Header,
21675			HTTPStatusCode: res.StatusCode,
21676		},
21677	}
21678	target := &ret
21679	if err := gensupport.DecodeResponse(target, res); err != nil {
21680		return nil, err
21681	}
21682	return ret, nil
21683	// {
21684	//   "description": "Retrieves the specified Experiment.",
21685	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
21686	//   "httpMethod": "GET",
21687	//   "id": "dialogflow.projects.locations.agents.environments.experiments.get",
21688	//   "parameterOrder": [
21689	//     "name"
21690	//   ],
21691	//   "parameters": {
21692	//     "name": {
21693	//       "description": "Required. The name of the Environment. Format: `projects//locations//agents//environments//experiments/`.",
21694	//       "location": "path",
21695	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
21696	//       "required": true,
21697	//       "type": "string"
21698	//     }
21699	//   },
21700	//   "path": "v3beta1/{+name}",
21701	//   "response": {
21702	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
21703	//   },
21704	//   "scopes": [
21705	//     "https://www.googleapis.com/auth/cloud-platform",
21706	//     "https://www.googleapis.com/auth/dialogflow"
21707	//   ]
21708	// }
21709
21710}
21711
21712// method id "dialogflow.projects.locations.agents.environments.experiments.list":
21713
21714type ProjectsLocationsAgentsEnvironmentsExperimentsListCall struct {
21715	s            *Service
21716	parent       string
21717	urlParams_   gensupport.URLParams
21718	ifNoneMatch_ string
21719	ctx_         context.Context
21720	header_      http.Header
21721}
21722
21723// List: Returns the list of all experiments in the specified
21724// Environment.
21725//
21726// - parent: The Environment to list all environments for. Format:
21727//   `projects//locations//agents//environments/`.
21728func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) List(parent string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21729	c := &ProjectsLocationsAgentsEnvironmentsExperimentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21730	c.parent = parent
21731	return c
21732}
21733
21734// PageSize sets the optional parameter "pageSize": The maximum number
21735// of items to return in a single page. By default 20 and at most 100.
21736func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21737	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
21738	return c
21739}
21740
21741// PageToken sets the optional parameter "pageToken": The
21742// next_page_token value returned from a previous list request.
21743func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21744	c.urlParams_.Set("pageToken", pageToken)
21745	return c
21746}
21747
21748// Fields allows partial responses to be retrieved. See
21749// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21750// for more information.
21751func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21752	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21753	return c
21754}
21755
21756// IfNoneMatch sets the optional parameter which makes the operation
21757// fail if the object's ETag matches the given value. This is useful for
21758// getting updates only after the object has changed since the last
21759// request. Use googleapi.IsNotModified to check whether the response
21760// error from Do is the result of In-None-Match.
21761func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21762	c.ifNoneMatch_ = entityTag
21763	return c
21764}
21765
21766// Context sets the context to be used in this call's Do method. Any
21767// pending HTTP request will be aborted if the provided context is
21768// canceled.
21769func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsListCall {
21770	c.ctx_ = ctx
21771	return c
21772}
21773
21774// Header returns an http.Header that can be modified by the caller to
21775// add HTTP headers to the request.
21776func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Header() http.Header {
21777	if c.header_ == nil {
21778		c.header_ = make(http.Header)
21779	}
21780	return c.header_
21781}
21782
21783func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) doRequest(alt string) (*http.Response, error) {
21784	reqHeaders := make(http.Header)
21785	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21786	for k, v := range c.header_ {
21787		reqHeaders[k] = v
21788	}
21789	reqHeaders.Set("User-Agent", c.s.userAgent())
21790	if c.ifNoneMatch_ != "" {
21791		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
21792	}
21793	var body io.Reader = nil
21794	c.urlParams_.Set("alt", alt)
21795	c.urlParams_.Set("prettyPrint", "false")
21796	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/experiments")
21797	urls += "?" + c.urlParams_.Encode()
21798	req, err := http.NewRequest("GET", urls, body)
21799	if err != nil {
21800		return nil, err
21801	}
21802	req.Header = reqHeaders
21803	googleapi.Expand(req.URL, map[string]string{
21804		"parent": c.parent,
21805	})
21806	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21807}
21808
21809// Do executes the "dialogflow.projects.locations.agents.environments.experiments.list" call.
21810// Exactly one of *GoogleCloudDialogflowCxV3beta1ListExperimentsResponse
21811// or error will be non-nil. Any non-2xx status code is an error.
21812// Response headers are in either
21813// *GoogleCloudDialogflowCxV3beta1ListExperimentsResponse.ServerResponse.
21814// Header or (if a response was returned at all) in
21815// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21816// whether the returned error was because http.StatusNotModified was
21817// returned.
21818func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListExperimentsResponse, error) {
21819	gensupport.SetOptions(c.urlParams_, opts...)
21820	res, err := c.doRequest("json")
21821	if res != nil && res.StatusCode == http.StatusNotModified {
21822		if res.Body != nil {
21823			res.Body.Close()
21824		}
21825		return nil, &googleapi.Error{
21826			Code:   res.StatusCode,
21827			Header: res.Header,
21828		}
21829	}
21830	if err != nil {
21831		return nil, err
21832	}
21833	defer googleapi.CloseBody(res)
21834	if err := googleapi.CheckResponse(res); err != nil {
21835		return nil, err
21836	}
21837	ret := &GoogleCloudDialogflowCxV3beta1ListExperimentsResponse{
21838		ServerResponse: googleapi.ServerResponse{
21839			Header:         res.Header,
21840			HTTPStatusCode: res.StatusCode,
21841		},
21842	}
21843	target := &ret
21844	if err := gensupport.DecodeResponse(target, res); err != nil {
21845		return nil, err
21846	}
21847	return ret, nil
21848	// {
21849	//   "description": "Returns the list of all experiments in the specified Environment.",
21850	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments",
21851	//   "httpMethod": "GET",
21852	//   "id": "dialogflow.projects.locations.agents.environments.experiments.list",
21853	//   "parameterOrder": [
21854	//     "parent"
21855	//   ],
21856	//   "parameters": {
21857	//     "pageSize": {
21858	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
21859	//       "format": "int32",
21860	//       "location": "query",
21861	//       "type": "integer"
21862	//     },
21863	//     "pageToken": {
21864	//       "description": "The next_page_token value returned from a previous list request.",
21865	//       "location": "query",
21866	//       "type": "string"
21867	//     },
21868	//     "parent": {
21869	//       "description": "Required. The Environment to list all environments for. Format: `projects//locations//agents//environments/`.",
21870	//       "location": "path",
21871	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+$",
21872	//       "required": true,
21873	//       "type": "string"
21874	//     }
21875	//   },
21876	//   "path": "v3beta1/{+parent}/experiments",
21877	//   "response": {
21878	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListExperimentsResponse"
21879	//   },
21880	//   "scopes": [
21881	//     "https://www.googleapis.com/auth/cloud-platform",
21882	//     "https://www.googleapis.com/auth/dialogflow"
21883	//   ]
21884	// }
21885
21886}
21887
21888// Pages invokes f for each page of results.
21889// A non-nil error returned from f will halt the iteration.
21890// The provided context supersedes any context provided to the Context method.
21891func (c *ProjectsLocationsAgentsEnvironmentsExperimentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListExperimentsResponse) error) error {
21892	c.ctx_ = ctx
21893	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
21894	for {
21895		x, err := c.Do()
21896		if err != nil {
21897			return err
21898		}
21899		if err := f(x); err != nil {
21900			return err
21901		}
21902		if x.NextPageToken == "" {
21903			return nil
21904		}
21905		c.PageToken(x.NextPageToken)
21906	}
21907}
21908
21909// method id "dialogflow.projects.locations.agents.environments.experiments.patch":
21910
21911type ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall struct {
21912	s                                        *Service
21913	name                                     string
21914	googleclouddialogflowcxv3beta1experiment *GoogleCloudDialogflowCxV3beta1Experiment
21915	urlParams_                               gensupport.URLParams
21916	ctx_                                     context.Context
21917	header_                                  http.Header
21918}
21919
21920// Patch: Updates the specified Experiment.
21921//
21922// - name: The name of the experiment. Format:
21923//   projects//locations//agents//environments//experiments/..
21924func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Patch(name string, googleclouddialogflowcxv3beta1experiment *GoogleCloudDialogflowCxV3beta1Experiment) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21925	c := &ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
21926	c.name = name
21927	c.googleclouddialogflowcxv3beta1experiment = googleclouddialogflowcxv3beta1experiment
21928	return c
21929}
21930
21931// UpdateMask sets the optional parameter "updateMask": Required. The
21932// mask to control which fields get updated.
21933func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21934	c.urlParams_.Set("updateMask", updateMask)
21935	return c
21936}
21937
21938// Fields allows partial responses to be retrieved. See
21939// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
21940// for more information.
21941func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21942	c.urlParams_.Set("fields", googleapi.CombineFields(s))
21943	return c
21944}
21945
21946// Context sets the context to be used in this call's Do method. Any
21947// pending HTTP request will be aborted if the provided context is
21948// canceled.
21949func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall {
21950	c.ctx_ = ctx
21951	return c
21952}
21953
21954// Header returns an http.Header that can be modified by the caller to
21955// add HTTP headers to the request.
21956func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Header() http.Header {
21957	if c.header_ == nil {
21958		c.header_ = make(http.Header)
21959	}
21960	return c.header_
21961}
21962
21963func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) doRequest(alt string) (*http.Response, error) {
21964	reqHeaders := make(http.Header)
21965	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
21966	for k, v := range c.header_ {
21967		reqHeaders[k] = v
21968	}
21969	reqHeaders.Set("User-Agent", c.s.userAgent())
21970	var body io.Reader = nil
21971	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1experiment)
21972	if err != nil {
21973		return nil, err
21974	}
21975	reqHeaders.Set("Content-Type", "application/json")
21976	c.urlParams_.Set("alt", alt)
21977	c.urlParams_.Set("prettyPrint", "false")
21978	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
21979	urls += "?" + c.urlParams_.Encode()
21980	req, err := http.NewRequest("PATCH", urls, body)
21981	if err != nil {
21982		return nil, err
21983	}
21984	req.Header = reqHeaders
21985	googleapi.Expand(req.URL, map[string]string{
21986		"name": c.name,
21987	})
21988	return gensupport.SendRequest(c.ctx_, c.s.client, req)
21989}
21990
21991// Do executes the "dialogflow.projects.locations.agents.environments.experiments.patch" call.
21992// Exactly one of *GoogleCloudDialogflowCxV3beta1Experiment or error
21993// will be non-nil. Any non-2xx status code is an error. Response
21994// headers are in either
21995// *GoogleCloudDialogflowCxV3beta1Experiment.ServerResponse.Header or
21996// (if a response was returned at all) in
21997// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
21998// whether the returned error was because http.StatusNotModified was
21999// returned.
22000func (c *ProjectsLocationsAgentsEnvironmentsExperimentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Experiment, error) {
22001	gensupport.SetOptions(c.urlParams_, opts...)
22002	res, err := c.doRequest("json")
22003	if res != nil && res.StatusCode == http.StatusNotModified {
22004		if res.Body != nil {
22005			res.Body.Close()
22006		}
22007		return nil, &googleapi.Error{
22008			Code:   res.StatusCode,
22009			Header: res.Header,
22010		}
22011	}
22012	if err != nil {
22013		return nil, err
22014	}
22015	defer googleapi.CloseBody(res)
22016	if err := googleapi.CheckResponse(res); err != nil {
22017		return nil, err
22018	}
22019	ret := &GoogleCloudDialogflowCxV3beta1Experiment{
22020		ServerResponse: googleapi.ServerResponse{
22021			Header:         res.Header,
22022			HTTPStatusCode: res.StatusCode,
22023		},
22024	}
22025	target := &ret
22026	if err := gensupport.DecodeResponse(target, res); err != nil {
22027		return nil, err
22028	}
22029	return ret, nil
22030	// {
22031	//   "description": "Updates the specified Experiment.",
22032	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}",
22033	//   "httpMethod": "PATCH",
22034	//   "id": "dialogflow.projects.locations.agents.environments.experiments.patch",
22035	//   "parameterOrder": [
22036	//     "name"
22037	//   ],
22038	//   "parameters": {
22039	//     "name": {
22040	//       "description": "The name of the experiment. Format: projects//locations//agents//environments//experiments/..",
22041	//       "location": "path",
22042	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
22043	//       "required": true,
22044	//       "type": "string"
22045	//     },
22046	//     "updateMask": {
22047	//       "description": "Required. The mask to control which fields get updated.",
22048	//       "format": "google-fieldmask",
22049	//       "location": "query",
22050	//       "type": "string"
22051	//     }
22052	//   },
22053	//   "path": "v3beta1/{+name}",
22054	//   "request": {
22055	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
22056	//   },
22057	//   "response": {
22058	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
22059	//   },
22060	//   "scopes": [
22061	//     "https://www.googleapis.com/auth/cloud-platform",
22062	//     "https://www.googleapis.com/auth/dialogflow"
22063	//   ]
22064	// }
22065
22066}
22067
22068// method id "dialogflow.projects.locations.agents.environments.experiments.start":
22069
22070type ProjectsLocationsAgentsEnvironmentsExperimentsStartCall struct {
22071	s                                                    *Service
22072	name                                                 string
22073	googleclouddialogflowcxv3beta1startexperimentrequest *GoogleCloudDialogflowCxV3beta1StartExperimentRequest
22074	urlParams_                                           gensupport.URLParams
22075	ctx_                                                 context.Context
22076	header_                                              http.Header
22077}
22078
22079// Start: Starts the specified Experiment. This rpc only changes the
22080// state of experiment from PENDING to RUNNING.
22081//
22082// - name: Resource name of the experiment to start. Format:
22083//   `projects//locations//agents//environments//experiments/`.
22084func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Start(name string, googleclouddialogflowcxv3beta1startexperimentrequest *GoogleCloudDialogflowCxV3beta1StartExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22085	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStartCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22086	c.name = name
22087	c.googleclouddialogflowcxv3beta1startexperimentrequest = googleclouddialogflowcxv3beta1startexperimentrequest
22088	return c
22089}
22090
22091// Fields allows partial responses to be retrieved. See
22092// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22093// for more information.
22094func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22095	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22096	return c
22097}
22098
22099// Context sets the context to be used in this call's Do method. Any
22100// pending HTTP request will be aborted if the provided context is
22101// canceled.
22102func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall {
22103	c.ctx_ = ctx
22104	return c
22105}
22106
22107// Header returns an http.Header that can be modified by the caller to
22108// add HTTP headers to the request.
22109func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Header() http.Header {
22110	if c.header_ == nil {
22111		c.header_ = make(http.Header)
22112	}
22113	return c.header_
22114}
22115
22116func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) doRequest(alt string) (*http.Response, error) {
22117	reqHeaders := make(http.Header)
22118	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22119	for k, v := range c.header_ {
22120		reqHeaders[k] = v
22121	}
22122	reqHeaders.Set("User-Agent", c.s.userAgent())
22123	var body io.Reader = nil
22124	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1startexperimentrequest)
22125	if err != nil {
22126		return nil, err
22127	}
22128	reqHeaders.Set("Content-Type", "application/json")
22129	c.urlParams_.Set("alt", alt)
22130	c.urlParams_.Set("prettyPrint", "false")
22131	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:start")
22132	urls += "?" + c.urlParams_.Encode()
22133	req, err := http.NewRequest("POST", urls, body)
22134	if err != nil {
22135		return nil, err
22136	}
22137	req.Header = reqHeaders
22138	googleapi.Expand(req.URL, map[string]string{
22139		"name": c.name,
22140	})
22141	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22142}
22143
22144// Do executes the "dialogflow.projects.locations.agents.environments.experiments.start" call.
22145// Exactly one of *GoogleCloudDialogflowCxV3beta1Experiment or error
22146// will be non-nil. Any non-2xx status code is an error. Response
22147// headers are in either
22148// *GoogleCloudDialogflowCxV3beta1Experiment.ServerResponse.Header or
22149// (if a response was returned at all) in
22150// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22151// whether the returned error was because http.StatusNotModified was
22152// returned.
22153func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStartCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Experiment, error) {
22154	gensupport.SetOptions(c.urlParams_, opts...)
22155	res, err := c.doRequest("json")
22156	if res != nil && res.StatusCode == http.StatusNotModified {
22157		if res.Body != nil {
22158			res.Body.Close()
22159		}
22160		return nil, &googleapi.Error{
22161			Code:   res.StatusCode,
22162			Header: res.Header,
22163		}
22164	}
22165	if err != nil {
22166		return nil, err
22167	}
22168	defer googleapi.CloseBody(res)
22169	if err := googleapi.CheckResponse(res); err != nil {
22170		return nil, err
22171	}
22172	ret := &GoogleCloudDialogflowCxV3beta1Experiment{
22173		ServerResponse: googleapi.ServerResponse{
22174			Header:         res.Header,
22175			HTTPStatusCode: res.StatusCode,
22176		},
22177	}
22178	target := &ret
22179	if err := gensupport.DecodeResponse(target, res); err != nil {
22180		return nil, err
22181	}
22182	return ret, nil
22183	// {
22184	//   "description": "Starts the specified Experiment. This rpc only changes the state of experiment from PENDING to RUNNING.",
22185	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:start",
22186	//   "httpMethod": "POST",
22187	//   "id": "dialogflow.projects.locations.agents.environments.experiments.start",
22188	//   "parameterOrder": [
22189	//     "name"
22190	//   ],
22191	//   "parameters": {
22192	//     "name": {
22193	//       "description": "Required. Resource name of the experiment to start. Format: `projects//locations//agents//environments//experiments/`.",
22194	//       "location": "path",
22195	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
22196	//       "required": true,
22197	//       "type": "string"
22198	//     }
22199	//   },
22200	//   "path": "v3beta1/{+name}:start",
22201	//   "request": {
22202	//     "$ref": "GoogleCloudDialogflowCxV3beta1StartExperimentRequest"
22203	//   },
22204	//   "response": {
22205	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
22206	//   },
22207	//   "scopes": [
22208	//     "https://www.googleapis.com/auth/cloud-platform",
22209	//     "https://www.googleapis.com/auth/dialogflow"
22210	//   ]
22211	// }
22212
22213}
22214
22215// method id "dialogflow.projects.locations.agents.environments.experiments.stop":
22216
22217type ProjectsLocationsAgentsEnvironmentsExperimentsStopCall struct {
22218	s                                                   *Service
22219	name                                                string
22220	googleclouddialogflowcxv3beta1stopexperimentrequest *GoogleCloudDialogflowCxV3beta1StopExperimentRequest
22221	urlParams_                                          gensupport.URLParams
22222	ctx_                                                context.Context
22223	header_                                             http.Header
22224}
22225
22226// Stop: Stops the specified Experiment. This rpc only changes the state
22227// of experiment from RUNNING to DONE.
22228//
22229// - name: Resource name of the experiment to stop. Format:
22230//   `projects//locations//agents//environments//experiments/`.
22231func (r *ProjectsLocationsAgentsEnvironmentsExperimentsService) Stop(name string, googleclouddialogflowcxv3beta1stopexperimentrequest *GoogleCloudDialogflowCxV3beta1StopExperimentRequest) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22232	c := &ProjectsLocationsAgentsEnvironmentsExperimentsStopCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22233	c.name = name
22234	c.googleclouddialogflowcxv3beta1stopexperimentrequest = googleclouddialogflowcxv3beta1stopexperimentrequest
22235	return c
22236}
22237
22238// Fields allows partial responses to be retrieved. See
22239// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22240// for more information.
22241func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22242	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22243	return c
22244}
22245
22246// Context sets the context to be used in this call's Do method. Any
22247// pending HTTP request will be aborted if the provided context is
22248// canceled.
22249func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall {
22250	c.ctx_ = ctx
22251	return c
22252}
22253
22254// Header returns an http.Header that can be modified by the caller to
22255// add HTTP headers to the request.
22256func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Header() http.Header {
22257	if c.header_ == nil {
22258		c.header_ = make(http.Header)
22259	}
22260	return c.header_
22261}
22262
22263func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) doRequest(alt string) (*http.Response, error) {
22264	reqHeaders := make(http.Header)
22265	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22266	for k, v := range c.header_ {
22267		reqHeaders[k] = v
22268	}
22269	reqHeaders.Set("User-Agent", c.s.userAgent())
22270	var body io.Reader = nil
22271	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1stopexperimentrequest)
22272	if err != nil {
22273		return nil, err
22274	}
22275	reqHeaders.Set("Content-Type", "application/json")
22276	c.urlParams_.Set("alt", alt)
22277	c.urlParams_.Set("prettyPrint", "false")
22278	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:stop")
22279	urls += "?" + c.urlParams_.Encode()
22280	req, err := http.NewRequest("POST", urls, body)
22281	if err != nil {
22282		return nil, err
22283	}
22284	req.Header = reqHeaders
22285	googleapi.Expand(req.URL, map[string]string{
22286		"name": c.name,
22287	})
22288	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22289}
22290
22291// Do executes the "dialogflow.projects.locations.agents.environments.experiments.stop" call.
22292// Exactly one of *GoogleCloudDialogflowCxV3beta1Experiment or error
22293// will be non-nil. Any non-2xx status code is an error. Response
22294// headers are in either
22295// *GoogleCloudDialogflowCxV3beta1Experiment.ServerResponse.Header or
22296// (if a response was returned at all) in
22297// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22298// whether the returned error was because http.StatusNotModified was
22299// returned.
22300func (c *ProjectsLocationsAgentsEnvironmentsExperimentsStopCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Experiment, error) {
22301	gensupport.SetOptions(c.urlParams_, opts...)
22302	res, err := c.doRequest("json")
22303	if res != nil && res.StatusCode == http.StatusNotModified {
22304		if res.Body != nil {
22305			res.Body.Close()
22306		}
22307		return nil, &googleapi.Error{
22308			Code:   res.StatusCode,
22309			Header: res.Header,
22310		}
22311	}
22312	if err != nil {
22313		return nil, err
22314	}
22315	defer googleapi.CloseBody(res)
22316	if err := googleapi.CheckResponse(res); err != nil {
22317		return nil, err
22318	}
22319	ret := &GoogleCloudDialogflowCxV3beta1Experiment{
22320		ServerResponse: googleapi.ServerResponse{
22321			Header:         res.Header,
22322			HTTPStatusCode: res.StatusCode,
22323		},
22324	}
22325	target := &ret
22326	if err := gensupport.DecodeResponse(target, res); err != nil {
22327		return nil, err
22328	}
22329	return ret, nil
22330	// {
22331	//   "description": "Stops the specified Experiment. This rpc only changes the state of experiment from RUNNING to DONE.",
22332	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/experiments/{experimentsId}:stop",
22333	//   "httpMethod": "POST",
22334	//   "id": "dialogflow.projects.locations.agents.environments.experiments.stop",
22335	//   "parameterOrder": [
22336	//     "name"
22337	//   ],
22338	//   "parameters": {
22339	//     "name": {
22340	//       "description": "Required. Resource name of the experiment to stop. Format: `projects//locations//agents//environments//experiments/`.",
22341	//       "location": "path",
22342	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/experiments/[^/]+$",
22343	//       "required": true,
22344	//       "type": "string"
22345	//     }
22346	//   },
22347	//   "path": "v3beta1/{+name}:stop",
22348	//   "request": {
22349	//     "$ref": "GoogleCloudDialogflowCxV3beta1StopExperimentRequest"
22350	//   },
22351	//   "response": {
22352	//     "$ref": "GoogleCloudDialogflowCxV3beta1Experiment"
22353	//   },
22354	//   "scopes": [
22355	//     "https://www.googleapis.com/auth/cloud-platform",
22356	//     "https://www.googleapis.com/auth/dialogflow"
22357	//   ]
22358	// }
22359
22360}
22361
22362// method id "dialogflow.projects.locations.agents.environments.sessions.detectIntent":
22363
22364type ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall struct {
22365	s                                                 *Service
22366	sessionid                                         string
22367	googleclouddialogflowcxv3beta1detectintentrequest *GoogleCloudDialogflowCxV3beta1DetectIntentRequest
22368	urlParams_                                        gensupport.URLParams
22369	ctx_                                              context.Context
22370	header_                                           http.Header
22371}
22372
22373// DetectIntent: Processes a natural language query and returns
22374// structured, actionable data as a result. This method is not
22375// idempotent, because it may cause session entity types to be updated,
22376// which in turn might affect results of future queries. Note: Always
22377// use agent versions for production traffic. See Versions and
22378// environments
22379// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
22380//
22381// - session: The name of the session this query is sent to. Format:
22382//   `projects//locations//agents//sessions/` or
22383//   `projects//locations//agents//environments//sessions/`. If
22384//   `Environment ID` is not specified, we assume default 'draft'
22385//   environment. It's up to the API caller to choose an appropriate
22386//   `Session ID`. It can be a random number or some type of session
22387//   identifiers (preferably hashed). The length of the `Session ID`
22388//   must not exceed 36 characters. For more information, see the
22389//   sessions guide
22390//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22391//   Note: Always use agent versions for production traffic. See
22392//   Versions and environments
22393//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
22394func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3beta1detectintentrequest *GoogleCloudDialogflowCxV3beta1DetectIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22395	c := &ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22396	c.sessionid = sessionid
22397	c.googleclouddialogflowcxv3beta1detectintentrequest = googleclouddialogflowcxv3beta1detectintentrequest
22398	return c
22399}
22400
22401// Fields allows partial responses to be retrieved. See
22402// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22403// for more information.
22404func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22405	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22406	return c
22407}
22408
22409// Context sets the context to be used in this call's Do method. Any
22410// pending HTTP request will be aborted if the provided context is
22411// canceled.
22412func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall {
22413	c.ctx_ = ctx
22414	return c
22415}
22416
22417// Header returns an http.Header that can be modified by the caller to
22418// add HTTP headers to the request.
22419func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Header() http.Header {
22420	if c.header_ == nil {
22421		c.header_ = make(http.Header)
22422	}
22423	return c.header_
22424}
22425
22426func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
22427	reqHeaders := make(http.Header)
22428	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22429	for k, v := range c.header_ {
22430		reqHeaders[k] = v
22431	}
22432	reqHeaders.Set("User-Agent", c.s.userAgent())
22433	var body io.Reader = nil
22434	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1detectintentrequest)
22435	if err != nil {
22436		return nil, err
22437	}
22438	reqHeaders.Set("Content-Type", "application/json")
22439	c.urlParams_.Set("alt", alt)
22440	c.urlParams_.Set("prettyPrint", "false")
22441	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:detectIntent")
22442	urls += "?" + c.urlParams_.Encode()
22443	req, err := http.NewRequest("POST", urls, body)
22444	if err != nil {
22445		return nil, err
22446	}
22447	req.Header = reqHeaders
22448	googleapi.Expand(req.URL, map[string]string{
22449		"session": c.sessionid,
22450	})
22451	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22452}
22453
22454// Do executes the "dialogflow.projects.locations.agents.environments.sessions.detectIntent" call.
22455// Exactly one of *GoogleCloudDialogflowCxV3beta1DetectIntentResponse or
22456// error will be non-nil. Any non-2xx status code is an error. Response
22457// headers are in either
22458// *GoogleCloudDialogflowCxV3beta1DetectIntentResponse.ServerResponse.Hea
22459// der or (if a response was returned at all) in
22460// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22461// whether the returned error was because http.StatusNotModified was
22462// returned.
22463func (c *ProjectsLocationsAgentsEnvironmentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1DetectIntentResponse, error) {
22464	gensupport.SetOptions(c.urlParams_, opts...)
22465	res, err := c.doRequest("json")
22466	if res != nil && res.StatusCode == http.StatusNotModified {
22467		if res.Body != nil {
22468			res.Body.Close()
22469		}
22470		return nil, &googleapi.Error{
22471			Code:   res.StatusCode,
22472			Header: res.Header,
22473		}
22474	}
22475	if err != nil {
22476		return nil, err
22477	}
22478	defer googleapi.CloseBody(res)
22479	if err := googleapi.CheckResponse(res); err != nil {
22480		return nil, err
22481	}
22482	ret := &GoogleCloudDialogflowCxV3beta1DetectIntentResponse{
22483		ServerResponse: googleapi.ServerResponse{
22484			Header:         res.Header,
22485			HTTPStatusCode: res.StatusCode,
22486		},
22487	}
22488	target := &ret
22489	if err := gensupport.DecodeResponse(target, res); err != nil {
22490		return nil, err
22491	}
22492	return ret, nil
22493	// {
22494	//   "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).",
22495	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:detectIntent",
22496	//   "httpMethod": "POST",
22497	//   "id": "dialogflow.projects.locations.agents.environments.sessions.detectIntent",
22498	//   "parameterOrder": [
22499	//     "session"
22500	//   ],
22501	//   "parameters": {
22502	//     "session": {
22503	//       "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).",
22504	//       "location": "path",
22505	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22506	//       "required": true,
22507	//       "type": "string"
22508	//     }
22509	//   },
22510	//   "path": "v3beta1/{+session}:detectIntent",
22511	//   "request": {
22512	//     "$ref": "GoogleCloudDialogflowCxV3beta1DetectIntentRequest"
22513	//   },
22514	//   "response": {
22515	//     "$ref": "GoogleCloudDialogflowCxV3beta1DetectIntentResponse"
22516	//   },
22517	//   "scopes": [
22518	//     "https://www.googleapis.com/auth/cloud-platform",
22519	//     "https://www.googleapis.com/auth/dialogflow"
22520	//   ]
22521	// }
22522
22523}
22524
22525// method id "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent":
22526
22527type ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall struct {
22528	s                                                  *Service
22529	sessionid                                          string
22530	googleclouddialogflowcxv3beta1fulfillintentrequest *GoogleCloudDialogflowCxV3beta1FulfillIntentRequest
22531	urlParams_                                         gensupport.URLParams
22532	ctx_                                               context.Context
22533	header_                                            http.Header
22534}
22535
22536// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
22537// Must be called after MatchIntent, with input from
22538// MatchIntentResponse. Otherwise, the behavior is undefined.
22539//
22540// - session: The name of the session this query is sent to. Format:
22541//   `projects//locations//agents//sessions/` or
22542//   `projects//locations//agents//environments//sessions/`. If
22543//   `Environment ID` is not specified, we assume default 'draft'
22544//   environment. It's up to the API caller to choose an appropriate
22545//   `Session ID`. It can be a random number or some type of session
22546//   identifiers (preferably hashed). The length of the `Session ID`
22547//   must not exceed 36 characters. For more information, see the
22548//   sessions guide
22549//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22550func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3beta1fulfillintentrequest *GoogleCloudDialogflowCxV3beta1FulfillIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
22551	c := &ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22552	c.sessionid = sessionid
22553	c.googleclouddialogflowcxv3beta1fulfillintentrequest = googleclouddialogflowcxv3beta1fulfillintentrequest
22554	return c
22555}
22556
22557// Fields allows partial responses to be retrieved. See
22558// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22559// for more information.
22560func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
22561	c.urlParams_.Set("fields", googleapi.CombineFields(s))
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 *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall {
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 *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Header() http.Header {
22576	if c.header_ == nil {
22577		c.header_ = make(http.Header)
22578	}
22579	return c.header_
22580}
22581
22582func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
22583	reqHeaders := make(http.Header)
22584	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22585	for k, v := range c.header_ {
22586		reqHeaders[k] = v
22587	}
22588	reqHeaders.Set("User-Agent", c.s.userAgent())
22589	var body io.Reader = nil
22590	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1fulfillintentrequest)
22591	if err != nil {
22592		return nil, err
22593	}
22594	reqHeaders.Set("Content-Type", "application/json")
22595	c.urlParams_.Set("alt", alt)
22596	c.urlParams_.Set("prettyPrint", "false")
22597	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:fulfillIntent")
22598	urls += "?" + c.urlParams_.Encode()
22599	req, err := http.NewRequest("POST", urls, body)
22600	if err != nil {
22601		return nil, err
22602	}
22603	req.Header = reqHeaders
22604	googleapi.Expand(req.URL, map[string]string{
22605		"session": c.sessionid,
22606	})
22607	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22608}
22609
22610// Do executes the "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent" call.
22611// Exactly one of *GoogleCloudDialogflowCxV3beta1FulfillIntentResponse
22612// or error will be non-nil. Any non-2xx status code is an error.
22613// Response headers are in either
22614// *GoogleCloudDialogflowCxV3beta1FulfillIntentResponse.ServerResponse.He
22615// ader or (if a response was returned at all) in
22616// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22617// whether the returned error was because http.StatusNotModified was
22618// returned.
22619func (c *ProjectsLocationsAgentsEnvironmentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1FulfillIntentResponse, error) {
22620	gensupport.SetOptions(c.urlParams_, opts...)
22621	res, err := c.doRequest("json")
22622	if res != nil && res.StatusCode == http.StatusNotModified {
22623		if res.Body != nil {
22624			res.Body.Close()
22625		}
22626		return nil, &googleapi.Error{
22627			Code:   res.StatusCode,
22628			Header: res.Header,
22629		}
22630	}
22631	if err != nil {
22632		return nil, err
22633	}
22634	defer googleapi.CloseBody(res)
22635	if err := googleapi.CheckResponse(res); err != nil {
22636		return nil, err
22637	}
22638	ret := &GoogleCloudDialogflowCxV3beta1FulfillIntentResponse{
22639		ServerResponse: googleapi.ServerResponse{
22640			Header:         res.Header,
22641			HTTPStatusCode: res.StatusCode,
22642		},
22643	}
22644	target := &ret
22645	if err := gensupport.DecodeResponse(target, res); err != nil {
22646		return nil, err
22647	}
22648	return ret, nil
22649	// {
22650	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
22651	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:fulfillIntent",
22652	//   "httpMethod": "POST",
22653	//   "id": "dialogflow.projects.locations.agents.environments.sessions.fulfillIntent",
22654	//   "parameterOrder": [
22655	//     "session"
22656	//   ],
22657	//   "parameters": {
22658	//     "session": {
22659	//       "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).",
22660	//       "location": "path",
22661	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22662	//       "required": true,
22663	//       "type": "string"
22664	//     }
22665	//   },
22666	//   "path": "v3beta1/{+session}:fulfillIntent",
22667	//   "request": {
22668	//     "$ref": "GoogleCloudDialogflowCxV3beta1FulfillIntentRequest"
22669	//   },
22670	//   "response": {
22671	//     "$ref": "GoogleCloudDialogflowCxV3beta1FulfillIntentResponse"
22672	//   },
22673	//   "scopes": [
22674	//     "https://www.googleapis.com/auth/cloud-platform",
22675	//     "https://www.googleapis.com/auth/dialogflow"
22676	//   ]
22677	// }
22678
22679}
22680
22681// method id "dialogflow.projects.locations.agents.environments.sessions.matchIntent":
22682
22683type ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall struct {
22684	s                                                *Service
22685	sessionid                                        string
22686	googleclouddialogflowcxv3beta1matchintentrequest *GoogleCloudDialogflowCxV3beta1MatchIntentRequest
22687	urlParams_                                       gensupport.URLParams
22688	ctx_                                             context.Context
22689	header_                                          http.Header
22690}
22691
22692// MatchIntent: Returns preliminary intent match results, doesn't change
22693// the session status.
22694//
22695// - session: The name of the session this query is sent to. Format:
22696//   `projects//locations//agents//sessions/` or
22697//   `projects//locations//agents//environments//sessions/`. If
22698//   `Environment ID` is not specified, we assume default 'draft'
22699//   environment. It's up to the API caller to choose an appropriate
22700//   `Session ID`. It can be a random number or some type of session
22701//   identifiers (preferably hashed). The length of the `Session ID`
22702//   must not exceed 36 characters. For more information, see the
22703//   sessions guide
22704//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
22705func (r *ProjectsLocationsAgentsEnvironmentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3beta1matchintentrequest *GoogleCloudDialogflowCxV3beta1MatchIntentRequest) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22706	c := &ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22707	c.sessionid = sessionid
22708	c.googleclouddialogflowcxv3beta1matchintentrequest = googleclouddialogflowcxv3beta1matchintentrequest
22709	return c
22710}
22711
22712// Fields allows partial responses to be retrieved. See
22713// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22714// for more information.
22715func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22716	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22717	return c
22718}
22719
22720// Context sets the context to be used in this call's Do method. Any
22721// pending HTTP request will be aborted if the provided context is
22722// canceled.
22723func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall {
22724	c.ctx_ = ctx
22725	return c
22726}
22727
22728// Header returns an http.Header that can be modified by the caller to
22729// add HTTP headers to the request.
22730func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Header() http.Header {
22731	if c.header_ == nil {
22732		c.header_ = make(http.Header)
22733	}
22734	return c.header_
22735}
22736
22737func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
22738	reqHeaders := make(http.Header)
22739	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22740	for k, v := range c.header_ {
22741		reqHeaders[k] = v
22742	}
22743	reqHeaders.Set("User-Agent", c.s.userAgent())
22744	var body io.Reader = nil
22745	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1matchintentrequest)
22746	if err != nil {
22747		return nil, err
22748	}
22749	reqHeaders.Set("Content-Type", "application/json")
22750	c.urlParams_.Set("alt", alt)
22751	c.urlParams_.Set("prettyPrint", "false")
22752	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:matchIntent")
22753	urls += "?" + c.urlParams_.Encode()
22754	req, err := http.NewRequest("POST", urls, body)
22755	if err != nil {
22756		return nil, err
22757	}
22758	req.Header = reqHeaders
22759	googleapi.Expand(req.URL, map[string]string{
22760		"session": c.sessionid,
22761	})
22762	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22763}
22764
22765// Do executes the "dialogflow.projects.locations.agents.environments.sessions.matchIntent" call.
22766// Exactly one of *GoogleCloudDialogflowCxV3beta1MatchIntentResponse or
22767// error will be non-nil. Any non-2xx status code is an error. Response
22768// headers are in either
22769// *GoogleCloudDialogflowCxV3beta1MatchIntentResponse.ServerResponse.Head
22770// er or (if a response was returned at all) in
22771// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22772// whether the returned error was because http.StatusNotModified was
22773// returned.
22774func (c *ProjectsLocationsAgentsEnvironmentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1MatchIntentResponse, error) {
22775	gensupport.SetOptions(c.urlParams_, opts...)
22776	res, err := c.doRequest("json")
22777	if res != nil && res.StatusCode == http.StatusNotModified {
22778		if res.Body != nil {
22779			res.Body.Close()
22780		}
22781		return nil, &googleapi.Error{
22782			Code:   res.StatusCode,
22783			Header: res.Header,
22784		}
22785	}
22786	if err != nil {
22787		return nil, err
22788	}
22789	defer googleapi.CloseBody(res)
22790	if err := googleapi.CheckResponse(res); err != nil {
22791		return nil, err
22792	}
22793	ret := &GoogleCloudDialogflowCxV3beta1MatchIntentResponse{
22794		ServerResponse: googleapi.ServerResponse{
22795			Header:         res.Header,
22796			HTTPStatusCode: res.StatusCode,
22797		},
22798	}
22799	target := &ret
22800	if err := gensupport.DecodeResponse(target, res); err != nil {
22801		return nil, err
22802	}
22803	return ret, nil
22804	// {
22805	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
22806	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}:matchIntent",
22807	//   "httpMethod": "POST",
22808	//   "id": "dialogflow.projects.locations.agents.environments.sessions.matchIntent",
22809	//   "parameterOrder": [
22810	//     "session"
22811	//   ],
22812	//   "parameters": {
22813	//     "session": {
22814	//       "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).",
22815	//       "location": "path",
22816	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22817	//       "required": true,
22818	//       "type": "string"
22819	//     }
22820	//   },
22821	//   "path": "v3beta1/{+session}:matchIntent",
22822	//   "request": {
22823	//     "$ref": "GoogleCloudDialogflowCxV3beta1MatchIntentRequest"
22824	//   },
22825	//   "response": {
22826	//     "$ref": "GoogleCloudDialogflowCxV3beta1MatchIntentResponse"
22827	//   },
22828	//   "scopes": [
22829	//     "https://www.googleapis.com/auth/cloud-platform",
22830	//     "https://www.googleapis.com/auth/dialogflow"
22831	//   ]
22832	// }
22833
22834}
22835
22836// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create":
22837
22838type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall struct {
22839	s                                               *Service
22840	parent                                          string
22841	googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType
22842	urlParams_                                      gensupport.URLParams
22843	ctx_                                            context.Context
22844	header_                                         http.Header
22845}
22846
22847// Create: Creates a session entity type.
22848//
22849// - parent: The session to create a session entity type for. Format:
22850//   `projects//locations//agents//sessions/` or
22851//   `projects//locations//agents//environments//sessions/`. If
22852//   `Environment ID` is not specified, we assume default 'draft'
22853//   environment.
22854func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22855	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
22856	c.parent = parent
22857	c.googleclouddialogflowcxv3beta1sessionentitytype = googleclouddialogflowcxv3beta1sessionentitytype
22858	return c
22859}
22860
22861// Fields allows partial responses to be retrieved. See
22862// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
22863// for more information.
22864func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22865	c.urlParams_.Set("fields", googleapi.CombineFields(s))
22866	return c
22867}
22868
22869// Context sets the context to be used in this call's Do method. Any
22870// pending HTTP request will be aborted if the provided context is
22871// canceled.
22872func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall {
22873	c.ctx_ = ctx
22874	return c
22875}
22876
22877// Header returns an http.Header that can be modified by the caller to
22878// add HTTP headers to the request.
22879func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Header() http.Header {
22880	if c.header_ == nil {
22881		c.header_ = make(http.Header)
22882	}
22883	return c.header_
22884}
22885
22886func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
22887	reqHeaders := make(http.Header)
22888	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
22889	for k, v := range c.header_ {
22890		reqHeaders[k] = v
22891	}
22892	reqHeaders.Set("User-Agent", c.s.userAgent())
22893	var body io.Reader = nil
22894	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1sessionentitytype)
22895	if err != nil {
22896		return nil, err
22897	}
22898	reqHeaders.Set("Content-Type", "application/json")
22899	c.urlParams_.Set("alt", alt)
22900	c.urlParams_.Set("prettyPrint", "false")
22901	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
22902	urls += "?" + c.urlParams_.Encode()
22903	req, err := http.NewRequest("POST", urls, body)
22904	if err != nil {
22905		return nil, err
22906	}
22907	req.Header = reqHeaders
22908	googleapi.Expand(req.URL, map[string]string{
22909		"parent": c.parent,
22910	})
22911	return gensupport.SendRequest(c.ctx_, c.s.client, req)
22912}
22913
22914// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create" call.
22915// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
22916// error will be non-nil. Any non-2xx status code is an error. Response
22917// headers are in either
22918// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
22919//  or (if a response was returned at all) in
22920// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
22921// whether the returned error was because http.StatusNotModified was
22922// returned.
22923func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
22924	gensupport.SetOptions(c.urlParams_, opts...)
22925	res, err := c.doRequest("json")
22926	if res != nil && res.StatusCode == http.StatusNotModified {
22927		if res.Body != nil {
22928			res.Body.Close()
22929		}
22930		return nil, &googleapi.Error{
22931			Code:   res.StatusCode,
22932			Header: res.Header,
22933		}
22934	}
22935	if err != nil {
22936		return nil, err
22937	}
22938	defer googleapi.CloseBody(res)
22939	if err := googleapi.CheckResponse(res); err != nil {
22940		return nil, err
22941	}
22942	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
22943		ServerResponse: googleapi.ServerResponse{
22944			Header:         res.Header,
22945			HTTPStatusCode: res.StatusCode,
22946		},
22947	}
22948	target := &ret
22949	if err := gensupport.DecodeResponse(target, res); err != nil {
22950		return nil, err
22951	}
22952	return ret, nil
22953	// {
22954	//   "description": "Creates a session entity type.",
22955	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
22956	//   "httpMethod": "POST",
22957	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.create",
22958	//   "parameterOrder": [
22959	//     "parent"
22960	//   ],
22961	//   "parameters": {
22962	//     "parent": {
22963	//       "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.",
22964	//       "location": "path",
22965	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
22966	//       "required": true,
22967	//       "type": "string"
22968	//     }
22969	//   },
22970	//   "path": "v3beta1/{+parent}/entityTypes",
22971	//   "request": {
22972	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
22973	//   },
22974	//   "response": {
22975	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
22976	//   },
22977	//   "scopes": [
22978	//     "https://www.googleapis.com/auth/cloud-platform",
22979	//     "https://www.googleapis.com/auth/dialogflow"
22980	//   ]
22981	// }
22982
22983}
22984
22985// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete":
22986
22987type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall struct {
22988	s          *Service
22989	name       string
22990	urlParams_ gensupport.URLParams
22991	ctx_       context.Context
22992	header_    http.Header
22993}
22994
22995// Delete: Deletes the specified session entity type.
22996//
22997// - name: The name of the session entity type to delete. Format:
22998//   `projects//locations//agents//sessions//entityTypes/` or
22999//   `projects//locations//agents//environments//sessions//entityTypes/`.
23000//    If `Environment ID` is not specified, we assume default 'draft'
23001//   environment.
23002func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
23003	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23004	c.name = name
23005	return c
23006}
23007
23008// Fields allows partial responses to be retrieved. See
23009// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23010// for more information.
23011func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
23012	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23013	return c
23014}
23015
23016// Context sets the context to be used in this call's Do method. Any
23017// pending HTTP request will be aborted if the provided context is
23018// canceled.
23019func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall {
23020	c.ctx_ = ctx
23021	return c
23022}
23023
23024// Header returns an http.Header that can be modified by the caller to
23025// add HTTP headers to the request.
23026func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Header() http.Header {
23027	if c.header_ == nil {
23028		c.header_ = make(http.Header)
23029	}
23030	return c.header_
23031}
23032
23033func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
23034	reqHeaders := make(http.Header)
23035	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23036	for k, v := range c.header_ {
23037		reqHeaders[k] = v
23038	}
23039	reqHeaders.Set("User-Agent", c.s.userAgent())
23040	var body io.Reader = nil
23041	c.urlParams_.Set("alt", alt)
23042	c.urlParams_.Set("prettyPrint", "false")
23043	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
23044	urls += "?" + c.urlParams_.Encode()
23045	req, err := http.NewRequest("DELETE", urls, body)
23046	if err != nil {
23047		return nil, err
23048	}
23049	req.Header = reqHeaders
23050	googleapi.Expand(req.URL, map[string]string{
23051		"name": c.name,
23052	})
23053	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23054}
23055
23056// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete" call.
23057// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
23058// non-2xx status code is an error. Response headers are in either
23059// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
23060// returned at all) in error.(*googleapi.Error).Header. Use
23061// googleapi.IsNotModified to check whether the returned error was
23062// because http.StatusNotModified was returned.
23063func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
23064	gensupport.SetOptions(c.urlParams_, opts...)
23065	res, err := c.doRequest("json")
23066	if res != nil && res.StatusCode == http.StatusNotModified {
23067		if res.Body != nil {
23068			res.Body.Close()
23069		}
23070		return nil, &googleapi.Error{
23071			Code:   res.StatusCode,
23072			Header: res.Header,
23073		}
23074	}
23075	if err != nil {
23076		return nil, err
23077	}
23078	defer googleapi.CloseBody(res)
23079	if err := googleapi.CheckResponse(res); err != nil {
23080		return nil, err
23081	}
23082	ret := &GoogleProtobufEmpty{
23083		ServerResponse: googleapi.ServerResponse{
23084			Header:         res.Header,
23085			HTTPStatusCode: res.StatusCode,
23086		},
23087	}
23088	target := &ret
23089	if err := gensupport.DecodeResponse(target, res); err != nil {
23090		return nil, err
23091	}
23092	return ret, nil
23093	// {
23094	//   "description": "Deletes the specified session entity type.",
23095	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23096	//   "httpMethod": "DELETE",
23097	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.delete",
23098	//   "parameterOrder": [
23099	//     "name"
23100	//   ],
23101	//   "parameters": {
23102	//     "name": {
23103	//       "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.",
23104	//       "location": "path",
23105	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23106	//       "required": true,
23107	//       "type": "string"
23108	//     }
23109	//   },
23110	//   "path": "v3beta1/{+name}",
23111	//   "response": {
23112	//     "$ref": "GoogleProtobufEmpty"
23113	//   },
23114	//   "scopes": [
23115	//     "https://www.googleapis.com/auth/cloud-platform",
23116	//     "https://www.googleapis.com/auth/dialogflow"
23117	//   ]
23118	// }
23119
23120}
23121
23122// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get":
23123
23124type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall struct {
23125	s            *Service
23126	name         string
23127	urlParams_   gensupport.URLParams
23128	ifNoneMatch_ string
23129	ctx_         context.Context
23130	header_      http.Header
23131}
23132
23133// Get: Retrieves the specified session entity type.
23134//
23135// - name: The name of the session entity type. Format:
23136//   `projects//locations//agents//sessions//entityTypes/` or
23137//   `projects//locations//agents//environments//sessions//entityTypes/`.
23138//    If `Environment ID` is not specified, we assume default 'draft'
23139//   environment.
23140func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23141	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23142	c.name = name
23143	return c
23144}
23145
23146// Fields allows partial responses to be retrieved. See
23147// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23148// for more information.
23149func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23150	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23151	return c
23152}
23153
23154// IfNoneMatch sets the optional parameter which makes the operation
23155// fail if the object's ETag matches the given value. This is useful for
23156// getting updates only after the object has changed since the last
23157// request. Use googleapi.IsNotModified to check whether the response
23158// error from Do is the result of In-None-Match.
23159func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23160	c.ifNoneMatch_ = entityTag
23161	return c
23162}
23163
23164// Context sets the context to be used in this call's Do method. Any
23165// pending HTTP request will be aborted if the provided context is
23166// canceled.
23167func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall {
23168	c.ctx_ = ctx
23169	return c
23170}
23171
23172// Header returns an http.Header that can be modified by the caller to
23173// add HTTP headers to the request.
23174func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Header() http.Header {
23175	if c.header_ == nil {
23176		c.header_ = make(http.Header)
23177	}
23178	return c.header_
23179}
23180
23181func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
23182	reqHeaders := make(http.Header)
23183	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23184	for k, v := range c.header_ {
23185		reqHeaders[k] = v
23186	}
23187	reqHeaders.Set("User-Agent", c.s.userAgent())
23188	if c.ifNoneMatch_ != "" {
23189		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23190	}
23191	var body io.Reader = nil
23192	c.urlParams_.Set("alt", alt)
23193	c.urlParams_.Set("prettyPrint", "false")
23194	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
23195	urls += "?" + c.urlParams_.Encode()
23196	req, err := http.NewRequest("GET", urls, body)
23197	if err != nil {
23198		return nil, err
23199	}
23200	req.Header = reqHeaders
23201	googleapi.Expand(req.URL, map[string]string{
23202		"name": c.name,
23203	})
23204	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23205}
23206
23207// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get" call.
23208// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
23209// error will be non-nil. Any non-2xx status code is an error. Response
23210// headers are in either
23211// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
23212//  or (if a response was returned at all) in
23213// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23214// whether the returned error was because http.StatusNotModified was
23215// returned.
23216func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
23217	gensupport.SetOptions(c.urlParams_, opts...)
23218	res, err := c.doRequest("json")
23219	if res != nil && res.StatusCode == http.StatusNotModified {
23220		if res.Body != nil {
23221			res.Body.Close()
23222		}
23223		return nil, &googleapi.Error{
23224			Code:   res.StatusCode,
23225			Header: res.Header,
23226		}
23227	}
23228	if err != nil {
23229		return nil, err
23230	}
23231	defer googleapi.CloseBody(res)
23232	if err := googleapi.CheckResponse(res); err != nil {
23233		return nil, err
23234	}
23235	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
23236		ServerResponse: googleapi.ServerResponse{
23237			Header:         res.Header,
23238			HTTPStatusCode: res.StatusCode,
23239		},
23240	}
23241	target := &ret
23242	if err := gensupport.DecodeResponse(target, res); err != nil {
23243		return nil, err
23244	}
23245	return ret, nil
23246	// {
23247	//   "description": "Retrieves the specified session entity type.",
23248	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23249	//   "httpMethod": "GET",
23250	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.get",
23251	//   "parameterOrder": [
23252	//     "name"
23253	//   ],
23254	//   "parameters": {
23255	//     "name": {
23256	//       "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.",
23257	//       "location": "path",
23258	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23259	//       "required": true,
23260	//       "type": "string"
23261	//     }
23262	//   },
23263	//   "path": "v3beta1/{+name}",
23264	//   "response": {
23265	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
23266	//   },
23267	//   "scopes": [
23268	//     "https://www.googleapis.com/auth/cloud-platform",
23269	//     "https://www.googleapis.com/auth/dialogflow"
23270	//   ]
23271	// }
23272
23273}
23274
23275// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list":
23276
23277type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall struct {
23278	s            *Service
23279	parent       string
23280	urlParams_   gensupport.URLParams
23281	ifNoneMatch_ string
23282	ctx_         context.Context
23283	header_      http.Header
23284}
23285
23286// List: Returns the list of all session entity types in the specified
23287// session.
23288//
23289// - parent: The session to list all session entity types from. Format:
23290//   `projects//locations//agents//sessions/` or
23291//   `projects//locations//agents//environments//sessions/`. If
23292//   `Environment ID` is not specified, we assume default 'draft'
23293//   environment.
23294func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23295	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23296	c.parent = parent
23297	return c
23298}
23299
23300// PageSize sets the optional parameter "pageSize": The maximum number
23301// of items to return in a single page. By default 100 and at most 1000.
23302func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23303	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
23304	return c
23305}
23306
23307// PageToken sets the optional parameter "pageToken": The
23308// next_page_token value returned from a previous list request.
23309func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23310	c.urlParams_.Set("pageToken", pageToken)
23311	return c
23312}
23313
23314// Fields allows partial responses to be retrieved. See
23315// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23316// for more information.
23317func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23318	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23319	return c
23320}
23321
23322// IfNoneMatch sets the optional parameter which makes the operation
23323// fail if the object's ETag matches the given value. This is useful for
23324// getting updates only after the object has changed since the last
23325// request. Use googleapi.IsNotModified to check whether the response
23326// error from Do is the result of In-None-Match.
23327func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23328	c.ifNoneMatch_ = entityTag
23329	return c
23330}
23331
23332// Context sets the context to be used in this call's Do method. Any
23333// pending HTTP request will be aborted if the provided context is
23334// canceled.
23335func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall {
23336	c.ctx_ = ctx
23337	return c
23338}
23339
23340// Header returns an http.Header that can be modified by the caller to
23341// add HTTP headers to the request.
23342func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Header() http.Header {
23343	if c.header_ == nil {
23344		c.header_ = make(http.Header)
23345	}
23346	return c.header_
23347}
23348
23349func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
23350	reqHeaders := make(http.Header)
23351	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23352	for k, v := range c.header_ {
23353		reqHeaders[k] = v
23354	}
23355	reqHeaders.Set("User-Agent", c.s.userAgent())
23356	if c.ifNoneMatch_ != "" {
23357		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
23358	}
23359	var body io.Reader = nil
23360	c.urlParams_.Set("alt", alt)
23361	c.urlParams_.Set("prettyPrint", "false")
23362	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
23363	urls += "?" + c.urlParams_.Encode()
23364	req, err := http.NewRequest("GET", urls, body)
23365	if err != nil {
23366		return nil, err
23367	}
23368	req.Header = reqHeaders
23369	googleapi.Expand(req.URL, map[string]string{
23370		"parent": c.parent,
23371	})
23372	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23373}
23374
23375// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list" call.
23376// Exactly one of
23377// *GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse or
23378// error will be non-nil. Any non-2xx status code is an error. Response
23379// headers are in either
23380// *GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse.ServerRe
23381// sponse.Header or (if a response was returned at all) in
23382// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23383// whether the returned error was because http.StatusNotModified was
23384// returned.
23385func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse, error) {
23386	gensupport.SetOptions(c.urlParams_, opts...)
23387	res, err := c.doRequest("json")
23388	if res != nil && res.StatusCode == http.StatusNotModified {
23389		if res.Body != nil {
23390			res.Body.Close()
23391		}
23392		return nil, &googleapi.Error{
23393			Code:   res.StatusCode,
23394			Header: res.Header,
23395		}
23396	}
23397	if err != nil {
23398		return nil, err
23399	}
23400	defer googleapi.CloseBody(res)
23401	if err := googleapi.CheckResponse(res); err != nil {
23402		return nil, err
23403	}
23404	ret := &GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse{
23405		ServerResponse: googleapi.ServerResponse{
23406			Header:         res.Header,
23407			HTTPStatusCode: res.StatusCode,
23408		},
23409	}
23410	target := &ret
23411	if err := gensupport.DecodeResponse(target, res); err != nil {
23412		return nil, err
23413	}
23414	return ret, nil
23415	// {
23416	//   "description": "Returns the list of all session entity types in the specified session.",
23417	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes",
23418	//   "httpMethod": "GET",
23419	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.list",
23420	//   "parameterOrder": [
23421	//     "parent"
23422	//   ],
23423	//   "parameters": {
23424	//     "pageSize": {
23425	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
23426	//       "format": "int32",
23427	//       "location": "query",
23428	//       "type": "integer"
23429	//     },
23430	//     "pageToken": {
23431	//       "description": "The next_page_token value returned from a previous list request.",
23432	//       "location": "query",
23433	//       "type": "string"
23434	//     },
23435	//     "parent": {
23436	//       "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.",
23437	//       "location": "path",
23438	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+$",
23439	//       "required": true,
23440	//       "type": "string"
23441	//     }
23442	//   },
23443	//   "path": "v3beta1/{+parent}/entityTypes",
23444	//   "response": {
23445	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse"
23446	//   },
23447	//   "scopes": [
23448	//     "https://www.googleapis.com/auth/cloud-platform",
23449	//     "https://www.googleapis.com/auth/dialogflow"
23450	//   ]
23451	// }
23452
23453}
23454
23455// Pages invokes f for each page of results.
23456// A non-nil error returned from f will halt the iteration.
23457// The provided context supersedes any context provided to the Context method.
23458func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse) error) error {
23459	c.ctx_ = ctx
23460	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
23461	for {
23462		x, err := c.Do()
23463		if err != nil {
23464			return err
23465		}
23466		if err := f(x); err != nil {
23467			return err
23468		}
23469		if x.NextPageToken == "" {
23470			return nil
23471		}
23472		c.PageToken(x.NextPageToken)
23473	}
23474}
23475
23476// method id "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch":
23477
23478type ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall struct {
23479	s                                               *Service
23480	nameid                                          string
23481	googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType
23482	urlParams_                                      gensupport.URLParams
23483	ctx_                                            context.Context
23484	header_                                         http.Header
23485}
23486
23487// Patch: Updates the specified session entity type.
23488//
23489// - name: The unique identifier of the session entity type. Format:
23490//   `projects//locations//agents//sessions//entityTypes/` or
23491//   `projects//locations//agents//environments//sessions//entityTypes/`.
23492//    If `Environment ID` is not specified, we assume default 'draft'
23493//   environment.
23494func (r *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23495	c := &ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23496	c.nameid = nameid
23497	c.googleclouddialogflowcxv3beta1sessionentitytype = googleclouddialogflowcxv3beta1sessionentitytype
23498	return c
23499}
23500
23501// UpdateMask sets the optional parameter "updateMask": The mask to
23502// control which fields get updated.
23503func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23504	c.urlParams_.Set("updateMask", updateMask)
23505	return c
23506}
23507
23508// Fields allows partial responses to be retrieved. See
23509// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23510// for more information.
23511func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23512	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23513	return c
23514}
23515
23516// Context sets the context to be used in this call's Do method. Any
23517// pending HTTP request will be aborted if the provided context is
23518// canceled.
23519func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall {
23520	c.ctx_ = ctx
23521	return c
23522}
23523
23524// Header returns an http.Header that can be modified by the caller to
23525// add HTTP headers to the request.
23526func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Header() http.Header {
23527	if c.header_ == nil {
23528		c.header_ = make(http.Header)
23529	}
23530	return c.header_
23531}
23532
23533func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
23534	reqHeaders := make(http.Header)
23535	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23536	for k, v := range c.header_ {
23537		reqHeaders[k] = v
23538	}
23539	reqHeaders.Set("User-Agent", c.s.userAgent())
23540	var body io.Reader = nil
23541	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1sessionentitytype)
23542	if err != nil {
23543		return nil, err
23544	}
23545	reqHeaders.Set("Content-Type", "application/json")
23546	c.urlParams_.Set("alt", alt)
23547	c.urlParams_.Set("prettyPrint", "false")
23548	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
23549	urls += "?" + c.urlParams_.Encode()
23550	req, err := http.NewRequest("PATCH", urls, body)
23551	if err != nil {
23552		return nil, err
23553	}
23554	req.Header = reqHeaders
23555	googleapi.Expand(req.URL, map[string]string{
23556		"name": c.nameid,
23557	})
23558	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23559}
23560
23561// Do executes the "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch" call.
23562// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
23563// error will be non-nil. Any non-2xx status code is an error. Response
23564// headers are in either
23565// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
23566//  or (if a response was returned at all) in
23567// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23568// whether the returned error was because http.StatusNotModified was
23569// returned.
23570func (c *ProjectsLocationsAgentsEnvironmentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
23571	gensupport.SetOptions(c.urlParams_, opts...)
23572	res, err := c.doRequest("json")
23573	if res != nil && res.StatusCode == http.StatusNotModified {
23574		if res.Body != nil {
23575			res.Body.Close()
23576		}
23577		return nil, &googleapi.Error{
23578			Code:   res.StatusCode,
23579			Header: res.Header,
23580		}
23581	}
23582	if err != nil {
23583		return nil, err
23584	}
23585	defer googleapi.CloseBody(res)
23586	if err := googleapi.CheckResponse(res); err != nil {
23587		return nil, err
23588	}
23589	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
23590		ServerResponse: googleapi.ServerResponse{
23591			Header:         res.Header,
23592			HTTPStatusCode: res.StatusCode,
23593		},
23594	}
23595	target := &ret
23596	if err := gensupport.DecodeResponse(target, res); err != nil {
23597		return nil, err
23598	}
23599	return ret, nil
23600	// {
23601	//   "description": "Updates the specified session entity type.",
23602	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/environments/{environmentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
23603	//   "httpMethod": "PATCH",
23604	//   "id": "dialogflow.projects.locations.agents.environments.sessions.entityTypes.patch",
23605	//   "parameterOrder": [
23606	//     "name"
23607	//   ],
23608	//   "parameters": {
23609	//     "name": {
23610	//       "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.",
23611	//       "location": "path",
23612	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/environments/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
23613	//       "required": true,
23614	//       "type": "string"
23615	//     },
23616	//     "updateMask": {
23617	//       "description": "The mask to control which fields get updated.",
23618	//       "format": "google-fieldmask",
23619	//       "location": "query",
23620	//       "type": "string"
23621	//     }
23622	//   },
23623	//   "path": "v3beta1/{+name}",
23624	//   "request": {
23625	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
23626	//   },
23627	//   "response": {
23628	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
23629	//   },
23630	//   "scopes": [
23631	//     "https://www.googleapis.com/auth/cloud-platform",
23632	//     "https://www.googleapis.com/auth/dialogflow"
23633	//   ]
23634	// }
23635
23636}
23637
23638// method id "dialogflow.projects.locations.agents.flows.create":
23639
23640type ProjectsLocationsAgentsFlowsCreateCall struct {
23641	s                                  *Service
23642	parent                             string
23643	googleclouddialogflowcxv3beta1flow *GoogleCloudDialogflowCxV3beta1Flow
23644	urlParams_                         gensupport.URLParams
23645	ctx_                               context.Context
23646	header_                            http.Header
23647}
23648
23649// Create: Creates a flow in the specified agent. Note: You should
23650// always train a flow prior to sending it queries. See the training
23651// documentation
23652// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
23653//
23654// - parent: The agent to create a flow for. Format:
23655//   `projects//locations//agents/`.
23656func (r *ProjectsLocationsAgentsFlowsService) Create(parent string, googleclouddialogflowcxv3beta1flow *GoogleCloudDialogflowCxV3beta1Flow) *ProjectsLocationsAgentsFlowsCreateCall {
23657	c := &ProjectsLocationsAgentsFlowsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23658	c.parent = parent
23659	c.googleclouddialogflowcxv3beta1flow = googleclouddialogflowcxv3beta1flow
23660	return c
23661}
23662
23663// LanguageCode sets the optional parameter "languageCode": The language
23664// of the following fields in `flow`: *
23665// `Flow.event_handlers.trigger_fulfillment.messages` *
23666// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
23667// `Flow.transition_routes.trigger_fulfillment.messages` *
23668// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
23669// specified, the agent's default language is used. Many languages
23670// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
23671// supported. Note: languages must be enabled in the agent before they
23672// can be used.
23673func (c *ProjectsLocationsAgentsFlowsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsCreateCall {
23674	c.urlParams_.Set("languageCode", languageCode)
23675	return c
23676}
23677
23678// Fields allows partial responses to be retrieved. See
23679// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23680// for more information.
23681func (c *ProjectsLocationsAgentsFlowsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsCreateCall {
23682	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23683	return c
23684}
23685
23686// Context sets the context to be used in this call's Do method. Any
23687// pending HTTP request will be aborted if the provided context is
23688// canceled.
23689func (c *ProjectsLocationsAgentsFlowsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsCreateCall {
23690	c.ctx_ = ctx
23691	return c
23692}
23693
23694// Header returns an http.Header that can be modified by the caller to
23695// add HTTP headers to the request.
23696func (c *ProjectsLocationsAgentsFlowsCreateCall) Header() http.Header {
23697	if c.header_ == nil {
23698		c.header_ = make(http.Header)
23699	}
23700	return c.header_
23701}
23702
23703func (c *ProjectsLocationsAgentsFlowsCreateCall) doRequest(alt string) (*http.Response, error) {
23704	reqHeaders := make(http.Header)
23705	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23706	for k, v := range c.header_ {
23707		reqHeaders[k] = v
23708	}
23709	reqHeaders.Set("User-Agent", c.s.userAgent())
23710	var body io.Reader = nil
23711	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1flow)
23712	if err != nil {
23713		return nil, err
23714	}
23715	reqHeaders.Set("Content-Type", "application/json")
23716	c.urlParams_.Set("alt", alt)
23717	c.urlParams_.Set("prettyPrint", "false")
23718	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/flows")
23719	urls += "?" + c.urlParams_.Encode()
23720	req, err := http.NewRequest("POST", urls, body)
23721	if err != nil {
23722		return nil, err
23723	}
23724	req.Header = reqHeaders
23725	googleapi.Expand(req.URL, map[string]string{
23726		"parent": c.parent,
23727	})
23728	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23729}
23730
23731// Do executes the "dialogflow.projects.locations.agents.flows.create" call.
23732// Exactly one of *GoogleCloudDialogflowCxV3beta1Flow or error will be
23733// non-nil. Any non-2xx status code is an error. Response headers are in
23734// either *GoogleCloudDialogflowCxV3beta1Flow.ServerResponse.Header or
23735// (if a response was returned at all) in
23736// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
23737// whether the returned error was because http.StatusNotModified was
23738// returned.
23739func (c *ProjectsLocationsAgentsFlowsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Flow, error) {
23740	gensupport.SetOptions(c.urlParams_, opts...)
23741	res, err := c.doRequest("json")
23742	if res != nil && res.StatusCode == http.StatusNotModified {
23743		if res.Body != nil {
23744			res.Body.Close()
23745		}
23746		return nil, &googleapi.Error{
23747			Code:   res.StatusCode,
23748			Header: res.Header,
23749		}
23750	}
23751	if err != nil {
23752		return nil, err
23753	}
23754	defer googleapi.CloseBody(res)
23755	if err := googleapi.CheckResponse(res); err != nil {
23756		return nil, err
23757	}
23758	ret := &GoogleCloudDialogflowCxV3beta1Flow{
23759		ServerResponse: googleapi.ServerResponse{
23760			Header:         res.Header,
23761			HTTPStatusCode: res.StatusCode,
23762		},
23763	}
23764	target := &ret
23765	if err := gensupport.DecodeResponse(target, res); err != nil {
23766		return nil, err
23767	}
23768	return ret, nil
23769	// {
23770	//   "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).",
23771	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
23772	//   "httpMethod": "POST",
23773	//   "id": "dialogflow.projects.locations.agents.flows.create",
23774	//   "parameterOrder": [
23775	//     "parent"
23776	//   ],
23777	//   "parameters": {
23778	//     "languageCode": {
23779	//       "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.",
23780	//       "location": "query",
23781	//       "type": "string"
23782	//     },
23783	//     "parent": {
23784	//       "description": "Required. The agent to create a flow for. Format: `projects//locations//agents/`.",
23785	//       "location": "path",
23786	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
23787	//       "required": true,
23788	//       "type": "string"
23789	//     }
23790	//   },
23791	//   "path": "v3beta1/{+parent}/flows",
23792	//   "request": {
23793	//     "$ref": "GoogleCloudDialogflowCxV3beta1Flow"
23794	//   },
23795	//   "response": {
23796	//     "$ref": "GoogleCloudDialogflowCxV3beta1Flow"
23797	//   },
23798	//   "scopes": [
23799	//     "https://www.googleapis.com/auth/cloud-platform",
23800	//     "https://www.googleapis.com/auth/dialogflow"
23801	//   ]
23802	// }
23803
23804}
23805
23806// method id "dialogflow.projects.locations.agents.flows.delete":
23807
23808type ProjectsLocationsAgentsFlowsDeleteCall struct {
23809	s          *Service
23810	name       string
23811	urlParams_ gensupport.URLParams
23812	ctx_       context.Context
23813	header_    http.Header
23814}
23815
23816// Delete: Deletes a specified flow.
23817//
23818// - name: The name of the flow to delete. Format:
23819//   `projects//locations//agents//flows/`.
23820func (r *ProjectsLocationsAgentsFlowsService) Delete(name string) *ProjectsLocationsAgentsFlowsDeleteCall {
23821	c := &ProjectsLocationsAgentsFlowsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23822	c.name = name
23823	return c
23824}
23825
23826// Force sets the optional parameter "force": This field has no effect
23827// for flows with no incoming transitions. For flows with incoming
23828// transitions: * If `force` is set to false, an error will be returned
23829// with message indicating the incoming transitions. * If `force` is set
23830// to true, Dialogflow will remove the flow, as well as any transitions
23831// to the flow (i.e. Target flow in event handlers or Target flow in
23832// transition routes that point to this flow will be cleared).
23833func (c *ProjectsLocationsAgentsFlowsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsDeleteCall {
23834	c.urlParams_.Set("force", fmt.Sprint(force))
23835	return c
23836}
23837
23838// Fields allows partial responses to be retrieved. See
23839// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23840// for more information.
23841func (c *ProjectsLocationsAgentsFlowsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsDeleteCall {
23842	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23843	return c
23844}
23845
23846// Context sets the context to be used in this call's Do method. Any
23847// pending HTTP request will be aborted if the provided context is
23848// canceled.
23849func (c *ProjectsLocationsAgentsFlowsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsDeleteCall {
23850	c.ctx_ = ctx
23851	return c
23852}
23853
23854// Header returns an http.Header that can be modified by the caller to
23855// add HTTP headers to the request.
23856func (c *ProjectsLocationsAgentsFlowsDeleteCall) Header() http.Header {
23857	if c.header_ == nil {
23858		c.header_ = make(http.Header)
23859	}
23860	return c.header_
23861}
23862
23863func (c *ProjectsLocationsAgentsFlowsDeleteCall) doRequest(alt string) (*http.Response, error) {
23864	reqHeaders := make(http.Header)
23865	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
23866	for k, v := range c.header_ {
23867		reqHeaders[k] = v
23868	}
23869	reqHeaders.Set("User-Agent", c.s.userAgent())
23870	var body io.Reader = nil
23871	c.urlParams_.Set("alt", alt)
23872	c.urlParams_.Set("prettyPrint", "false")
23873	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
23874	urls += "?" + c.urlParams_.Encode()
23875	req, err := http.NewRequest("DELETE", urls, body)
23876	if err != nil {
23877		return nil, err
23878	}
23879	req.Header = reqHeaders
23880	googleapi.Expand(req.URL, map[string]string{
23881		"name": c.name,
23882	})
23883	return gensupport.SendRequest(c.ctx_, c.s.client, req)
23884}
23885
23886// Do executes the "dialogflow.projects.locations.agents.flows.delete" call.
23887// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
23888// non-2xx status code is an error. Response headers are in either
23889// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
23890// returned at all) in error.(*googleapi.Error).Header. Use
23891// googleapi.IsNotModified to check whether the returned error was
23892// because http.StatusNotModified was returned.
23893func (c *ProjectsLocationsAgentsFlowsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
23894	gensupport.SetOptions(c.urlParams_, opts...)
23895	res, err := c.doRequest("json")
23896	if res != nil && res.StatusCode == http.StatusNotModified {
23897		if res.Body != nil {
23898			res.Body.Close()
23899		}
23900		return nil, &googleapi.Error{
23901			Code:   res.StatusCode,
23902			Header: res.Header,
23903		}
23904	}
23905	if err != nil {
23906		return nil, err
23907	}
23908	defer googleapi.CloseBody(res)
23909	if err := googleapi.CheckResponse(res); err != nil {
23910		return nil, err
23911	}
23912	ret := &GoogleProtobufEmpty{
23913		ServerResponse: googleapi.ServerResponse{
23914			Header:         res.Header,
23915			HTTPStatusCode: res.StatusCode,
23916		},
23917	}
23918	target := &ret
23919	if err := gensupport.DecodeResponse(target, res); err != nil {
23920		return nil, err
23921	}
23922	return ret, nil
23923	// {
23924	//   "description": "Deletes a specified flow.",
23925	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
23926	//   "httpMethod": "DELETE",
23927	//   "id": "dialogflow.projects.locations.agents.flows.delete",
23928	//   "parameterOrder": [
23929	//     "name"
23930	//   ],
23931	//   "parameters": {
23932	//     "force": {
23933	//       "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).",
23934	//       "location": "query",
23935	//       "type": "boolean"
23936	//     },
23937	//     "name": {
23938	//       "description": "Required. The name of the flow to delete. Format: `projects//locations//agents//flows/`.",
23939	//       "location": "path",
23940	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
23941	//       "required": true,
23942	//       "type": "string"
23943	//     }
23944	//   },
23945	//   "path": "v3beta1/{+name}",
23946	//   "response": {
23947	//     "$ref": "GoogleProtobufEmpty"
23948	//   },
23949	//   "scopes": [
23950	//     "https://www.googleapis.com/auth/cloud-platform",
23951	//     "https://www.googleapis.com/auth/dialogflow"
23952	//   ]
23953	// }
23954
23955}
23956
23957// method id "dialogflow.projects.locations.agents.flows.export":
23958
23959type ProjectsLocationsAgentsFlowsExportCall struct {
23960	s                                               *Service
23961	name                                            string
23962	googleclouddialogflowcxv3beta1exportflowrequest *GoogleCloudDialogflowCxV3beta1ExportFlowRequest
23963	urlParams_                                      gensupport.URLParams
23964	ctx_                                            context.Context
23965	header_                                         http.Header
23966}
23967
23968// Export: Exports the specified flow to a binary file. This method is a
23969// long-running operation
23970// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
23971// The returned `Operation` type has the following method-specific
23972// fields: - `metadata`: An empty Struct message
23973// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
23974// - `response`: ExportFlowResponse Note that resources (e.g. intents,
23975// entities, webhooks) that the flow references will also be exported.
23976//
23977// - name: The name of the flow to export. Format:
23978//   `projects//locations//agents//flows/`.
23979func (r *ProjectsLocationsAgentsFlowsService) Export(name string, googleclouddialogflowcxv3beta1exportflowrequest *GoogleCloudDialogflowCxV3beta1ExportFlowRequest) *ProjectsLocationsAgentsFlowsExportCall {
23980	c := &ProjectsLocationsAgentsFlowsExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
23981	c.name = name
23982	c.googleclouddialogflowcxv3beta1exportflowrequest = googleclouddialogflowcxv3beta1exportflowrequest
23983	return c
23984}
23985
23986// Fields allows partial responses to be retrieved. See
23987// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
23988// for more information.
23989func (c *ProjectsLocationsAgentsFlowsExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsExportCall {
23990	c.urlParams_.Set("fields", googleapi.CombineFields(s))
23991	return c
23992}
23993
23994// Context sets the context to be used in this call's Do method. Any
23995// pending HTTP request will be aborted if the provided context is
23996// canceled.
23997func (c *ProjectsLocationsAgentsFlowsExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsExportCall {
23998	c.ctx_ = ctx
23999	return c
24000}
24001
24002// Header returns an http.Header that can be modified by the caller to
24003// add HTTP headers to the request.
24004func (c *ProjectsLocationsAgentsFlowsExportCall) Header() http.Header {
24005	if c.header_ == nil {
24006		c.header_ = make(http.Header)
24007	}
24008	return c.header_
24009}
24010
24011func (c *ProjectsLocationsAgentsFlowsExportCall) doRequest(alt string) (*http.Response, error) {
24012	reqHeaders := make(http.Header)
24013	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24014	for k, v := range c.header_ {
24015		reqHeaders[k] = v
24016	}
24017	reqHeaders.Set("User-Agent", c.s.userAgent())
24018	var body io.Reader = nil
24019	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1exportflowrequest)
24020	if err != nil {
24021		return nil, err
24022	}
24023	reqHeaders.Set("Content-Type", "application/json")
24024	c.urlParams_.Set("alt", alt)
24025	c.urlParams_.Set("prettyPrint", "false")
24026	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:export")
24027	urls += "?" + c.urlParams_.Encode()
24028	req, err := http.NewRequest("POST", urls, body)
24029	if err != nil {
24030		return nil, err
24031	}
24032	req.Header = reqHeaders
24033	googleapi.Expand(req.URL, map[string]string{
24034		"name": c.name,
24035	})
24036	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24037}
24038
24039// Do executes the "dialogflow.projects.locations.agents.flows.export" call.
24040// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
24041// Any non-2xx status code is an error. Response headers are in either
24042// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
24043// was returned at all) in error.(*googleapi.Error).Header. Use
24044// googleapi.IsNotModified to check whether the returned error was
24045// because http.StatusNotModified was returned.
24046func (c *ProjectsLocationsAgentsFlowsExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
24047	gensupport.SetOptions(c.urlParams_, opts...)
24048	res, err := c.doRequest("json")
24049	if res != nil && res.StatusCode == http.StatusNotModified {
24050		if res.Body != nil {
24051			res.Body.Close()
24052		}
24053		return nil, &googleapi.Error{
24054			Code:   res.StatusCode,
24055			Header: res.Header,
24056		}
24057	}
24058	if err != nil {
24059		return nil, err
24060	}
24061	defer googleapi.CloseBody(res)
24062	if err := googleapi.CheckResponse(res); err != nil {
24063		return nil, err
24064	}
24065	ret := &GoogleLongrunningOperation{
24066		ServerResponse: googleapi.ServerResponse{
24067			Header:         res.Header,
24068			HTTPStatusCode: res.StatusCode,
24069		},
24070	}
24071	target := &ret
24072	if err := gensupport.DecodeResponse(target, res); err != nil {
24073		return nil, err
24074	}
24075	return ret, nil
24076	// {
24077	//   "description": "Exports the specified flow to a binary file. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: ExportFlowResponse Note that resources (e.g. intents, entities, webhooks) that the flow references will also be exported.",
24078	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:export",
24079	//   "httpMethod": "POST",
24080	//   "id": "dialogflow.projects.locations.agents.flows.export",
24081	//   "parameterOrder": [
24082	//     "name"
24083	//   ],
24084	//   "parameters": {
24085	//     "name": {
24086	//       "description": "Required. The name of the flow to export. Format: `projects//locations//agents//flows/`.",
24087	//       "location": "path",
24088	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24089	//       "required": true,
24090	//       "type": "string"
24091	//     }
24092	//   },
24093	//   "path": "v3beta1/{+name}:export",
24094	//   "request": {
24095	//     "$ref": "GoogleCloudDialogflowCxV3beta1ExportFlowRequest"
24096	//   },
24097	//   "response": {
24098	//     "$ref": "GoogleLongrunningOperation"
24099	//   },
24100	//   "scopes": [
24101	//     "https://www.googleapis.com/auth/cloud-platform",
24102	//     "https://www.googleapis.com/auth/dialogflow"
24103	//   ]
24104	// }
24105
24106}
24107
24108// method id "dialogflow.projects.locations.agents.flows.get":
24109
24110type ProjectsLocationsAgentsFlowsGetCall struct {
24111	s            *Service
24112	name         string
24113	urlParams_   gensupport.URLParams
24114	ifNoneMatch_ string
24115	ctx_         context.Context
24116	header_      http.Header
24117}
24118
24119// Get: Retrieves the specified flow.
24120//
24121// - name: The name of the flow to get. Format:
24122//   `projects//locations//agents//flows/`.
24123func (r *ProjectsLocationsAgentsFlowsService) Get(name string) *ProjectsLocationsAgentsFlowsGetCall {
24124	c := &ProjectsLocationsAgentsFlowsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24125	c.name = name
24126	return c
24127}
24128
24129// LanguageCode sets the optional parameter "languageCode": The language
24130// to retrieve the flow for. The following fields are language
24131// dependent: * `Flow.event_handlers.trigger_fulfillment.messages` *
24132// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24133// `Flow.transition_routes.trigger_fulfillment.messages` *
24134// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24135// specified, the agent's default language is used. Many languages
24136// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24137// supported. Note: languages must be enabled in the agent before they
24138// can be used.
24139func (c *ProjectsLocationsAgentsFlowsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetCall {
24140	c.urlParams_.Set("languageCode", languageCode)
24141	return c
24142}
24143
24144// Fields allows partial responses to be retrieved. See
24145// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24146// for more information.
24147func (c *ProjectsLocationsAgentsFlowsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetCall {
24148	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24149	return c
24150}
24151
24152// IfNoneMatch sets the optional parameter which makes the operation
24153// fail if the object's ETag matches the given value. This is useful for
24154// getting updates only after the object has changed since the last
24155// request. Use googleapi.IsNotModified to check whether the response
24156// error from Do is the result of In-None-Match.
24157func (c *ProjectsLocationsAgentsFlowsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetCall {
24158	c.ifNoneMatch_ = entityTag
24159	return c
24160}
24161
24162// Context sets the context to be used in this call's Do method. Any
24163// pending HTTP request will be aborted if the provided context is
24164// canceled.
24165func (c *ProjectsLocationsAgentsFlowsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetCall {
24166	c.ctx_ = ctx
24167	return c
24168}
24169
24170// Header returns an http.Header that can be modified by the caller to
24171// add HTTP headers to the request.
24172func (c *ProjectsLocationsAgentsFlowsGetCall) Header() http.Header {
24173	if c.header_ == nil {
24174		c.header_ = make(http.Header)
24175	}
24176	return c.header_
24177}
24178
24179func (c *ProjectsLocationsAgentsFlowsGetCall) doRequest(alt string) (*http.Response, error) {
24180	reqHeaders := make(http.Header)
24181	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24182	for k, v := range c.header_ {
24183		reqHeaders[k] = v
24184	}
24185	reqHeaders.Set("User-Agent", c.s.userAgent())
24186	if c.ifNoneMatch_ != "" {
24187		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24188	}
24189	var body io.Reader = nil
24190	c.urlParams_.Set("alt", alt)
24191	c.urlParams_.Set("prettyPrint", "false")
24192	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
24193	urls += "?" + c.urlParams_.Encode()
24194	req, err := http.NewRequest("GET", urls, body)
24195	if err != nil {
24196		return nil, err
24197	}
24198	req.Header = reqHeaders
24199	googleapi.Expand(req.URL, map[string]string{
24200		"name": c.name,
24201	})
24202	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24203}
24204
24205// Do executes the "dialogflow.projects.locations.agents.flows.get" call.
24206// Exactly one of *GoogleCloudDialogflowCxV3beta1Flow or error will be
24207// non-nil. Any non-2xx status code is an error. Response headers are in
24208// either *GoogleCloudDialogflowCxV3beta1Flow.ServerResponse.Header or
24209// (if a response was returned at all) in
24210// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24211// whether the returned error was because http.StatusNotModified was
24212// returned.
24213func (c *ProjectsLocationsAgentsFlowsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Flow, error) {
24214	gensupport.SetOptions(c.urlParams_, opts...)
24215	res, err := c.doRequest("json")
24216	if res != nil && res.StatusCode == http.StatusNotModified {
24217		if res.Body != nil {
24218			res.Body.Close()
24219		}
24220		return nil, &googleapi.Error{
24221			Code:   res.StatusCode,
24222			Header: res.Header,
24223		}
24224	}
24225	if err != nil {
24226		return nil, err
24227	}
24228	defer googleapi.CloseBody(res)
24229	if err := googleapi.CheckResponse(res); err != nil {
24230		return nil, err
24231	}
24232	ret := &GoogleCloudDialogflowCxV3beta1Flow{
24233		ServerResponse: googleapi.ServerResponse{
24234			Header:         res.Header,
24235			HTTPStatusCode: res.StatusCode,
24236		},
24237	}
24238	target := &ret
24239	if err := gensupport.DecodeResponse(target, res); err != nil {
24240		return nil, err
24241	}
24242	return ret, nil
24243	// {
24244	//   "description": "Retrieves the specified flow.",
24245	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
24246	//   "httpMethod": "GET",
24247	//   "id": "dialogflow.projects.locations.agents.flows.get",
24248	//   "parameterOrder": [
24249	//     "name"
24250	//   ],
24251	//   "parameters": {
24252	//     "languageCode": {
24253	//       "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.",
24254	//       "location": "query",
24255	//       "type": "string"
24256	//     },
24257	//     "name": {
24258	//       "description": "Required. The name of the flow to get. Format: `projects//locations//agents//flows/`.",
24259	//       "location": "path",
24260	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24261	//       "required": true,
24262	//       "type": "string"
24263	//     }
24264	//   },
24265	//   "path": "v3beta1/{+name}",
24266	//   "response": {
24267	//     "$ref": "GoogleCloudDialogflowCxV3beta1Flow"
24268	//   },
24269	//   "scopes": [
24270	//     "https://www.googleapis.com/auth/cloud-platform",
24271	//     "https://www.googleapis.com/auth/dialogflow"
24272	//   ]
24273	// }
24274
24275}
24276
24277// method id "dialogflow.projects.locations.agents.flows.getValidationResult":
24278
24279type ProjectsLocationsAgentsFlowsGetValidationResultCall struct {
24280	s            *Service
24281	name         string
24282	urlParams_   gensupport.URLParams
24283	ifNoneMatch_ string
24284	ctx_         context.Context
24285	header_      http.Header
24286}
24287
24288// GetValidationResult: Gets the latest flow validation result. Flow
24289// validation is performed when ValidateFlow is called.
24290//
24291// - name: The flow name. Format:
24292//   `projects//locations//agents//flows//validationResult`.
24293func (r *ProjectsLocationsAgentsFlowsService) GetValidationResult(name string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24294	c := &ProjectsLocationsAgentsFlowsGetValidationResultCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24295	c.name = name
24296	return c
24297}
24298
24299// LanguageCode sets the optional parameter "languageCode": If not
24300// specified, the agent's default language is used.
24301func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24302	c.urlParams_.Set("languageCode", languageCode)
24303	return c
24304}
24305
24306// Fields allows partial responses to be retrieved. See
24307// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24308// for more information.
24309func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24310	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24311	return c
24312}
24313
24314// IfNoneMatch sets the optional parameter which makes the operation
24315// fail if the object's ETag matches the given value. This is useful for
24316// getting updates only after the object has changed since the last
24317// request. Use googleapi.IsNotModified to check whether the response
24318// error from Do is the result of In-None-Match.
24319func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24320	c.ifNoneMatch_ = entityTag
24321	return c
24322}
24323
24324// Context sets the context to be used in this call's Do method. Any
24325// pending HTTP request will be aborted if the provided context is
24326// canceled.
24327func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsGetValidationResultCall {
24328	c.ctx_ = ctx
24329	return c
24330}
24331
24332// Header returns an http.Header that can be modified by the caller to
24333// add HTTP headers to the request.
24334func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Header() http.Header {
24335	if c.header_ == nil {
24336		c.header_ = make(http.Header)
24337	}
24338	return c.header_
24339}
24340
24341func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) doRequest(alt string) (*http.Response, error) {
24342	reqHeaders := make(http.Header)
24343	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24344	for k, v := range c.header_ {
24345		reqHeaders[k] = v
24346	}
24347	reqHeaders.Set("User-Agent", c.s.userAgent())
24348	if c.ifNoneMatch_ != "" {
24349		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24350	}
24351	var body io.Reader = nil
24352	c.urlParams_.Set("alt", alt)
24353	c.urlParams_.Set("prettyPrint", "false")
24354	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
24355	urls += "?" + c.urlParams_.Encode()
24356	req, err := http.NewRequest("GET", urls, body)
24357	if err != nil {
24358		return nil, err
24359	}
24360	req.Header = reqHeaders
24361	googleapi.Expand(req.URL, map[string]string{
24362		"name": c.name,
24363	})
24364	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24365}
24366
24367// Do executes the "dialogflow.projects.locations.agents.flows.getValidationResult" call.
24368// Exactly one of *GoogleCloudDialogflowCxV3beta1FlowValidationResult or
24369// error will be non-nil. Any non-2xx status code is an error. Response
24370// headers are in either
24371// *GoogleCloudDialogflowCxV3beta1FlowValidationResult.ServerResponse.Hea
24372// der or (if a response was returned at all) in
24373// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24374// whether the returned error was because http.StatusNotModified was
24375// returned.
24376func (c *ProjectsLocationsAgentsFlowsGetValidationResultCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1FlowValidationResult, error) {
24377	gensupport.SetOptions(c.urlParams_, opts...)
24378	res, err := c.doRequest("json")
24379	if res != nil && res.StatusCode == http.StatusNotModified {
24380		if res.Body != nil {
24381			res.Body.Close()
24382		}
24383		return nil, &googleapi.Error{
24384			Code:   res.StatusCode,
24385			Header: res.Header,
24386		}
24387	}
24388	if err != nil {
24389		return nil, err
24390	}
24391	defer googleapi.CloseBody(res)
24392	if err := googleapi.CheckResponse(res); err != nil {
24393		return nil, err
24394	}
24395	ret := &GoogleCloudDialogflowCxV3beta1FlowValidationResult{
24396		ServerResponse: googleapi.ServerResponse{
24397			Header:         res.Header,
24398			HTTPStatusCode: res.StatusCode,
24399		},
24400	}
24401	target := &ret
24402	if err := gensupport.DecodeResponse(target, res); err != nil {
24403		return nil, err
24404	}
24405	return ret, nil
24406	// {
24407	//   "description": "Gets the latest flow validation result. Flow validation is performed when ValidateFlow is called.",
24408	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/validationResult",
24409	//   "httpMethod": "GET",
24410	//   "id": "dialogflow.projects.locations.agents.flows.getValidationResult",
24411	//   "parameterOrder": [
24412	//     "name"
24413	//   ],
24414	//   "parameters": {
24415	//     "languageCode": {
24416	//       "description": "If not specified, the agent's default language is used.",
24417	//       "location": "query",
24418	//       "type": "string"
24419	//     },
24420	//     "name": {
24421	//       "description": "Required. The flow name. Format: `projects//locations//agents//flows//validationResult`.",
24422	//       "location": "path",
24423	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/validationResult$",
24424	//       "required": true,
24425	//       "type": "string"
24426	//     }
24427	//   },
24428	//   "path": "v3beta1/{+name}",
24429	//   "response": {
24430	//     "$ref": "GoogleCloudDialogflowCxV3beta1FlowValidationResult"
24431	//   },
24432	//   "scopes": [
24433	//     "https://www.googleapis.com/auth/cloud-platform",
24434	//     "https://www.googleapis.com/auth/dialogflow"
24435	//   ]
24436	// }
24437
24438}
24439
24440// method id "dialogflow.projects.locations.agents.flows.import":
24441
24442type ProjectsLocationsAgentsFlowsImportCall struct {
24443	s                                               *Service
24444	parent                                          string
24445	googleclouddialogflowcxv3beta1importflowrequest *GoogleCloudDialogflowCxV3beta1ImportFlowRequest
24446	urlParams_                                      gensupport.URLParams
24447	ctx_                                            context.Context
24448	header_                                         http.Header
24449}
24450
24451// Import: Imports the specified flow to the specified agent from a
24452// binary file. This method is a long-running operation
24453// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
24454// The returned `Operation` type has the following method-specific
24455// fields: - `metadata`: An empty Struct message
24456// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
24457// - `response`: ImportFlowResponse Note: You should always train a flow
24458// prior to sending it queries. See the training documentation
24459// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24460//
24461// - parent: The agent to import the flow into. Format:
24462//   `projects//locations//agents/`.
24463func (r *ProjectsLocationsAgentsFlowsService) Import(parent string, googleclouddialogflowcxv3beta1importflowrequest *GoogleCloudDialogflowCxV3beta1ImportFlowRequest) *ProjectsLocationsAgentsFlowsImportCall {
24464	c := &ProjectsLocationsAgentsFlowsImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24465	c.parent = parent
24466	c.googleclouddialogflowcxv3beta1importflowrequest = googleclouddialogflowcxv3beta1importflowrequest
24467	return c
24468}
24469
24470// Fields allows partial responses to be retrieved. See
24471// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24472// for more information.
24473func (c *ProjectsLocationsAgentsFlowsImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsImportCall {
24474	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24475	return c
24476}
24477
24478// Context sets the context to be used in this call's Do method. Any
24479// pending HTTP request will be aborted if the provided context is
24480// canceled.
24481func (c *ProjectsLocationsAgentsFlowsImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsImportCall {
24482	c.ctx_ = ctx
24483	return c
24484}
24485
24486// Header returns an http.Header that can be modified by the caller to
24487// add HTTP headers to the request.
24488func (c *ProjectsLocationsAgentsFlowsImportCall) Header() http.Header {
24489	if c.header_ == nil {
24490		c.header_ = make(http.Header)
24491	}
24492	return c.header_
24493}
24494
24495func (c *ProjectsLocationsAgentsFlowsImportCall) doRequest(alt string) (*http.Response, error) {
24496	reqHeaders := make(http.Header)
24497	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24498	for k, v := range c.header_ {
24499		reqHeaders[k] = v
24500	}
24501	reqHeaders.Set("User-Agent", c.s.userAgent())
24502	var body io.Reader = nil
24503	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1importflowrequest)
24504	if err != nil {
24505		return nil, err
24506	}
24507	reqHeaders.Set("Content-Type", "application/json")
24508	c.urlParams_.Set("alt", alt)
24509	c.urlParams_.Set("prettyPrint", "false")
24510	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/flows:import")
24511	urls += "?" + c.urlParams_.Encode()
24512	req, err := http.NewRequest("POST", urls, body)
24513	if err != nil {
24514		return nil, err
24515	}
24516	req.Header = reqHeaders
24517	googleapi.Expand(req.URL, map[string]string{
24518		"parent": c.parent,
24519	})
24520	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24521}
24522
24523// Do executes the "dialogflow.projects.locations.agents.flows.import" call.
24524// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
24525// Any non-2xx status code is an error. Response headers are in either
24526// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
24527// was returned at all) in error.(*googleapi.Error).Header. Use
24528// googleapi.IsNotModified to check whether the returned error was
24529// because http.StatusNotModified was returned.
24530func (c *ProjectsLocationsAgentsFlowsImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
24531	gensupport.SetOptions(c.urlParams_, opts...)
24532	res, err := c.doRequest("json")
24533	if res != nil && res.StatusCode == http.StatusNotModified {
24534		if res.Body != nil {
24535			res.Body.Close()
24536		}
24537		return nil, &googleapi.Error{
24538			Code:   res.StatusCode,
24539			Header: res.Header,
24540		}
24541	}
24542	if err != nil {
24543		return nil, err
24544	}
24545	defer googleapi.CloseBody(res)
24546	if err := googleapi.CheckResponse(res); err != nil {
24547		return nil, err
24548	}
24549	ret := &GoogleLongrunningOperation{
24550		ServerResponse: googleapi.ServerResponse{
24551			Header:         res.Header,
24552			HTTPStatusCode: res.StatusCode,
24553		},
24554	}
24555	target := &ret
24556	if err := gensupport.DecodeResponse(target, res); err != nil {
24557		return nil, err
24558	}
24559	return ret, nil
24560	// {
24561	//   "description": "Imports the specified flow to the specified agent from a binary file. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: ImportFlowResponse 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).",
24562	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows:import",
24563	//   "httpMethod": "POST",
24564	//   "id": "dialogflow.projects.locations.agents.flows.import",
24565	//   "parameterOrder": [
24566	//     "parent"
24567	//   ],
24568	//   "parameters": {
24569	//     "parent": {
24570	//       "description": "Required. The agent to import the flow into. Format: `projects//locations//agents/`.",
24571	//       "location": "path",
24572	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
24573	//       "required": true,
24574	//       "type": "string"
24575	//     }
24576	//   },
24577	//   "path": "v3beta1/{+parent}/flows:import",
24578	//   "request": {
24579	//     "$ref": "GoogleCloudDialogflowCxV3beta1ImportFlowRequest"
24580	//   },
24581	//   "response": {
24582	//     "$ref": "GoogleLongrunningOperation"
24583	//   },
24584	//   "scopes": [
24585	//     "https://www.googleapis.com/auth/cloud-platform",
24586	//     "https://www.googleapis.com/auth/dialogflow"
24587	//   ]
24588	// }
24589
24590}
24591
24592// method id "dialogflow.projects.locations.agents.flows.list":
24593
24594type ProjectsLocationsAgentsFlowsListCall struct {
24595	s            *Service
24596	parent       string
24597	urlParams_   gensupport.URLParams
24598	ifNoneMatch_ string
24599	ctx_         context.Context
24600	header_      http.Header
24601}
24602
24603// List: Returns the list of all flows in the specified agent.
24604//
24605// - parent: The agent containing the flows. Format:
24606//   `projects//locations//agents/`.
24607func (r *ProjectsLocationsAgentsFlowsService) List(parent string) *ProjectsLocationsAgentsFlowsListCall {
24608	c := &ProjectsLocationsAgentsFlowsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24609	c.parent = parent
24610	return c
24611}
24612
24613// LanguageCode sets the optional parameter "languageCode": The language
24614// to list flows for. The following fields are language dependent: *
24615// `Flow.event_handlers.trigger_fulfillment.messages` *
24616// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24617// `Flow.transition_routes.trigger_fulfillment.messages` *
24618// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24619// specified, the agent's default language is used. Many languages
24620// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24621// supported. Note: languages must be enabled in the agent before they
24622// can be used.
24623func (c *ProjectsLocationsAgentsFlowsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsListCall {
24624	c.urlParams_.Set("languageCode", languageCode)
24625	return c
24626}
24627
24628// PageSize sets the optional parameter "pageSize": The maximum number
24629// of items to return in a single page. By default 100 and at most 1000.
24630func (c *ProjectsLocationsAgentsFlowsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsListCall {
24631	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
24632	return c
24633}
24634
24635// PageToken sets the optional parameter "pageToken": The
24636// next_page_token value returned from a previous list request.
24637func (c *ProjectsLocationsAgentsFlowsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsListCall {
24638	c.urlParams_.Set("pageToken", pageToken)
24639	return c
24640}
24641
24642// Fields allows partial responses to be retrieved. See
24643// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24644// for more information.
24645func (c *ProjectsLocationsAgentsFlowsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsListCall {
24646	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24647	return c
24648}
24649
24650// IfNoneMatch sets the optional parameter which makes the operation
24651// fail if the object's ETag matches the given value. This is useful for
24652// getting updates only after the object has changed since the last
24653// request. Use googleapi.IsNotModified to check whether the response
24654// error from Do is the result of In-None-Match.
24655func (c *ProjectsLocationsAgentsFlowsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsListCall {
24656	c.ifNoneMatch_ = entityTag
24657	return c
24658}
24659
24660// Context sets the context to be used in this call's Do method. Any
24661// pending HTTP request will be aborted if the provided context is
24662// canceled.
24663func (c *ProjectsLocationsAgentsFlowsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsListCall {
24664	c.ctx_ = ctx
24665	return c
24666}
24667
24668// Header returns an http.Header that can be modified by the caller to
24669// add HTTP headers to the request.
24670func (c *ProjectsLocationsAgentsFlowsListCall) Header() http.Header {
24671	if c.header_ == nil {
24672		c.header_ = make(http.Header)
24673	}
24674	return c.header_
24675}
24676
24677func (c *ProjectsLocationsAgentsFlowsListCall) doRequest(alt string) (*http.Response, error) {
24678	reqHeaders := make(http.Header)
24679	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24680	for k, v := range c.header_ {
24681		reqHeaders[k] = v
24682	}
24683	reqHeaders.Set("User-Agent", c.s.userAgent())
24684	if c.ifNoneMatch_ != "" {
24685		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
24686	}
24687	var body io.Reader = nil
24688	c.urlParams_.Set("alt", alt)
24689	c.urlParams_.Set("prettyPrint", "false")
24690	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/flows")
24691	urls += "?" + c.urlParams_.Encode()
24692	req, err := http.NewRequest("GET", urls, body)
24693	if err != nil {
24694		return nil, err
24695	}
24696	req.Header = reqHeaders
24697	googleapi.Expand(req.URL, map[string]string{
24698		"parent": c.parent,
24699	})
24700	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24701}
24702
24703// Do executes the "dialogflow.projects.locations.agents.flows.list" call.
24704// Exactly one of *GoogleCloudDialogflowCxV3beta1ListFlowsResponse or
24705// error will be non-nil. Any non-2xx status code is an error. Response
24706// headers are in either
24707// *GoogleCloudDialogflowCxV3beta1ListFlowsResponse.ServerResponse.Header
24708//  or (if a response was returned at all) in
24709// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24710// whether the returned error was because http.StatusNotModified was
24711// returned.
24712func (c *ProjectsLocationsAgentsFlowsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListFlowsResponse, error) {
24713	gensupport.SetOptions(c.urlParams_, opts...)
24714	res, err := c.doRequest("json")
24715	if res != nil && res.StatusCode == http.StatusNotModified {
24716		if res.Body != nil {
24717			res.Body.Close()
24718		}
24719		return nil, &googleapi.Error{
24720			Code:   res.StatusCode,
24721			Header: res.Header,
24722		}
24723	}
24724	if err != nil {
24725		return nil, err
24726	}
24727	defer googleapi.CloseBody(res)
24728	if err := googleapi.CheckResponse(res); err != nil {
24729		return nil, err
24730	}
24731	ret := &GoogleCloudDialogflowCxV3beta1ListFlowsResponse{
24732		ServerResponse: googleapi.ServerResponse{
24733			Header:         res.Header,
24734			HTTPStatusCode: res.StatusCode,
24735		},
24736	}
24737	target := &ret
24738	if err := gensupport.DecodeResponse(target, res); err != nil {
24739		return nil, err
24740	}
24741	return ret, nil
24742	// {
24743	//   "description": "Returns the list of all flows in the specified agent.",
24744	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows",
24745	//   "httpMethod": "GET",
24746	//   "id": "dialogflow.projects.locations.agents.flows.list",
24747	//   "parameterOrder": [
24748	//     "parent"
24749	//   ],
24750	//   "parameters": {
24751	//     "languageCode": {
24752	//       "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.",
24753	//       "location": "query",
24754	//       "type": "string"
24755	//     },
24756	//     "pageSize": {
24757	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
24758	//       "format": "int32",
24759	//       "location": "query",
24760	//       "type": "integer"
24761	//     },
24762	//     "pageToken": {
24763	//       "description": "The next_page_token value returned from a previous list request.",
24764	//       "location": "query",
24765	//       "type": "string"
24766	//     },
24767	//     "parent": {
24768	//       "description": "Required. The agent containing the flows. Format: `projects//locations//agents/`.",
24769	//       "location": "path",
24770	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
24771	//       "required": true,
24772	//       "type": "string"
24773	//     }
24774	//   },
24775	//   "path": "v3beta1/{+parent}/flows",
24776	//   "response": {
24777	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListFlowsResponse"
24778	//   },
24779	//   "scopes": [
24780	//     "https://www.googleapis.com/auth/cloud-platform",
24781	//     "https://www.googleapis.com/auth/dialogflow"
24782	//   ]
24783	// }
24784
24785}
24786
24787// Pages invokes f for each page of results.
24788// A non-nil error returned from f will halt the iteration.
24789// The provided context supersedes any context provided to the Context method.
24790func (c *ProjectsLocationsAgentsFlowsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListFlowsResponse) error) error {
24791	c.ctx_ = ctx
24792	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
24793	for {
24794		x, err := c.Do()
24795		if err != nil {
24796			return err
24797		}
24798		if err := f(x); err != nil {
24799			return err
24800		}
24801		if x.NextPageToken == "" {
24802			return nil
24803		}
24804		c.PageToken(x.NextPageToken)
24805	}
24806}
24807
24808// method id "dialogflow.projects.locations.agents.flows.patch":
24809
24810type ProjectsLocationsAgentsFlowsPatchCall struct {
24811	s                                  *Service
24812	nameid                             string
24813	googleclouddialogflowcxv3beta1flow *GoogleCloudDialogflowCxV3beta1Flow
24814	urlParams_                         gensupport.URLParams
24815	ctx_                               context.Context
24816	header_                            http.Header
24817}
24818
24819// Patch: Updates the specified flow. Note: You should always train a
24820// flow prior to sending it queries. See the training documentation
24821// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
24822//
24823// - name: The unique identifier of the flow. Format:
24824//   `projects//locations//agents//flows/`.
24825func (r *ProjectsLocationsAgentsFlowsService) Patch(nameid string, googleclouddialogflowcxv3beta1flow *GoogleCloudDialogflowCxV3beta1Flow) *ProjectsLocationsAgentsFlowsPatchCall {
24826	c := &ProjectsLocationsAgentsFlowsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
24827	c.nameid = nameid
24828	c.googleclouddialogflowcxv3beta1flow = googleclouddialogflowcxv3beta1flow
24829	return c
24830}
24831
24832// LanguageCode sets the optional parameter "languageCode": The language
24833// of the following fields in `flow`: *
24834// `Flow.event_handlers.trigger_fulfillment.messages` *
24835// `Flow.event_handlers.trigger_fulfillment.conditional_cases` *
24836// `Flow.transition_routes.trigger_fulfillment.messages` *
24837// `Flow.transition_routes.trigger_fulfillment.conditional_cases` If not
24838// specified, the agent's default language is used. Many languages
24839// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
24840// supported. Note: languages must be enabled in the agent before they
24841// can be used.
24842func (c *ProjectsLocationsAgentsFlowsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPatchCall {
24843	c.urlParams_.Set("languageCode", languageCode)
24844	return c
24845}
24846
24847// UpdateMask sets the optional parameter "updateMask": The mask to
24848// control which fields get updated. If the mask is not present, all
24849// fields will be updated.
24850func (c *ProjectsLocationsAgentsFlowsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPatchCall {
24851	c.urlParams_.Set("updateMask", updateMask)
24852	return c
24853}
24854
24855// Fields allows partial responses to be retrieved. See
24856// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
24857// for more information.
24858func (c *ProjectsLocationsAgentsFlowsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPatchCall {
24859	c.urlParams_.Set("fields", googleapi.CombineFields(s))
24860	return c
24861}
24862
24863// Context sets the context to be used in this call's Do method. Any
24864// pending HTTP request will be aborted if the provided context is
24865// canceled.
24866func (c *ProjectsLocationsAgentsFlowsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPatchCall {
24867	c.ctx_ = ctx
24868	return c
24869}
24870
24871// Header returns an http.Header that can be modified by the caller to
24872// add HTTP headers to the request.
24873func (c *ProjectsLocationsAgentsFlowsPatchCall) Header() http.Header {
24874	if c.header_ == nil {
24875		c.header_ = make(http.Header)
24876	}
24877	return c.header_
24878}
24879
24880func (c *ProjectsLocationsAgentsFlowsPatchCall) doRequest(alt string) (*http.Response, error) {
24881	reqHeaders := make(http.Header)
24882	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
24883	for k, v := range c.header_ {
24884		reqHeaders[k] = v
24885	}
24886	reqHeaders.Set("User-Agent", c.s.userAgent())
24887	var body io.Reader = nil
24888	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1flow)
24889	if err != nil {
24890		return nil, err
24891	}
24892	reqHeaders.Set("Content-Type", "application/json")
24893	c.urlParams_.Set("alt", alt)
24894	c.urlParams_.Set("prettyPrint", "false")
24895	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
24896	urls += "?" + c.urlParams_.Encode()
24897	req, err := http.NewRequest("PATCH", urls, body)
24898	if err != nil {
24899		return nil, err
24900	}
24901	req.Header = reqHeaders
24902	googleapi.Expand(req.URL, map[string]string{
24903		"name": c.nameid,
24904	})
24905	return gensupport.SendRequest(c.ctx_, c.s.client, req)
24906}
24907
24908// Do executes the "dialogflow.projects.locations.agents.flows.patch" call.
24909// Exactly one of *GoogleCloudDialogflowCxV3beta1Flow or error will be
24910// non-nil. Any non-2xx status code is an error. Response headers are in
24911// either *GoogleCloudDialogflowCxV3beta1Flow.ServerResponse.Header or
24912// (if a response was returned at all) in
24913// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
24914// whether the returned error was because http.StatusNotModified was
24915// returned.
24916func (c *ProjectsLocationsAgentsFlowsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Flow, error) {
24917	gensupport.SetOptions(c.urlParams_, opts...)
24918	res, err := c.doRequest("json")
24919	if res != nil && res.StatusCode == http.StatusNotModified {
24920		if res.Body != nil {
24921			res.Body.Close()
24922		}
24923		return nil, &googleapi.Error{
24924			Code:   res.StatusCode,
24925			Header: res.Header,
24926		}
24927	}
24928	if err != nil {
24929		return nil, err
24930	}
24931	defer googleapi.CloseBody(res)
24932	if err := googleapi.CheckResponse(res); err != nil {
24933		return nil, err
24934	}
24935	ret := &GoogleCloudDialogflowCxV3beta1Flow{
24936		ServerResponse: googleapi.ServerResponse{
24937			Header:         res.Header,
24938			HTTPStatusCode: res.StatusCode,
24939		},
24940	}
24941	target := &ret
24942	if err := gensupport.DecodeResponse(target, res); err != nil {
24943		return nil, err
24944	}
24945	return ret, nil
24946	// {
24947	//   "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).",
24948	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}",
24949	//   "httpMethod": "PATCH",
24950	//   "id": "dialogflow.projects.locations.agents.flows.patch",
24951	//   "parameterOrder": [
24952	//     "name"
24953	//   ],
24954	//   "parameters": {
24955	//     "languageCode": {
24956	//       "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.",
24957	//       "location": "query",
24958	//       "type": "string"
24959	//     },
24960	//     "name": {
24961	//       "description": "The unique identifier of the flow. Format: `projects//locations//agents//flows/`.",
24962	//       "location": "path",
24963	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
24964	//       "required": true,
24965	//       "type": "string"
24966	//     },
24967	//     "updateMask": {
24968	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
24969	//       "format": "google-fieldmask",
24970	//       "location": "query",
24971	//       "type": "string"
24972	//     }
24973	//   },
24974	//   "path": "v3beta1/{+name}",
24975	//   "request": {
24976	//     "$ref": "GoogleCloudDialogflowCxV3beta1Flow"
24977	//   },
24978	//   "response": {
24979	//     "$ref": "GoogleCloudDialogflowCxV3beta1Flow"
24980	//   },
24981	//   "scopes": [
24982	//     "https://www.googleapis.com/auth/cloud-platform",
24983	//     "https://www.googleapis.com/auth/dialogflow"
24984	//   ]
24985	// }
24986
24987}
24988
24989// method id "dialogflow.projects.locations.agents.flows.train":
24990
24991type ProjectsLocationsAgentsFlowsTrainCall struct {
24992	s                                              *Service
24993	name                                           string
24994	googleclouddialogflowcxv3beta1trainflowrequest *GoogleCloudDialogflowCxV3beta1TrainFlowRequest
24995	urlParams_                                     gensupport.URLParams
24996	ctx_                                           context.Context
24997	header_                                        http.Header
24998}
24999
25000// Train: Trains the specified flow. Note that only the flow in 'draft'
25001// environment is trained. This method is a long-running operation
25002// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
25003// The returned `Operation` type has the following method-specific
25004// fields: - `metadata`: An empty Struct message
25005// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
25006// - `response`: An Empty message
25007// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
25008// Note: You should always train a flow prior to sending it queries. See
25009// the training documentation
25010// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
25011//
25012// - name: The flow to train. Format:
25013//   `projects//locations//agents//flows/`.
25014func (r *ProjectsLocationsAgentsFlowsService) Train(name string, googleclouddialogflowcxv3beta1trainflowrequest *GoogleCloudDialogflowCxV3beta1TrainFlowRequest) *ProjectsLocationsAgentsFlowsTrainCall {
25015	c := &ProjectsLocationsAgentsFlowsTrainCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25016	c.name = name
25017	c.googleclouddialogflowcxv3beta1trainflowrequest = googleclouddialogflowcxv3beta1trainflowrequest
25018	return c
25019}
25020
25021// Fields allows partial responses to be retrieved. See
25022// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25023// for more information.
25024func (c *ProjectsLocationsAgentsFlowsTrainCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTrainCall {
25025	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25026	return c
25027}
25028
25029// Context sets the context to be used in this call's Do method. Any
25030// pending HTTP request will be aborted if the provided context is
25031// canceled.
25032func (c *ProjectsLocationsAgentsFlowsTrainCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTrainCall {
25033	c.ctx_ = ctx
25034	return c
25035}
25036
25037// Header returns an http.Header that can be modified by the caller to
25038// add HTTP headers to the request.
25039func (c *ProjectsLocationsAgentsFlowsTrainCall) Header() http.Header {
25040	if c.header_ == nil {
25041		c.header_ = make(http.Header)
25042	}
25043	return c.header_
25044}
25045
25046func (c *ProjectsLocationsAgentsFlowsTrainCall) doRequest(alt string) (*http.Response, error) {
25047	reqHeaders := make(http.Header)
25048	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25049	for k, v := range c.header_ {
25050		reqHeaders[k] = v
25051	}
25052	reqHeaders.Set("User-Agent", c.s.userAgent())
25053	var body io.Reader = nil
25054	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1trainflowrequest)
25055	if err != nil {
25056		return nil, err
25057	}
25058	reqHeaders.Set("Content-Type", "application/json")
25059	c.urlParams_.Set("alt", alt)
25060	c.urlParams_.Set("prettyPrint", "false")
25061	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:train")
25062	urls += "?" + c.urlParams_.Encode()
25063	req, err := http.NewRequest("POST", urls, body)
25064	if err != nil {
25065		return nil, err
25066	}
25067	req.Header = reqHeaders
25068	googleapi.Expand(req.URL, map[string]string{
25069		"name": c.name,
25070	})
25071	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25072}
25073
25074// Do executes the "dialogflow.projects.locations.agents.flows.train" call.
25075// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
25076// Any non-2xx status code is an error. Response headers are in either
25077// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
25078// was returned at all) in error.(*googleapi.Error).Header. Use
25079// googleapi.IsNotModified to check whether the returned error was
25080// because http.StatusNotModified was returned.
25081func (c *ProjectsLocationsAgentsFlowsTrainCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
25082	gensupport.SetOptions(c.urlParams_, opts...)
25083	res, err := c.doRequest("json")
25084	if res != nil && res.StatusCode == http.StatusNotModified {
25085		if res.Body != nil {
25086			res.Body.Close()
25087		}
25088		return nil, &googleapi.Error{
25089			Code:   res.StatusCode,
25090			Header: res.Header,
25091		}
25092	}
25093	if err != nil {
25094		return nil, err
25095	}
25096	defer googleapi.CloseBody(res)
25097	if err := googleapi.CheckResponse(res); err != nil {
25098		return nil, err
25099	}
25100	ret := &GoogleLongrunningOperation{
25101		ServerResponse: googleapi.ServerResponse{
25102			Header:         res.Header,
25103			HTTPStatusCode: res.StatusCode,
25104		},
25105	}
25106	target := &ret
25107	if err := gensupport.DecodeResponse(target, res); err != nil {
25108		return nil, err
25109	}
25110	return ret, nil
25111	// {
25112	//   "description": "Trains the specified flow. Note that only the flow in 'draft' environment is trained. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: An [Empty message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty) 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).",
25113	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:train",
25114	//   "httpMethod": "POST",
25115	//   "id": "dialogflow.projects.locations.agents.flows.train",
25116	//   "parameterOrder": [
25117	//     "name"
25118	//   ],
25119	//   "parameters": {
25120	//     "name": {
25121	//       "description": "Required. The flow to train. Format: `projects//locations//agents//flows/`.",
25122	//       "location": "path",
25123	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25124	//       "required": true,
25125	//       "type": "string"
25126	//     }
25127	//   },
25128	//   "path": "v3beta1/{+name}:train",
25129	//   "request": {
25130	//     "$ref": "GoogleCloudDialogflowCxV3beta1TrainFlowRequest"
25131	//   },
25132	//   "response": {
25133	//     "$ref": "GoogleLongrunningOperation"
25134	//   },
25135	//   "scopes": [
25136	//     "https://www.googleapis.com/auth/cloud-platform",
25137	//     "https://www.googleapis.com/auth/dialogflow"
25138	//   ]
25139	// }
25140
25141}
25142
25143// method id "dialogflow.projects.locations.agents.flows.validate":
25144
25145type ProjectsLocationsAgentsFlowsValidateCall struct {
25146	s                                                 *Service
25147	name                                              string
25148	googleclouddialogflowcxv3beta1validateflowrequest *GoogleCloudDialogflowCxV3beta1ValidateFlowRequest
25149	urlParams_                                        gensupport.URLParams
25150	ctx_                                              context.Context
25151	header_                                           http.Header
25152}
25153
25154// Validate: Validates the specified flow and creates or updates
25155// validation results. Please call this API after the training is
25156// completed to get the complete validation results.
25157//
25158// - name: The flow to validate. Format:
25159//   `projects//locations//agents//flows/`.
25160func (r *ProjectsLocationsAgentsFlowsService) Validate(name string, googleclouddialogflowcxv3beta1validateflowrequest *GoogleCloudDialogflowCxV3beta1ValidateFlowRequest) *ProjectsLocationsAgentsFlowsValidateCall {
25161	c := &ProjectsLocationsAgentsFlowsValidateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25162	c.name = name
25163	c.googleclouddialogflowcxv3beta1validateflowrequest = googleclouddialogflowcxv3beta1validateflowrequest
25164	return c
25165}
25166
25167// Fields allows partial responses to be retrieved. See
25168// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25169// for more information.
25170func (c *ProjectsLocationsAgentsFlowsValidateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsValidateCall {
25171	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25172	return c
25173}
25174
25175// Context sets the context to be used in this call's Do method. Any
25176// pending HTTP request will be aborted if the provided context is
25177// canceled.
25178func (c *ProjectsLocationsAgentsFlowsValidateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsValidateCall {
25179	c.ctx_ = ctx
25180	return c
25181}
25182
25183// Header returns an http.Header that can be modified by the caller to
25184// add HTTP headers to the request.
25185func (c *ProjectsLocationsAgentsFlowsValidateCall) Header() http.Header {
25186	if c.header_ == nil {
25187		c.header_ = make(http.Header)
25188	}
25189	return c.header_
25190}
25191
25192func (c *ProjectsLocationsAgentsFlowsValidateCall) doRequest(alt string) (*http.Response, error) {
25193	reqHeaders := make(http.Header)
25194	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25195	for k, v := range c.header_ {
25196		reqHeaders[k] = v
25197	}
25198	reqHeaders.Set("User-Agent", c.s.userAgent())
25199	var body io.Reader = nil
25200	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1validateflowrequest)
25201	if err != nil {
25202		return nil, err
25203	}
25204	reqHeaders.Set("Content-Type", "application/json")
25205	c.urlParams_.Set("alt", alt)
25206	c.urlParams_.Set("prettyPrint", "false")
25207	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:validate")
25208	urls += "?" + c.urlParams_.Encode()
25209	req, err := http.NewRequest("POST", urls, body)
25210	if err != nil {
25211		return nil, err
25212	}
25213	req.Header = reqHeaders
25214	googleapi.Expand(req.URL, map[string]string{
25215		"name": c.name,
25216	})
25217	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25218}
25219
25220// Do executes the "dialogflow.projects.locations.agents.flows.validate" call.
25221// Exactly one of *GoogleCloudDialogflowCxV3beta1FlowValidationResult or
25222// error will be non-nil. Any non-2xx status code is an error. Response
25223// headers are in either
25224// *GoogleCloudDialogflowCxV3beta1FlowValidationResult.ServerResponse.Hea
25225// der or (if a response was returned at all) in
25226// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25227// whether the returned error was because http.StatusNotModified was
25228// returned.
25229func (c *ProjectsLocationsAgentsFlowsValidateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1FlowValidationResult, error) {
25230	gensupport.SetOptions(c.urlParams_, opts...)
25231	res, err := c.doRequest("json")
25232	if res != nil && res.StatusCode == http.StatusNotModified {
25233		if res.Body != nil {
25234			res.Body.Close()
25235		}
25236		return nil, &googleapi.Error{
25237			Code:   res.StatusCode,
25238			Header: res.Header,
25239		}
25240	}
25241	if err != nil {
25242		return nil, err
25243	}
25244	defer googleapi.CloseBody(res)
25245	if err := googleapi.CheckResponse(res); err != nil {
25246		return nil, err
25247	}
25248	ret := &GoogleCloudDialogflowCxV3beta1FlowValidationResult{
25249		ServerResponse: googleapi.ServerResponse{
25250			Header:         res.Header,
25251			HTTPStatusCode: res.StatusCode,
25252		},
25253	}
25254	target := &ret
25255	if err := gensupport.DecodeResponse(target, res); err != nil {
25256		return nil, err
25257	}
25258	return ret, nil
25259	// {
25260	//   "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.",
25261	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}:validate",
25262	//   "httpMethod": "POST",
25263	//   "id": "dialogflow.projects.locations.agents.flows.validate",
25264	//   "parameterOrder": [
25265	//     "name"
25266	//   ],
25267	//   "parameters": {
25268	//     "name": {
25269	//       "description": "Required. The flow to validate. Format: `projects//locations//agents//flows/`.",
25270	//       "location": "path",
25271	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25272	//       "required": true,
25273	//       "type": "string"
25274	//     }
25275	//   },
25276	//   "path": "v3beta1/{+name}:validate",
25277	//   "request": {
25278	//     "$ref": "GoogleCloudDialogflowCxV3beta1ValidateFlowRequest"
25279	//   },
25280	//   "response": {
25281	//     "$ref": "GoogleCloudDialogflowCxV3beta1FlowValidationResult"
25282	//   },
25283	//   "scopes": [
25284	//     "https://www.googleapis.com/auth/cloud-platform",
25285	//     "https://www.googleapis.com/auth/dialogflow"
25286	//   ]
25287	// }
25288
25289}
25290
25291// method id "dialogflow.projects.locations.agents.flows.pages.create":
25292
25293type ProjectsLocationsAgentsFlowsPagesCreateCall struct {
25294	s                                  *Service
25295	parent                             string
25296	googleclouddialogflowcxv3beta1page *GoogleCloudDialogflowCxV3beta1Page
25297	urlParams_                         gensupport.URLParams
25298	ctx_                               context.Context
25299	header_                            http.Header
25300}
25301
25302// Create: Creates a page in the specified flow.
25303//
25304// - parent: The flow to create a page for. Format:
25305//   `projects//locations//agents//flows/`.
25306func (r *ProjectsLocationsAgentsFlowsPagesService) Create(parent string, googleclouddialogflowcxv3beta1page *GoogleCloudDialogflowCxV3beta1Page) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25307	c := &ProjectsLocationsAgentsFlowsPagesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25308	c.parent = parent
25309	c.googleclouddialogflowcxv3beta1page = googleclouddialogflowcxv3beta1page
25310	return c
25311}
25312
25313// LanguageCode sets the optional parameter "languageCode": The language
25314// of the following fields in `page`: *
25315// `Page.entry_fulfillment.messages` *
25316// `Page.entry_fulfillment.conditional_cases` *
25317// `Page.event_handlers.trigger_fulfillment.messages` *
25318// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25319// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25320// s` *
25321// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25322// onal_cases` *
25323// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25324// *
25325// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25326// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25327// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25328// specified, the agent's default language is used. Many languages
25329// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25330// supported. Note: languages must be enabled in the agent before they
25331// can be used.
25332func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25333	c.urlParams_.Set("languageCode", languageCode)
25334	return c
25335}
25336
25337// Fields allows partial responses to be retrieved. See
25338// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25339// for more information.
25340func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25341	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25342	return c
25343}
25344
25345// Context sets the context to be used in this call's Do method. Any
25346// pending HTTP request will be aborted if the provided context is
25347// canceled.
25348func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesCreateCall {
25349	c.ctx_ = ctx
25350	return c
25351}
25352
25353// Header returns an http.Header that can be modified by the caller to
25354// add HTTP headers to the request.
25355func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Header() http.Header {
25356	if c.header_ == nil {
25357		c.header_ = make(http.Header)
25358	}
25359	return c.header_
25360}
25361
25362func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) doRequest(alt string) (*http.Response, error) {
25363	reqHeaders := make(http.Header)
25364	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25365	for k, v := range c.header_ {
25366		reqHeaders[k] = v
25367	}
25368	reqHeaders.Set("User-Agent", c.s.userAgent())
25369	var body io.Reader = nil
25370	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1page)
25371	if err != nil {
25372		return nil, err
25373	}
25374	reqHeaders.Set("Content-Type", "application/json")
25375	c.urlParams_.Set("alt", alt)
25376	c.urlParams_.Set("prettyPrint", "false")
25377	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/pages")
25378	urls += "?" + c.urlParams_.Encode()
25379	req, err := http.NewRequest("POST", urls, body)
25380	if err != nil {
25381		return nil, err
25382	}
25383	req.Header = reqHeaders
25384	googleapi.Expand(req.URL, map[string]string{
25385		"parent": c.parent,
25386	})
25387	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25388}
25389
25390// Do executes the "dialogflow.projects.locations.agents.flows.pages.create" call.
25391// Exactly one of *GoogleCloudDialogflowCxV3beta1Page or error will be
25392// non-nil. Any non-2xx status code is an error. Response headers are in
25393// either *GoogleCloudDialogflowCxV3beta1Page.ServerResponse.Header or
25394// (if a response was returned at all) in
25395// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25396// whether the returned error was because http.StatusNotModified was
25397// returned.
25398func (c *ProjectsLocationsAgentsFlowsPagesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Page, error) {
25399	gensupport.SetOptions(c.urlParams_, opts...)
25400	res, err := c.doRequest("json")
25401	if res != nil && res.StatusCode == http.StatusNotModified {
25402		if res.Body != nil {
25403			res.Body.Close()
25404		}
25405		return nil, &googleapi.Error{
25406			Code:   res.StatusCode,
25407			Header: res.Header,
25408		}
25409	}
25410	if err != nil {
25411		return nil, err
25412	}
25413	defer googleapi.CloseBody(res)
25414	if err := googleapi.CheckResponse(res); err != nil {
25415		return nil, err
25416	}
25417	ret := &GoogleCloudDialogflowCxV3beta1Page{
25418		ServerResponse: googleapi.ServerResponse{
25419			Header:         res.Header,
25420			HTTPStatusCode: res.StatusCode,
25421		},
25422	}
25423	target := &ret
25424	if err := gensupport.DecodeResponse(target, res); err != nil {
25425		return nil, err
25426	}
25427	return ret, nil
25428	// {
25429	//   "description": "Creates a page in the specified flow.",
25430	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
25431	//   "httpMethod": "POST",
25432	//   "id": "dialogflow.projects.locations.agents.flows.pages.create",
25433	//   "parameterOrder": [
25434	//     "parent"
25435	//   ],
25436	//   "parameters": {
25437	//     "languageCode": {
25438	//       "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.",
25439	//       "location": "query",
25440	//       "type": "string"
25441	//     },
25442	//     "parent": {
25443	//       "description": "Required. The flow to create a page for. Format: `projects//locations//agents//flows/`.",
25444	//       "location": "path",
25445	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25446	//       "required": true,
25447	//       "type": "string"
25448	//     }
25449	//   },
25450	//   "path": "v3beta1/{+parent}/pages",
25451	//   "request": {
25452	//     "$ref": "GoogleCloudDialogflowCxV3beta1Page"
25453	//   },
25454	//   "response": {
25455	//     "$ref": "GoogleCloudDialogflowCxV3beta1Page"
25456	//   },
25457	//   "scopes": [
25458	//     "https://www.googleapis.com/auth/cloud-platform",
25459	//     "https://www.googleapis.com/auth/dialogflow"
25460	//   ]
25461	// }
25462
25463}
25464
25465// method id "dialogflow.projects.locations.agents.flows.pages.delete":
25466
25467type ProjectsLocationsAgentsFlowsPagesDeleteCall struct {
25468	s          *Service
25469	name       string
25470	urlParams_ gensupport.URLParams
25471	ctx_       context.Context
25472	header_    http.Header
25473}
25474
25475// Delete: Deletes the specified page.
25476//
25477// - name: The name of the page to delete. Format:
25478//   `projects//locations//agents//Flows//pages/`.
25479func (r *ProjectsLocationsAgentsFlowsPagesService) Delete(name string) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25480	c := &ProjectsLocationsAgentsFlowsPagesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25481	c.name = name
25482	return c
25483}
25484
25485// Force sets the optional parameter "force": This field has no effect
25486// for pages with no incoming transitions. For pages with incoming
25487// transitions: * If `force` is set to false, an error will be returned
25488// with message indicating the incoming transitions. * If `force` is set
25489// to true, Dialogflow will remove the page, as well as any transitions
25490// to the page (i.e. Target page in event handlers or Target page in
25491// transition routes that point to this page will be cleared).
25492func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25493	c.urlParams_.Set("force", fmt.Sprint(force))
25494	return c
25495}
25496
25497// Fields allows partial responses to be retrieved. See
25498// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25499// for more information.
25500func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25501	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25502	return c
25503}
25504
25505// Context sets the context to be used in this call's Do method. Any
25506// pending HTTP request will be aborted if the provided context is
25507// canceled.
25508func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesDeleteCall {
25509	c.ctx_ = ctx
25510	return c
25511}
25512
25513// Header returns an http.Header that can be modified by the caller to
25514// add HTTP headers to the request.
25515func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Header() http.Header {
25516	if c.header_ == nil {
25517		c.header_ = make(http.Header)
25518	}
25519	return c.header_
25520}
25521
25522func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) doRequest(alt string) (*http.Response, error) {
25523	reqHeaders := make(http.Header)
25524	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25525	for k, v := range c.header_ {
25526		reqHeaders[k] = v
25527	}
25528	reqHeaders.Set("User-Agent", c.s.userAgent())
25529	var body io.Reader = nil
25530	c.urlParams_.Set("alt", alt)
25531	c.urlParams_.Set("prettyPrint", "false")
25532	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
25533	urls += "?" + c.urlParams_.Encode()
25534	req, err := http.NewRequest("DELETE", urls, body)
25535	if err != nil {
25536		return nil, err
25537	}
25538	req.Header = reqHeaders
25539	googleapi.Expand(req.URL, map[string]string{
25540		"name": c.name,
25541	})
25542	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25543}
25544
25545// Do executes the "dialogflow.projects.locations.agents.flows.pages.delete" call.
25546// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
25547// non-2xx status code is an error. Response headers are in either
25548// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
25549// returned at all) in error.(*googleapi.Error).Header. Use
25550// googleapi.IsNotModified to check whether the returned error was
25551// because http.StatusNotModified was returned.
25552func (c *ProjectsLocationsAgentsFlowsPagesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
25553	gensupport.SetOptions(c.urlParams_, opts...)
25554	res, err := c.doRequest("json")
25555	if res != nil && res.StatusCode == http.StatusNotModified {
25556		if res.Body != nil {
25557			res.Body.Close()
25558		}
25559		return nil, &googleapi.Error{
25560			Code:   res.StatusCode,
25561			Header: res.Header,
25562		}
25563	}
25564	if err != nil {
25565		return nil, err
25566	}
25567	defer googleapi.CloseBody(res)
25568	if err := googleapi.CheckResponse(res); err != nil {
25569		return nil, err
25570	}
25571	ret := &GoogleProtobufEmpty{
25572		ServerResponse: googleapi.ServerResponse{
25573			Header:         res.Header,
25574			HTTPStatusCode: res.StatusCode,
25575		},
25576	}
25577	target := &ret
25578	if err := gensupport.DecodeResponse(target, res); err != nil {
25579		return nil, err
25580	}
25581	return ret, nil
25582	// {
25583	//   "description": "Deletes the specified page.",
25584	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
25585	//   "httpMethod": "DELETE",
25586	//   "id": "dialogflow.projects.locations.agents.flows.pages.delete",
25587	//   "parameterOrder": [
25588	//     "name"
25589	//   ],
25590	//   "parameters": {
25591	//     "force": {
25592	//       "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).",
25593	//       "location": "query",
25594	//       "type": "boolean"
25595	//     },
25596	//     "name": {
25597	//       "description": "Required. The name of the page to delete. Format: `projects//locations//agents//Flows//pages/`.",
25598	//       "location": "path",
25599	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
25600	//       "required": true,
25601	//       "type": "string"
25602	//     }
25603	//   },
25604	//   "path": "v3beta1/{+name}",
25605	//   "response": {
25606	//     "$ref": "GoogleProtobufEmpty"
25607	//   },
25608	//   "scopes": [
25609	//     "https://www.googleapis.com/auth/cloud-platform",
25610	//     "https://www.googleapis.com/auth/dialogflow"
25611	//   ]
25612	// }
25613
25614}
25615
25616// method id "dialogflow.projects.locations.agents.flows.pages.get":
25617
25618type ProjectsLocationsAgentsFlowsPagesGetCall struct {
25619	s            *Service
25620	name         string
25621	urlParams_   gensupport.URLParams
25622	ifNoneMatch_ string
25623	ctx_         context.Context
25624	header_      http.Header
25625}
25626
25627// Get: Retrieves the specified page.
25628//
25629// - name: The name of the page. Format:
25630//   `projects//locations//agents//flows//pages/`.
25631func (r *ProjectsLocationsAgentsFlowsPagesService) Get(name string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25632	c := &ProjectsLocationsAgentsFlowsPagesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25633	c.name = name
25634	return c
25635}
25636
25637// LanguageCode sets the optional parameter "languageCode": The language
25638// to retrieve the page for. The following fields are language
25639// dependent: * `Page.entry_fulfillment.messages` *
25640// `Page.entry_fulfillment.conditional_cases` *
25641// `Page.event_handlers.trigger_fulfillment.messages` *
25642// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25643// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25644// s` *
25645// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25646// onal_cases` *
25647// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25648// *
25649// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25650// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25651// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25652// specified, the agent's default language is used. Many languages
25653// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25654// supported. Note: languages must be enabled in the agent before they
25655// can be used.
25656func (c *ProjectsLocationsAgentsFlowsPagesGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25657	c.urlParams_.Set("languageCode", languageCode)
25658	return c
25659}
25660
25661// Fields allows partial responses to be retrieved. See
25662// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25663// for more information.
25664func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesGetCall {
25665	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25666	return c
25667}
25668
25669// IfNoneMatch sets the optional parameter which makes the operation
25670// fail if the object's ETag matches the given value. This is useful for
25671// getting updates only after the object has changed since the last
25672// request. Use googleapi.IsNotModified to check whether the response
25673// error from Do is the result of In-None-Match.
25674func (c *ProjectsLocationsAgentsFlowsPagesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesGetCall {
25675	c.ifNoneMatch_ = entityTag
25676	return c
25677}
25678
25679// Context sets the context to be used in this call's Do method. Any
25680// pending HTTP request will be aborted if the provided context is
25681// canceled.
25682func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesGetCall {
25683	c.ctx_ = ctx
25684	return c
25685}
25686
25687// Header returns an http.Header that can be modified by the caller to
25688// add HTTP headers to the request.
25689func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Header() http.Header {
25690	if c.header_ == nil {
25691		c.header_ = make(http.Header)
25692	}
25693	return c.header_
25694}
25695
25696func (c *ProjectsLocationsAgentsFlowsPagesGetCall) doRequest(alt string) (*http.Response, error) {
25697	reqHeaders := make(http.Header)
25698	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25699	for k, v := range c.header_ {
25700		reqHeaders[k] = v
25701	}
25702	reqHeaders.Set("User-Agent", c.s.userAgent())
25703	if c.ifNoneMatch_ != "" {
25704		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25705	}
25706	var body io.Reader = nil
25707	c.urlParams_.Set("alt", alt)
25708	c.urlParams_.Set("prettyPrint", "false")
25709	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
25710	urls += "?" + c.urlParams_.Encode()
25711	req, err := http.NewRequest("GET", urls, body)
25712	if err != nil {
25713		return nil, err
25714	}
25715	req.Header = reqHeaders
25716	googleapi.Expand(req.URL, map[string]string{
25717		"name": c.name,
25718	})
25719	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25720}
25721
25722// Do executes the "dialogflow.projects.locations.agents.flows.pages.get" call.
25723// Exactly one of *GoogleCloudDialogflowCxV3beta1Page or error will be
25724// non-nil. Any non-2xx status code is an error. Response headers are in
25725// either *GoogleCloudDialogflowCxV3beta1Page.ServerResponse.Header or
25726// (if a response was returned at all) in
25727// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25728// whether the returned error was because http.StatusNotModified was
25729// returned.
25730func (c *ProjectsLocationsAgentsFlowsPagesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Page, error) {
25731	gensupport.SetOptions(c.urlParams_, opts...)
25732	res, err := c.doRequest("json")
25733	if res != nil && res.StatusCode == http.StatusNotModified {
25734		if res.Body != nil {
25735			res.Body.Close()
25736		}
25737		return nil, &googleapi.Error{
25738			Code:   res.StatusCode,
25739			Header: res.Header,
25740		}
25741	}
25742	if err != nil {
25743		return nil, err
25744	}
25745	defer googleapi.CloseBody(res)
25746	if err := googleapi.CheckResponse(res); err != nil {
25747		return nil, err
25748	}
25749	ret := &GoogleCloudDialogflowCxV3beta1Page{
25750		ServerResponse: googleapi.ServerResponse{
25751			Header:         res.Header,
25752			HTTPStatusCode: res.StatusCode,
25753		},
25754	}
25755	target := &ret
25756	if err := gensupport.DecodeResponse(target, res); err != nil {
25757		return nil, err
25758	}
25759	return ret, nil
25760	// {
25761	//   "description": "Retrieves the specified page.",
25762	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
25763	//   "httpMethod": "GET",
25764	//   "id": "dialogflow.projects.locations.agents.flows.pages.get",
25765	//   "parameterOrder": [
25766	//     "name"
25767	//   ],
25768	//   "parameters": {
25769	//     "languageCode": {
25770	//       "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.",
25771	//       "location": "query",
25772	//       "type": "string"
25773	//     },
25774	//     "name": {
25775	//       "description": "Required. The name of the page. Format: `projects//locations//agents//flows//pages/`.",
25776	//       "location": "path",
25777	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
25778	//       "required": true,
25779	//       "type": "string"
25780	//     }
25781	//   },
25782	//   "path": "v3beta1/{+name}",
25783	//   "response": {
25784	//     "$ref": "GoogleCloudDialogflowCxV3beta1Page"
25785	//   },
25786	//   "scopes": [
25787	//     "https://www.googleapis.com/auth/cloud-platform",
25788	//     "https://www.googleapis.com/auth/dialogflow"
25789	//   ]
25790	// }
25791
25792}
25793
25794// method id "dialogflow.projects.locations.agents.flows.pages.list":
25795
25796type ProjectsLocationsAgentsFlowsPagesListCall struct {
25797	s            *Service
25798	parent       string
25799	urlParams_   gensupport.URLParams
25800	ifNoneMatch_ string
25801	ctx_         context.Context
25802	header_      http.Header
25803}
25804
25805// List: Returns the list of all pages in the specified flow.
25806//
25807// - parent: The flow to list all pages for. Format:
25808//   `projects//locations//agents//flows/`.
25809func (r *ProjectsLocationsAgentsFlowsPagesService) List(parent string) *ProjectsLocationsAgentsFlowsPagesListCall {
25810	c := &ProjectsLocationsAgentsFlowsPagesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
25811	c.parent = parent
25812	return c
25813}
25814
25815// LanguageCode sets the optional parameter "languageCode": The language
25816// to list pages for. The following fields are language dependent: *
25817// `Page.entry_fulfillment.messages` *
25818// `Page.entry_fulfillment.conditional_cases` *
25819// `Page.event_handlers.trigger_fulfillment.messages` *
25820// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
25821// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
25822// s` *
25823// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
25824// onal_cases` *
25825// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
25826// *
25827// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
25828// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
25829// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
25830// specified, the agent's default language is used. Many languages
25831// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
25832// supported. Note: languages must be enabled in the agent before they
25833// can be used.
25834func (c *ProjectsLocationsAgentsFlowsPagesListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesListCall {
25835	c.urlParams_.Set("languageCode", languageCode)
25836	return c
25837}
25838
25839// PageSize sets the optional parameter "pageSize": The maximum number
25840// of items to return in a single page. By default 100 and at most 1000.
25841func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsPagesListCall {
25842	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
25843	return c
25844}
25845
25846// PageToken sets the optional parameter "pageToken": The
25847// next_page_token value returned from a previous list request.
25848func (c *ProjectsLocationsAgentsFlowsPagesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsPagesListCall {
25849	c.urlParams_.Set("pageToken", pageToken)
25850	return c
25851}
25852
25853// Fields allows partial responses to be retrieved. See
25854// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
25855// for more information.
25856func (c *ProjectsLocationsAgentsFlowsPagesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesListCall {
25857	c.urlParams_.Set("fields", googleapi.CombineFields(s))
25858	return c
25859}
25860
25861// IfNoneMatch sets the optional parameter which makes the operation
25862// fail if the object's ETag matches the given value. This is useful for
25863// getting updates only after the object has changed since the last
25864// request. Use googleapi.IsNotModified to check whether the response
25865// error from Do is the result of In-None-Match.
25866func (c *ProjectsLocationsAgentsFlowsPagesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsPagesListCall {
25867	c.ifNoneMatch_ = entityTag
25868	return c
25869}
25870
25871// Context sets the context to be used in this call's Do method. Any
25872// pending HTTP request will be aborted if the provided context is
25873// canceled.
25874func (c *ProjectsLocationsAgentsFlowsPagesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesListCall {
25875	c.ctx_ = ctx
25876	return c
25877}
25878
25879// Header returns an http.Header that can be modified by the caller to
25880// add HTTP headers to the request.
25881func (c *ProjectsLocationsAgentsFlowsPagesListCall) Header() http.Header {
25882	if c.header_ == nil {
25883		c.header_ = make(http.Header)
25884	}
25885	return c.header_
25886}
25887
25888func (c *ProjectsLocationsAgentsFlowsPagesListCall) doRequest(alt string) (*http.Response, error) {
25889	reqHeaders := make(http.Header)
25890	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
25891	for k, v := range c.header_ {
25892		reqHeaders[k] = v
25893	}
25894	reqHeaders.Set("User-Agent", c.s.userAgent())
25895	if c.ifNoneMatch_ != "" {
25896		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
25897	}
25898	var body io.Reader = nil
25899	c.urlParams_.Set("alt", alt)
25900	c.urlParams_.Set("prettyPrint", "false")
25901	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/pages")
25902	urls += "?" + c.urlParams_.Encode()
25903	req, err := http.NewRequest("GET", urls, body)
25904	if err != nil {
25905		return nil, err
25906	}
25907	req.Header = reqHeaders
25908	googleapi.Expand(req.URL, map[string]string{
25909		"parent": c.parent,
25910	})
25911	return gensupport.SendRequest(c.ctx_, c.s.client, req)
25912}
25913
25914// Do executes the "dialogflow.projects.locations.agents.flows.pages.list" call.
25915// Exactly one of *GoogleCloudDialogflowCxV3beta1ListPagesResponse or
25916// error will be non-nil. Any non-2xx status code is an error. Response
25917// headers are in either
25918// *GoogleCloudDialogflowCxV3beta1ListPagesResponse.ServerResponse.Header
25919//  or (if a response was returned at all) in
25920// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
25921// whether the returned error was because http.StatusNotModified was
25922// returned.
25923func (c *ProjectsLocationsAgentsFlowsPagesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListPagesResponse, error) {
25924	gensupport.SetOptions(c.urlParams_, opts...)
25925	res, err := c.doRequest("json")
25926	if res != nil && res.StatusCode == http.StatusNotModified {
25927		if res.Body != nil {
25928			res.Body.Close()
25929		}
25930		return nil, &googleapi.Error{
25931			Code:   res.StatusCode,
25932			Header: res.Header,
25933		}
25934	}
25935	if err != nil {
25936		return nil, err
25937	}
25938	defer googleapi.CloseBody(res)
25939	if err := googleapi.CheckResponse(res); err != nil {
25940		return nil, err
25941	}
25942	ret := &GoogleCloudDialogflowCxV3beta1ListPagesResponse{
25943		ServerResponse: googleapi.ServerResponse{
25944			Header:         res.Header,
25945			HTTPStatusCode: res.StatusCode,
25946		},
25947	}
25948	target := &ret
25949	if err := gensupport.DecodeResponse(target, res); err != nil {
25950		return nil, err
25951	}
25952	return ret, nil
25953	// {
25954	//   "description": "Returns the list of all pages in the specified flow.",
25955	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages",
25956	//   "httpMethod": "GET",
25957	//   "id": "dialogflow.projects.locations.agents.flows.pages.list",
25958	//   "parameterOrder": [
25959	//     "parent"
25960	//   ],
25961	//   "parameters": {
25962	//     "languageCode": {
25963	//       "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.",
25964	//       "location": "query",
25965	//       "type": "string"
25966	//     },
25967	//     "pageSize": {
25968	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
25969	//       "format": "int32",
25970	//       "location": "query",
25971	//       "type": "integer"
25972	//     },
25973	//     "pageToken": {
25974	//       "description": "The next_page_token value returned from a previous list request.",
25975	//       "location": "query",
25976	//       "type": "string"
25977	//     },
25978	//     "parent": {
25979	//       "description": "Required. The flow to list all pages for. Format: `projects//locations//agents//flows/`.",
25980	//       "location": "path",
25981	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
25982	//       "required": true,
25983	//       "type": "string"
25984	//     }
25985	//   },
25986	//   "path": "v3beta1/{+parent}/pages",
25987	//   "response": {
25988	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListPagesResponse"
25989	//   },
25990	//   "scopes": [
25991	//     "https://www.googleapis.com/auth/cloud-platform",
25992	//     "https://www.googleapis.com/auth/dialogflow"
25993	//   ]
25994	// }
25995
25996}
25997
25998// Pages invokes f for each page of results.
25999// A non-nil error returned from f will halt the iteration.
26000// The provided context supersedes any context provided to the Context method.
26001func (c *ProjectsLocationsAgentsFlowsPagesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListPagesResponse) error) error {
26002	c.ctx_ = ctx
26003	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26004	for {
26005		x, err := c.Do()
26006		if err != nil {
26007			return err
26008		}
26009		if err := f(x); err != nil {
26010			return err
26011		}
26012		if x.NextPageToken == "" {
26013			return nil
26014		}
26015		c.PageToken(x.NextPageToken)
26016	}
26017}
26018
26019// method id "dialogflow.projects.locations.agents.flows.pages.patch":
26020
26021type ProjectsLocationsAgentsFlowsPagesPatchCall struct {
26022	s                                  *Service
26023	nameid                             string
26024	googleclouddialogflowcxv3beta1page *GoogleCloudDialogflowCxV3beta1Page
26025	urlParams_                         gensupport.URLParams
26026	ctx_                               context.Context
26027	header_                            http.Header
26028}
26029
26030// Patch: Updates the specified page.
26031//
26032// - name: The unique identifier of the page. Required for the
26033//   Pages.UpdatePage method. Pages.CreatePage populates the name
26034//   automatically. Format:
26035//   `projects//locations//agents//flows//pages/`.
26036func (r *ProjectsLocationsAgentsFlowsPagesService) Patch(nameid string, googleclouddialogflowcxv3beta1page *GoogleCloudDialogflowCxV3beta1Page) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26037	c := &ProjectsLocationsAgentsFlowsPagesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26038	c.nameid = nameid
26039	c.googleclouddialogflowcxv3beta1page = googleclouddialogflowcxv3beta1page
26040	return c
26041}
26042
26043// LanguageCode sets the optional parameter "languageCode": The language
26044// of the following fields in `page`: *
26045// `Page.entry_fulfillment.messages` *
26046// `Page.entry_fulfillment.conditional_cases` *
26047// `Page.event_handlers.trigger_fulfillment.messages` *
26048// `Page.event_handlers.trigger_fulfillment.conditional_cases` *
26049// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.message
26050// s` *
26051// `Page.form.parameters.fill_behavior.initial_prompt_fulfillment.conditi
26052// onal_cases` *
26053// `Page.form.parameters.fill_behavior.reprompt_event_handlers.messages`
26054// *
26055// `Page.form.parameters.fill_behavior.reprompt_event_handlers.conditiona
26056// l_cases` * `Page.transition_routes.trigger_fulfillment.messages` *
26057// `Page.transition_routes.trigger_fulfillment.conditional_cases` If not
26058// specified, the agent's default language is used. Many languages
26059// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26060// supported. Note: languages must be enabled in the agent before they
26061// can be used.
26062func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26063	c.urlParams_.Set("languageCode", languageCode)
26064	return c
26065}
26066
26067// UpdateMask sets the optional parameter "updateMask": The mask to
26068// control which fields get updated. If the mask is not present, all
26069// fields will be updated.
26070func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26071	c.urlParams_.Set("updateMask", updateMask)
26072	return c
26073}
26074
26075// Fields allows partial responses to be retrieved. See
26076// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26077// for more information.
26078func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26079	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26080	return c
26081}
26082
26083// Context sets the context to be used in this call's Do method. Any
26084// pending HTTP request will be aborted if the provided context is
26085// canceled.
26086func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsPagesPatchCall {
26087	c.ctx_ = ctx
26088	return c
26089}
26090
26091// Header returns an http.Header that can be modified by the caller to
26092// add HTTP headers to the request.
26093func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Header() http.Header {
26094	if c.header_ == nil {
26095		c.header_ = make(http.Header)
26096	}
26097	return c.header_
26098}
26099
26100func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) doRequest(alt string) (*http.Response, error) {
26101	reqHeaders := make(http.Header)
26102	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26103	for k, v := range c.header_ {
26104		reqHeaders[k] = v
26105	}
26106	reqHeaders.Set("User-Agent", c.s.userAgent())
26107	var body io.Reader = nil
26108	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1page)
26109	if err != nil {
26110		return nil, err
26111	}
26112	reqHeaders.Set("Content-Type", "application/json")
26113	c.urlParams_.Set("alt", alt)
26114	c.urlParams_.Set("prettyPrint", "false")
26115	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
26116	urls += "?" + c.urlParams_.Encode()
26117	req, err := http.NewRequest("PATCH", urls, body)
26118	if err != nil {
26119		return nil, err
26120	}
26121	req.Header = reqHeaders
26122	googleapi.Expand(req.URL, map[string]string{
26123		"name": c.nameid,
26124	})
26125	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26126}
26127
26128// Do executes the "dialogflow.projects.locations.agents.flows.pages.patch" call.
26129// Exactly one of *GoogleCloudDialogflowCxV3beta1Page or error will be
26130// non-nil. Any non-2xx status code is an error. Response headers are in
26131// either *GoogleCloudDialogflowCxV3beta1Page.ServerResponse.Header or
26132// (if a response was returned at all) in
26133// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26134// whether the returned error was because http.StatusNotModified was
26135// returned.
26136func (c *ProjectsLocationsAgentsFlowsPagesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Page, error) {
26137	gensupport.SetOptions(c.urlParams_, opts...)
26138	res, err := c.doRequest("json")
26139	if res != nil && res.StatusCode == http.StatusNotModified {
26140		if res.Body != nil {
26141			res.Body.Close()
26142		}
26143		return nil, &googleapi.Error{
26144			Code:   res.StatusCode,
26145			Header: res.Header,
26146		}
26147	}
26148	if err != nil {
26149		return nil, err
26150	}
26151	defer googleapi.CloseBody(res)
26152	if err := googleapi.CheckResponse(res); err != nil {
26153		return nil, err
26154	}
26155	ret := &GoogleCloudDialogflowCxV3beta1Page{
26156		ServerResponse: googleapi.ServerResponse{
26157			Header:         res.Header,
26158			HTTPStatusCode: res.StatusCode,
26159		},
26160	}
26161	target := &ret
26162	if err := gensupport.DecodeResponse(target, res); err != nil {
26163		return nil, err
26164	}
26165	return ret, nil
26166	// {
26167	//   "description": "Updates the specified page.",
26168	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/pages/{pagesId}",
26169	//   "httpMethod": "PATCH",
26170	//   "id": "dialogflow.projects.locations.agents.flows.pages.patch",
26171	//   "parameterOrder": [
26172	//     "name"
26173	//   ],
26174	//   "parameters": {
26175	//     "languageCode": {
26176	//       "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.",
26177	//       "location": "query",
26178	//       "type": "string"
26179	//     },
26180	//     "name": {
26181	//       "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/`.",
26182	//       "location": "path",
26183	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/pages/[^/]+$",
26184	//       "required": true,
26185	//       "type": "string"
26186	//     },
26187	//     "updateMask": {
26188	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
26189	//       "format": "google-fieldmask",
26190	//       "location": "query",
26191	//       "type": "string"
26192	//     }
26193	//   },
26194	//   "path": "v3beta1/{+name}",
26195	//   "request": {
26196	//     "$ref": "GoogleCloudDialogflowCxV3beta1Page"
26197	//   },
26198	//   "response": {
26199	//     "$ref": "GoogleCloudDialogflowCxV3beta1Page"
26200	//   },
26201	//   "scopes": [
26202	//     "https://www.googleapis.com/auth/cloud-platform",
26203	//     "https://www.googleapis.com/auth/dialogflow"
26204	//   ]
26205	// }
26206
26207}
26208
26209// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create":
26210
26211type ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall struct {
26212	s                                                  *Service
26213	parent                                             string
26214	googleclouddialogflowcxv3beta1transitionroutegroup *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup
26215	urlParams_                                         gensupport.URLParams
26216	ctx_                                               context.Context
26217	header_                                            http.Header
26218}
26219
26220// Create: Creates an TransitionRouteGroup in the specified flow. Note:
26221// You should always train a flow prior to sending it queries. See the
26222// training documentation
26223// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26224//
26225// - parent: The flow to create an TransitionRouteGroup for. Format:
26226//   `projects//locations//agents//flows/`.
26227func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Create(parent string, googleclouddialogflowcxv3beta1transitionroutegroup *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26228	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26229	c.parent = parent
26230	c.googleclouddialogflowcxv3beta1transitionroutegroup = googleclouddialogflowcxv3beta1transitionroutegroup
26231	return c
26232}
26233
26234// LanguageCode sets the optional parameter "languageCode": The language
26235// of the following fields in `TransitionRouteGroup`: *
26236// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26237// *
26238// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26239// l_cases` If not specified, the agent's default language is used. Many
26240// languages
26241// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26242// supported. Note: languages must be enabled in the agent before they
26243// can be used.
26244func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26245	c.urlParams_.Set("languageCode", languageCode)
26246	return c
26247}
26248
26249// Fields allows partial responses to be retrieved. See
26250// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26251// for more information.
26252func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26253	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26254	return c
26255}
26256
26257// Context sets the context to be used in this call's Do method. Any
26258// pending HTTP request will be aborted if the provided context is
26259// canceled.
26260func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall {
26261	c.ctx_ = ctx
26262	return c
26263}
26264
26265// Header returns an http.Header that can be modified by the caller to
26266// add HTTP headers to the request.
26267func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Header() http.Header {
26268	if c.header_ == nil {
26269		c.header_ = make(http.Header)
26270	}
26271	return c.header_
26272}
26273
26274func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) doRequest(alt string) (*http.Response, error) {
26275	reqHeaders := make(http.Header)
26276	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26277	for k, v := range c.header_ {
26278		reqHeaders[k] = v
26279	}
26280	reqHeaders.Set("User-Agent", c.s.userAgent())
26281	var body io.Reader = nil
26282	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1transitionroutegroup)
26283	if err != nil {
26284		return nil, err
26285	}
26286	reqHeaders.Set("Content-Type", "application/json")
26287	c.urlParams_.Set("alt", alt)
26288	c.urlParams_.Set("prettyPrint", "false")
26289	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/transitionRouteGroups")
26290	urls += "?" + c.urlParams_.Encode()
26291	req, err := http.NewRequest("POST", urls, body)
26292	if err != nil {
26293		return nil, err
26294	}
26295	req.Header = reqHeaders
26296	googleapi.Expand(req.URL, map[string]string{
26297		"parent": c.parent,
26298	})
26299	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26300}
26301
26302// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create" call.
26303// Exactly one of *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup or
26304// error will be non-nil. Any non-2xx status code is an error. Response
26305// headers are in either
26306// *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup.ServerResponse.Hea
26307// der or (if a response was returned at all) in
26308// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26309// whether the returned error was because http.StatusNotModified was
26310// returned.
26311func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TransitionRouteGroup, error) {
26312	gensupport.SetOptions(c.urlParams_, opts...)
26313	res, err := c.doRequest("json")
26314	if res != nil && res.StatusCode == http.StatusNotModified {
26315		if res.Body != nil {
26316			res.Body.Close()
26317		}
26318		return nil, &googleapi.Error{
26319			Code:   res.StatusCode,
26320			Header: res.Header,
26321		}
26322	}
26323	if err != nil {
26324		return nil, err
26325	}
26326	defer googleapi.CloseBody(res)
26327	if err := googleapi.CheckResponse(res); err != nil {
26328		return nil, err
26329	}
26330	ret := &GoogleCloudDialogflowCxV3beta1TransitionRouteGroup{
26331		ServerResponse: googleapi.ServerResponse{
26332			Header:         res.Header,
26333			HTTPStatusCode: res.StatusCode,
26334		},
26335	}
26336	target := &ret
26337	if err := gensupport.DecodeResponse(target, res); err != nil {
26338		return nil, err
26339	}
26340	return ret, nil
26341	// {
26342	//   "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).",
26343	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
26344	//   "httpMethod": "POST",
26345	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.create",
26346	//   "parameterOrder": [
26347	//     "parent"
26348	//   ],
26349	//   "parameters": {
26350	//     "languageCode": {
26351	//       "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.",
26352	//       "location": "query",
26353	//       "type": "string"
26354	//     },
26355	//     "parent": {
26356	//       "description": "Required. The flow to create an TransitionRouteGroup for. Format: `projects//locations//agents//flows/`.",
26357	//       "location": "path",
26358	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26359	//       "required": true,
26360	//       "type": "string"
26361	//     }
26362	//   },
26363	//   "path": "v3beta1/{+parent}/transitionRouteGroups",
26364	//   "request": {
26365	//     "$ref": "GoogleCloudDialogflowCxV3beta1TransitionRouteGroup"
26366	//   },
26367	//   "response": {
26368	//     "$ref": "GoogleCloudDialogflowCxV3beta1TransitionRouteGroup"
26369	//   },
26370	//   "scopes": [
26371	//     "https://www.googleapis.com/auth/cloud-platform",
26372	//     "https://www.googleapis.com/auth/dialogflow"
26373	//   ]
26374	// }
26375
26376}
26377
26378// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete":
26379
26380type ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall struct {
26381	s          *Service
26382	name       string
26383	urlParams_ gensupport.URLParams
26384	ctx_       context.Context
26385	header_    http.Header
26386}
26387
26388// Delete: Deletes the specified TransitionRouteGroup. Note: You should
26389// always train a flow prior to sending it queries. See the training
26390// documentation
26391// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26392//
26393// - name: The name of the TransitionRouteGroup to delete. Format:
26394//   `projects//locations//agents//flows//transitionRouteGroups/`.
26395func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Delete(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26396	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26397	c.name = name
26398	return c
26399}
26400
26401// Force sets the optional parameter "force": This field has no effect
26402// for transition route group that no page is using. If the transition
26403// route group is referenced by any page: * If `force` is set to false,
26404// an error will be returned with message indicating pages that
26405// reference the transition route group. * If `force` is set to true,
26406// Dialogflow will remove the transition route group, as well as any
26407// reference to it.
26408func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Force(force bool) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26409	c.urlParams_.Set("force", fmt.Sprint(force))
26410	return c
26411}
26412
26413// Fields allows partial responses to be retrieved. See
26414// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26415// for more information.
26416func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26417	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26418	return c
26419}
26420
26421// Context sets the context to be used in this call's Do method. Any
26422// pending HTTP request will be aborted if the provided context is
26423// canceled.
26424func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall {
26425	c.ctx_ = ctx
26426	return c
26427}
26428
26429// Header returns an http.Header that can be modified by the caller to
26430// add HTTP headers to the request.
26431func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Header() http.Header {
26432	if c.header_ == nil {
26433		c.header_ = make(http.Header)
26434	}
26435	return c.header_
26436}
26437
26438func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) doRequest(alt string) (*http.Response, error) {
26439	reqHeaders := make(http.Header)
26440	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26441	for k, v := range c.header_ {
26442		reqHeaders[k] = v
26443	}
26444	reqHeaders.Set("User-Agent", c.s.userAgent())
26445	var body io.Reader = nil
26446	c.urlParams_.Set("alt", alt)
26447	c.urlParams_.Set("prettyPrint", "false")
26448	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
26449	urls += "?" + c.urlParams_.Encode()
26450	req, err := http.NewRequest("DELETE", urls, body)
26451	if err != nil {
26452		return nil, err
26453	}
26454	req.Header = reqHeaders
26455	googleapi.Expand(req.URL, map[string]string{
26456		"name": c.name,
26457	})
26458	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26459}
26460
26461// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete" call.
26462// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
26463// non-2xx status code is an error. Response headers are in either
26464// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
26465// returned at all) in error.(*googleapi.Error).Header. Use
26466// googleapi.IsNotModified to check whether the returned error was
26467// because http.StatusNotModified was returned.
26468func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
26469	gensupport.SetOptions(c.urlParams_, opts...)
26470	res, err := c.doRequest("json")
26471	if res != nil && res.StatusCode == http.StatusNotModified {
26472		if res.Body != nil {
26473			res.Body.Close()
26474		}
26475		return nil, &googleapi.Error{
26476			Code:   res.StatusCode,
26477			Header: res.Header,
26478		}
26479	}
26480	if err != nil {
26481		return nil, err
26482	}
26483	defer googleapi.CloseBody(res)
26484	if err := googleapi.CheckResponse(res); err != nil {
26485		return nil, err
26486	}
26487	ret := &GoogleProtobufEmpty{
26488		ServerResponse: googleapi.ServerResponse{
26489			Header:         res.Header,
26490			HTTPStatusCode: res.StatusCode,
26491		},
26492	}
26493	target := &ret
26494	if err := gensupport.DecodeResponse(target, res); err != nil {
26495		return nil, err
26496	}
26497	return ret, nil
26498	// {
26499	//   "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).",
26500	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
26501	//   "httpMethod": "DELETE",
26502	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.delete",
26503	//   "parameterOrder": [
26504	//     "name"
26505	//   ],
26506	//   "parameters": {
26507	//     "force": {
26508	//       "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.",
26509	//       "location": "query",
26510	//       "type": "boolean"
26511	//     },
26512	//     "name": {
26513	//       "description": "Required. The name of the TransitionRouteGroup to delete. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
26514	//       "location": "path",
26515	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
26516	//       "required": true,
26517	//       "type": "string"
26518	//     }
26519	//   },
26520	//   "path": "v3beta1/{+name}",
26521	//   "response": {
26522	//     "$ref": "GoogleProtobufEmpty"
26523	//   },
26524	//   "scopes": [
26525	//     "https://www.googleapis.com/auth/cloud-platform",
26526	//     "https://www.googleapis.com/auth/dialogflow"
26527	//   ]
26528	// }
26529
26530}
26531
26532// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get":
26533
26534type ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall struct {
26535	s            *Service
26536	name         string
26537	urlParams_   gensupport.URLParams
26538	ifNoneMatch_ string
26539	ctx_         context.Context
26540	header_      http.Header
26541}
26542
26543// Get: Retrieves the specified TransitionRouteGroup.
26544//
26545// - name: The name of the TransitionRouteGroup. Format:
26546//   `projects//locations//agents//flows//transitionRouteGroups/`.
26547func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Get(name string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26548	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26549	c.name = name
26550	return c
26551}
26552
26553// LanguageCode sets the optional parameter "languageCode": The language
26554// to retrieve the transition route group for. The following fields are
26555// language dependent: *
26556// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26557// *
26558// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26559// l_cases` If not specified, the agent's default language is used. Many
26560// languages
26561// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26562// supported. Note: languages must be enabled in the agent before they
26563// can be used.
26564func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26565	c.urlParams_.Set("languageCode", languageCode)
26566	return c
26567}
26568
26569// Fields allows partial responses to be retrieved. See
26570// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26571// for more information.
26572func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26573	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26574	return c
26575}
26576
26577// IfNoneMatch sets the optional parameter which makes the operation
26578// fail if the object's ETag matches the given value. This is useful for
26579// getting updates only after the object has changed since the last
26580// request. Use googleapi.IsNotModified to check whether the response
26581// error from Do is the result of In-None-Match.
26582func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26583	c.ifNoneMatch_ = entityTag
26584	return c
26585}
26586
26587// Context sets the context to be used in this call's Do method. Any
26588// pending HTTP request will be aborted if the provided context is
26589// canceled.
26590func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall {
26591	c.ctx_ = ctx
26592	return c
26593}
26594
26595// Header returns an http.Header that can be modified by the caller to
26596// add HTTP headers to the request.
26597func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Header() http.Header {
26598	if c.header_ == nil {
26599		c.header_ = make(http.Header)
26600	}
26601	return c.header_
26602}
26603
26604func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) doRequest(alt string) (*http.Response, error) {
26605	reqHeaders := make(http.Header)
26606	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26607	for k, v := range c.header_ {
26608		reqHeaders[k] = v
26609	}
26610	reqHeaders.Set("User-Agent", c.s.userAgent())
26611	if c.ifNoneMatch_ != "" {
26612		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26613	}
26614	var body io.Reader = nil
26615	c.urlParams_.Set("alt", alt)
26616	c.urlParams_.Set("prettyPrint", "false")
26617	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
26618	urls += "?" + c.urlParams_.Encode()
26619	req, err := http.NewRequest("GET", urls, body)
26620	if err != nil {
26621		return nil, err
26622	}
26623	req.Header = reqHeaders
26624	googleapi.Expand(req.URL, map[string]string{
26625		"name": c.name,
26626	})
26627	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26628}
26629
26630// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get" call.
26631// Exactly one of *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup or
26632// error will be non-nil. Any non-2xx status code is an error. Response
26633// headers are in either
26634// *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup.ServerResponse.Hea
26635// der or (if a response was returned at all) in
26636// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26637// whether the returned error was because http.StatusNotModified was
26638// returned.
26639func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TransitionRouteGroup, error) {
26640	gensupport.SetOptions(c.urlParams_, opts...)
26641	res, err := c.doRequest("json")
26642	if res != nil && res.StatusCode == http.StatusNotModified {
26643		if res.Body != nil {
26644			res.Body.Close()
26645		}
26646		return nil, &googleapi.Error{
26647			Code:   res.StatusCode,
26648			Header: res.Header,
26649		}
26650	}
26651	if err != nil {
26652		return nil, err
26653	}
26654	defer googleapi.CloseBody(res)
26655	if err := googleapi.CheckResponse(res); err != nil {
26656		return nil, err
26657	}
26658	ret := &GoogleCloudDialogflowCxV3beta1TransitionRouteGroup{
26659		ServerResponse: googleapi.ServerResponse{
26660			Header:         res.Header,
26661			HTTPStatusCode: res.StatusCode,
26662		},
26663	}
26664	target := &ret
26665	if err := gensupport.DecodeResponse(target, res); err != nil {
26666		return nil, err
26667	}
26668	return ret, nil
26669	// {
26670	//   "description": "Retrieves the specified TransitionRouteGroup.",
26671	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
26672	//   "httpMethod": "GET",
26673	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.get",
26674	//   "parameterOrder": [
26675	//     "name"
26676	//   ],
26677	//   "parameters": {
26678	//     "languageCode": {
26679	//       "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.",
26680	//       "location": "query",
26681	//       "type": "string"
26682	//     },
26683	//     "name": {
26684	//       "description": "Required. The name of the TransitionRouteGroup. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
26685	//       "location": "path",
26686	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
26687	//       "required": true,
26688	//       "type": "string"
26689	//     }
26690	//   },
26691	//   "path": "v3beta1/{+name}",
26692	//   "response": {
26693	//     "$ref": "GoogleCloudDialogflowCxV3beta1TransitionRouteGroup"
26694	//   },
26695	//   "scopes": [
26696	//     "https://www.googleapis.com/auth/cloud-platform",
26697	//     "https://www.googleapis.com/auth/dialogflow"
26698	//   ]
26699	// }
26700
26701}
26702
26703// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list":
26704
26705type ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall struct {
26706	s            *Service
26707	parent       string
26708	urlParams_   gensupport.URLParams
26709	ifNoneMatch_ string
26710	ctx_         context.Context
26711	header_      http.Header
26712}
26713
26714// List: Returns the list of all transition route groups in the
26715// specified flow.
26716//
26717// - parent: The flow to list all transition route groups for. Format:
26718//   `projects//locations//agents//flows/`.
26719func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) List(parent string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26720	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26721	c.parent = parent
26722	return c
26723}
26724
26725// LanguageCode sets the optional parameter "languageCode": The language
26726// to list transition route groups for. The following fields are
26727// language dependent: *
26728// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26729// *
26730// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26731// l_cases` If not specified, the agent's default language is used. Many
26732// languages
26733// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26734// supported. Note: languages must be enabled in the agent before they
26735// can be used.
26736func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26737	c.urlParams_.Set("languageCode", languageCode)
26738	return c
26739}
26740
26741// PageSize sets the optional parameter "pageSize": The maximum number
26742// of items to return in a single page. By default 100 and at most 1000.
26743func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26744	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
26745	return c
26746}
26747
26748// PageToken sets the optional parameter "pageToken": The
26749// next_page_token value returned from a previous list request.
26750func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26751	c.urlParams_.Set("pageToken", pageToken)
26752	return c
26753}
26754
26755// Fields allows partial responses to be retrieved. See
26756// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26757// for more information.
26758func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26759	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26760	return c
26761}
26762
26763// IfNoneMatch sets the optional parameter which makes the operation
26764// fail if the object's ETag matches the given value. This is useful for
26765// getting updates only after the object has changed since the last
26766// request. Use googleapi.IsNotModified to check whether the response
26767// error from Do is the result of In-None-Match.
26768func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26769	c.ifNoneMatch_ = entityTag
26770	return c
26771}
26772
26773// Context sets the context to be used in this call's Do method. Any
26774// pending HTTP request will be aborted if the provided context is
26775// canceled.
26776func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall {
26777	c.ctx_ = ctx
26778	return c
26779}
26780
26781// Header returns an http.Header that can be modified by the caller to
26782// add HTTP headers to the request.
26783func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Header() http.Header {
26784	if c.header_ == nil {
26785		c.header_ = make(http.Header)
26786	}
26787	return c.header_
26788}
26789
26790func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) doRequest(alt string) (*http.Response, error) {
26791	reqHeaders := make(http.Header)
26792	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26793	for k, v := range c.header_ {
26794		reqHeaders[k] = v
26795	}
26796	reqHeaders.Set("User-Agent", c.s.userAgent())
26797	if c.ifNoneMatch_ != "" {
26798		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
26799	}
26800	var body io.Reader = nil
26801	c.urlParams_.Set("alt", alt)
26802	c.urlParams_.Set("prettyPrint", "false")
26803	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/transitionRouteGroups")
26804	urls += "?" + c.urlParams_.Encode()
26805	req, err := http.NewRequest("GET", urls, body)
26806	if err != nil {
26807		return nil, err
26808	}
26809	req.Header = reqHeaders
26810	googleapi.Expand(req.URL, map[string]string{
26811		"parent": c.parent,
26812	})
26813	return gensupport.SendRequest(c.ctx_, c.s.client, req)
26814}
26815
26816// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list" call.
26817// Exactly one of
26818// *GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse or
26819// error will be non-nil. Any non-2xx status code is an error. Response
26820// headers are in either
26821// *GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse.Serve
26822// rResponse.Header or (if a response was returned at all) in
26823// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
26824// whether the returned error was because http.StatusNotModified was
26825// returned.
26826func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse, error) {
26827	gensupport.SetOptions(c.urlParams_, opts...)
26828	res, err := c.doRequest("json")
26829	if res != nil && res.StatusCode == http.StatusNotModified {
26830		if res.Body != nil {
26831			res.Body.Close()
26832		}
26833		return nil, &googleapi.Error{
26834			Code:   res.StatusCode,
26835			Header: res.Header,
26836		}
26837	}
26838	if err != nil {
26839		return nil, err
26840	}
26841	defer googleapi.CloseBody(res)
26842	if err := googleapi.CheckResponse(res); err != nil {
26843		return nil, err
26844	}
26845	ret := &GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse{
26846		ServerResponse: googleapi.ServerResponse{
26847			Header:         res.Header,
26848			HTTPStatusCode: res.StatusCode,
26849		},
26850	}
26851	target := &ret
26852	if err := gensupport.DecodeResponse(target, res); err != nil {
26853		return nil, err
26854	}
26855	return ret, nil
26856	// {
26857	//   "description": "Returns the list of all transition route groups in the specified flow.",
26858	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups",
26859	//   "httpMethod": "GET",
26860	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.list",
26861	//   "parameterOrder": [
26862	//     "parent"
26863	//   ],
26864	//   "parameters": {
26865	//     "languageCode": {
26866	//       "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.",
26867	//       "location": "query",
26868	//       "type": "string"
26869	//     },
26870	//     "pageSize": {
26871	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
26872	//       "format": "int32",
26873	//       "location": "query",
26874	//       "type": "integer"
26875	//     },
26876	//     "pageToken": {
26877	//       "description": "The next_page_token value returned from a previous list request.",
26878	//       "location": "query",
26879	//       "type": "string"
26880	//     },
26881	//     "parent": {
26882	//       "description": "Required. The flow to list all transition route groups for. Format: `projects//locations//agents//flows/`.",
26883	//       "location": "path",
26884	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
26885	//       "required": true,
26886	//       "type": "string"
26887	//     }
26888	//   },
26889	//   "path": "v3beta1/{+parent}/transitionRouteGroups",
26890	//   "response": {
26891	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse"
26892	//   },
26893	//   "scopes": [
26894	//     "https://www.googleapis.com/auth/cloud-platform",
26895	//     "https://www.googleapis.com/auth/dialogflow"
26896	//   ]
26897	// }
26898
26899}
26900
26901// Pages invokes f for each page of results.
26902// A non-nil error returned from f will halt the iteration.
26903// The provided context supersedes any context provided to the Context method.
26904func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListTransitionRouteGroupsResponse) error) error {
26905	c.ctx_ = ctx
26906	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
26907	for {
26908		x, err := c.Do()
26909		if err != nil {
26910			return err
26911		}
26912		if err := f(x); err != nil {
26913			return err
26914		}
26915		if x.NextPageToken == "" {
26916			return nil
26917		}
26918		c.PageToken(x.NextPageToken)
26919	}
26920}
26921
26922// method id "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch":
26923
26924type ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall struct {
26925	s                                                  *Service
26926	nameid                                             string
26927	googleclouddialogflowcxv3beta1transitionroutegroup *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup
26928	urlParams_                                         gensupport.URLParams
26929	ctx_                                               context.Context
26930	header_                                            http.Header
26931}
26932
26933// Patch: Updates the specified TransitionRouteGroup. Note: You should
26934// always train a flow prior to sending it queries. See the training
26935// documentation
26936// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
26937//
26938// - name: The unique identifier of the transition route group.
26939//   TransitionRouteGroups.CreateTransitionRouteGroup populates the name
26940//   automatically. Format:
26941//   `projects//locations//agents//flows//transitionRouteGroups/`.
26942func (r *ProjectsLocationsAgentsFlowsTransitionRouteGroupsService) Patch(nameid string, googleclouddialogflowcxv3beta1transitionroutegroup *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26943	c := &ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
26944	c.nameid = nameid
26945	c.googleclouddialogflowcxv3beta1transitionroutegroup = googleclouddialogflowcxv3beta1transitionroutegroup
26946	return c
26947}
26948
26949// LanguageCode sets the optional parameter "languageCode": The language
26950// of the following fields in `TransitionRouteGroup`: *
26951// `TransitionRouteGroup.transition_routes.trigger_fulfillment.messages`
26952// *
26953// `TransitionRouteGroup.transition_routes.trigger_fulfillment.conditiona
26954// l_cases` If not specified, the agent's default language is used. Many
26955// languages
26956// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
26957// supported. Note: languages must be enabled in the agent before they
26958// can be used.
26959func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26960	c.urlParams_.Set("languageCode", languageCode)
26961	return c
26962}
26963
26964// UpdateMask sets the optional parameter "updateMask": The mask to
26965// control which fields get updated.
26966func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26967	c.urlParams_.Set("updateMask", updateMask)
26968	return c
26969}
26970
26971// Fields allows partial responses to be retrieved. See
26972// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
26973// for more information.
26974func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26975	c.urlParams_.Set("fields", googleapi.CombineFields(s))
26976	return c
26977}
26978
26979// Context sets the context to be used in this call's Do method. Any
26980// pending HTTP request will be aborted if the provided context is
26981// canceled.
26982func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall {
26983	c.ctx_ = ctx
26984	return c
26985}
26986
26987// Header returns an http.Header that can be modified by the caller to
26988// add HTTP headers to the request.
26989func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Header() http.Header {
26990	if c.header_ == nil {
26991		c.header_ = make(http.Header)
26992	}
26993	return c.header_
26994}
26995
26996func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) doRequest(alt string) (*http.Response, error) {
26997	reqHeaders := make(http.Header)
26998	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
26999	for k, v := range c.header_ {
27000		reqHeaders[k] = v
27001	}
27002	reqHeaders.Set("User-Agent", c.s.userAgent())
27003	var body io.Reader = nil
27004	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1transitionroutegroup)
27005	if err != nil {
27006		return nil, err
27007	}
27008	reqHeaders.Set("Content-Type", "application/json")
27009	c.urlParams_.Set("alt", alt)
27010	c.urlParams_.Set("prettyPrint", "false")
27011	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
27012	urls += "?" + c.urlParams_.Encode()
27013	req, err := http.NewRequest("PATCH", urls, body)
27014	if err != nil {
27015		return nil, err
27016	}
27017	req.Header = reqHeaders
27018	googleapi.Expand(req.URL, map[string]string{
27019		"name": c.nameid,
27020	})
27021	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27022}
27023
27024// Do executes the "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch" call.
27025// Exactly one of *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup or
27026// error will be non-nil. Any non-2xx status code is an error. Response
27027// headers are in either
27028// *GoogleCloudDialogflowCxV3beta1TransitionRouteGroup.ServerResponse.Hea
27029// der or (if a response was returned at all) in
27030// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27031// whether the returned error was because http.StatusNotModified was
27032// returned.
27033func (c *ProjectsLocationsAgentsFlowsTransitionRouteGroupsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TransitionRouteGroup, error) {
27034	gensupport.SetOptions(c.urlParams_, opts...)
27035	res, err := c.doRequest("json")
27036	if res != nil && res.StatusCode == http.StatusNotModified {
27037		if res.Body != nil {
27038			res.Body.Close()
27039		}
27040		return nil, &googleapi.Error{
27041			Code:   res.StatusCode,
27042			Header: res.Header,
27043		}
27044	}
27045	if err != nil {
27046		return nil, err
27047	}
27048	defer googleapi.CloseBody(res)
27049	if err := googleapi.CheckResponse(res); err != nil {
27050		return nil, err
27051	}
27052	ret := &GoogleCloudDialogflowCxV3beta1TransitionRouteGroup{
27053		ServerResponse: googleapi.ServerResponse{
27054			Header:         res.Header,
27055			HTTPStatusCode: res.StatusCode,
27056		},
27057	}
27058	target := &ret
27059	if err := gensupport.DecodeResponse(target, res); err != nil {
27060		return nil, err
27061	}
27062	return ret, nil
27063	// {
27064	//   "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).",
27065	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/transitionRouteGroups/{transitionRouteGroupsId}",
27066	//   "httpMethod": "PATCH",
27067	//   "id": "dialogflow.projects.locations.agents.flows.transitionRouteGroups.patch",
27068	//   "parameterOrder": [
27069	//     "name"
27070	//   ],
27071	//   "parameters": {
27072	//     "languageCode": {
27073	//       "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.",
27074	//       "location": "query",
27075	//       "type": "string"
27076	//     },
27077	//     "name": {
27078	//       "description": "The unique identifier of the transition route group. TransitionRouteGroups.CreateTransitionRouteGroup populates the name automatically. Format: `projects//locations//agents//flows//transitionRouteGroups/`.",
27079	//       "location": "path",
27080	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/transitionRouteGroups/[^/]+$",
27081	//       "required": true,
27082	//       "type": "string"
27083	//     },
27084	//     "updateMask": {
27085	//       "description": "The mask to control which fields get updated.",
27086	//       "format": "google-fieldmask",
27087	//       "location": "query",
27088	//       "type": "string"
27089	//     }
27090	//   },
27091	//   "path": "v3beta1/{+name}",
27092	//   "request": {
27093	//     "$ref": "GoogleCloudDialogflowCxV3beta1TransitionRouteGroup"
27094	//   },
27095	//   "response": {
27096	//     "$ref": "GoogleCloudDialogflowCxV3beta1TransitionRouteGroup"
27097	//   },
27098	//   "scopes": [
27099	//     "https://www.googleapis.com/auth/cloud-platform",
27100	//     "https://www.googleapis.com/auth/dialogflow"
27101	//   ]
27102	// }
27103
27104}
27105
27106// method id "dialogflow.projects.locations.agents.flows.versions.create":
27107
27108type ProjectsLocationsAgentsFlowsVersionsCreateCall struct {
27109	s                                     *Service
27110	parent                                string
27111	googleclouddialogflowcxv3beta1version *GoogleCloudDialogflowCxV3beta1Version
27112	urlParams_                            gensupport.URLParams
27113	ctx_                                  context.Context
27114	header_                               http.Header
27115}
27116
27117// Create: Creates a Version in the specified Flow. This method is a
27118// long-running operation
27119// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
27120// The returned `Operation` type has the following method-specific
27121// fields: - `metadata`: CreateVersionOperationMetadata - `response`:
27122// Version
27123//
27124// - parent: The Flow to create an Version for. Format:
27125//   `projects//locations//agents//flows/`.
27126func (r *ProjectsLocationsAgentsFlowsVersionsService) Create(parent string, googleclouddialogflowcxv3beta1version *GoogleCloudDialogflowCxV3beta1Version) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27127	c := &ProjectsLocationsAgentsFlowsVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27128	c.parent = parent
27129	c.googleclouddialogflowcxv3beta1version = googleclouddialogflowcxv3beta1version
27130	return c
27131}
27132
27133// Fields allows partial responses to be retrieved. See
27134// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27135// for more information.
27136func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27137	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27138	return c
27139}
27140
27141// Context sets the context to be used in this call's Do method. Any
27142// pending HTTP request will be aborted if the provided context is
27143// canceled.
27144func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsCreateCall {
27145	c.ctx_ = ctx
27146	return c
27147}
27148
27149// Header returns an http.Header that can be modified by the caller to
27150// add HTTP headers to the request.
27151func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Header() http.Header {
27152	if c.header_ == nil {
27153		c.header_ = make(http.Header)
27154	}
27155	return c.header_
27156}
27157
27158func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
27159	reqHeaders := make(http.Header)
27160	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27161	for k, v := range c.header_ {
27162		reqHeaders[k] = v
27163	}
27164	reqHeaders.Set("User-Agent", c.s.userAgent())
27165	var body io.Reader = nil
27166	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1version)
27167	if err != nil {
27168		return nil, err
27169	}
27170	reqHeaders.Set("Content-Type", "application/json")
27171	c.urlParams_.Set("alt", alt)
27172	c.urlParams_.Set("prettyPrint", "false")
27173	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/versions")
27174	urls += "?" + c.urlParams_.Encode()
27175	req, err := http.NewRequest("POST", urls, body)
27176	if err != nil {
27177		return nil, err
27178	}
27179	req.Header = reqHeaders
27180	googleapi.Expand(req.URL, map[string]string{
27181		"parent": c.parent,
27182	})
27183	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27184}
27185
27186// Do executes the "dialogflow.projects.locations.agents.flows.versions.create" call.
27187// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
27188// Any non-2xx status code is an error. Response headers are in either
27189// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
27190// was returned at all) in error.(*googleapi.Error).Header. Use
27191// googleapi.IsNotModified to check whether the returned error was
27192// because http.StatusNotModified was returned.
27193func (c *ProjectsLocationsAgentsFlowsVersionsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
27194	gensupport.SetOptions(c.urlParams_, opts...)
27195	res, err := c.doRequest("json")
27196	if res != nil && res.StatusCode == http.StatusNotModified {
27197		if res.Body != nil {
27198			res.Body.Close()
27199		}
27200		return nil, &googleapi.Error{
27201			Code:   res.StatusCode,
27202			Header: res.Header,
27203		}
27204	}
27205	if err != nil {
27206		return nil, err
27207	}
27208	defer googleapi.CloseBody(res)
27209	if err := googleapi.CheckResponse(res); err != nil {
27210		return nil, err
27211	}
27212	ret := &GoogleLongrunningOperation{
27213		ServerResponse: googleapi.ServerResponse{
27214			Header:         res.Header,
27215			HTTPStatusCode: res.StatusCode,
27216		},
27217	}
27218	target := &ret
27219	if err := gensupport.DecodeResponse(target, res); err != nil {
27220		return nil, err
27221	}
27222	return ret, nil
27223	// {
27224	//   "description": "Creates a Version in the specified Flow. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: CreateVersionOperationMetadata - `response`: Version",
27225	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
27226	//   "httpMethod": "POST",
27227	//   "id": "dialogflow.projects.locations.agents.flows.versions.create",
27228	//   "parameterOrder": [
27229	//     "parent"
27230	//   ],
27231	//   "parameters": {
27232	//     "parent": {
27233	//       "description": "Required. The Flow to create an Version for. Format: `projects//locations//agents//flows/`.",
27234	//       "location": "path",
27235	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
27236	//       "required": true,
27237	//       "type": "string"
27238	//     }
27239	//   },
27240	//   "path": "v3beta1/{+parent}/versions",
27241	//   "request": {
27242	//     "$ref": "GoogleCloudDialogflowCxV3beta1Version"
27243	//   },
27244	//   "response": {
27245	//     "$ref": "GoogleLongrunningOperation"
27246	//   },
27247	//   "scopes": [
27248	//     "https://www.googleapis.com/auth/cloud-platform",
27249	//     "https://www.googleapis.com/auth/dialogflow"
27250	//   ]
27251	// }
27252
27253}
27254
27255// method id "dialogflow.projects.locations.agents.flows.versions.delete":
27256
27257type ProjectsLocationsAgentsFlowsVersionsDeleteCall struct {
27258	s          *Service
27259	name       string
27260	urlParams_ gensupport.URLParams
27261	ctx_       context.Context
27262	header_    http.Header
27263}
27264
27265// Delete: Deletes the specified Version.
27266//
27267// - name: The name of the Version to delete. Format:
27268//   `projects//locations//agents//flows//versions/`.
27269func (r *ProjectsLocationsAgentsFlowsVersionsService) Delete(name string) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27270	c := &ProjectsLocationsAgentsFlowsVersionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27271	c.name = name
27272	return c
27273}
27274
27275// Fields allows partial responses to be retrieved. See
27276// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27277// for more information.
27278func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27279	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27280	return c
27281}
27282
27283// Context sets the context to be used in this call's Do method. Any
27284// pending HTTP request will be aborted if the provided context is
27285// canceled.
27286func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsDeleteCall {
27287	c.ctx_ = ctx
27288	return c
27289}
27290
27291// Header returns an http.Header that can be modified by the caller to
27292// add HTTP headers to the request.
27293func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Header() http.Header {
27294	if c.header_ == nil {
27295		c.header_ = make(http.Header)
27296	}
27297	return c.header_
27298}
27299
27300func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) doRequest(alt string) (*http.Response, error) {
27301	reqHeaders := make(http.Header)
27302	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27303	for k, v := range c.header_ {
27304		reqHeaders[k] = v
27305	}
27306	reqHeaders.Set("User-Agent", c.s.userAgent())
27307	var body io.Reader = nil
27308	c.urlParams_.Set("alt", alt)
27309	c.urlParams_.Set("prettyPrint", "false")
27310	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
27311	urls += "?" + c.urlParams_.Encode()
27312	req, err := http.NewRequest("DELETE", urls, body)
27313	if err != nil {
27314		return nil, err
27315	}
27316	req.Header = reqHeaders
27317	googleapi.Expand(req.URL, map[string]string{
27318		"name": c.name,
27319	})
27320	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27321}
27322
27323// Do executes the "dialogflow.projects.locations.agents.flows.versions.delete" call.
27324// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
27325// non-2xx status code is an error. Response headers are in either
27326// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
27327// returned at all) in error.(*googleapi.Error).Header. Use
27328// googleapi.IsNotModified to check whether the returned error was
27329// because http.StatusNotModified was returned.
27330func (c *ProjectsLocationsAgentsFlowsVersionsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
27331	gensupport.SetOptions(c.urlParams_, opts...)
27332	res, err := c.doRequest("json")
27333	if res != nil && res.StatusCode == http.StatusNotModified {
27334		if res.Body != nil {
27335			res.Body.Close()
27336		}
27337		return nil, &googleapi.Error{
27338			Code:   res.StatusCode,
27339			Header: res.Header,
27340		}
27341	}
27342	if err != nil {
27343		return nil, err
27344	}
27345	defer googleapi.CloseBody(res)
27346	if err := googleapi.CheckResponse(res); err != nil {
27347		return nil, err
27348	}
27349	ret := &GoogleProtobufEmpty{
27350		ServerResponse: googleapi.ServerResponse{
27351			Header:         res.Header,
27352			HTTPStatusCode: res.StatusCode,
27353		},
27354	}
27355	target := &ret
27356	if err := gensupport.DecodeResponse(target, res); err != nil {
27357		return nil, err
27358	}
27359	return ret, nil
27360	// {
27361	//   "description": "Deletes the specified Version.",
27362	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27363	//   "httpMethod": "DELETE",
27364	//   "id": "dialogflow.projects.locations.agents.flows.versions.delete",
27365	//   "parameterOrder": [
27366	//     "name"
27367	//   ],
27368	//   "parameters": {
27369	//     "name": {
27370	//       "description": "Required. The name of the Version to delete. Format: `projects//locations//agents//flows//versions/`.",
27371	//       "location": "path",
27372	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27373	//       "required": true,
27374	//       "type": "string"
27375	//     }
27376	//   },
27377	//   "path": "v3beta1/{+name}",
27378	//   "response": {
27379	//     "$ref": "GoogleProtobufEmpty"
27380	//   },
27381	//   "scopes": [
27382	//     "https://www.googleapis.com/auth/cloud-platform",
27383	//     "https://www.googleapis.com/auth/dialogflow"
27384	//   ]
27385	// }
27386
27387}
27388
27389// method id "dialogflow.projects.locations.agents.flows.versions.get":
27390
27391type ProjectsLocationsAgentsFlowsVersionsGetCall struct {
27392	s            *Service
27393	name         string
27394	urlParams_   gensupport.URLParams
27395	ifNoneMatch_ string
27396	ctx_         context.Context
27397	header_      http.Header
27398}
27399
27400// Get: Retrieves the specified Version.
27401//
27402// - name: The name of the Version. Format:
27403//   `projects//locations//agents//flows//versions/`.
27404func (r *ProjectsLocationsAgentsFlowsVersionsService) Get(name string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27405	c := &ProjectsLocationsAgentsFlowsVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27406	c.name = name
27407	return c
27408}
27409
27410// Fields allows partial responses to be retrieved. See
27411// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27412// for more information.
27413func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27414	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27415	return c
27416}
27417
27418// IfNoneMatch sets the optional parameter which makes the operation
27419// fail if the object's ETag matches the given value. This is useful for
27420// getting updates only after the object has changed since the last
27421// request. Use googleapi.IsNotModified to check whether the response
27422// error from Do is the result of In-None-Match.
27423func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27424	c.ifNoneMatch_ = entityTag
27425	return c
27426}
27427
27428// Context sets the context to be used in this call's Do method. Any
27429// pending HTTP request will be aborted if the provided context is
27430// canceled.
27431func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsGetCall {
27432	c.ctx_ = ctx
27433	return c
27434}
27435
27436// Header returns an http.Header that can be modified by the caller to
27437// add HTTP headers to the request.
27438func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Header() http.Header {
27439	if c.header_ == nil {
27440		c.header_ = make(http.Header)
27441	}
27442	return c.header_
27443}
27444
27445func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) doRequest(alt string) (*http.Response, error) {
27446	reqHeaders := make(http.Header)
27447	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27448	for k, v := range c.header_ {
27449		reqHeaders[k] = v
27450	}
27451	reqHeaders.Set("User-Agent", c.s.userAgent())
27452	if c.ifNoneMatch_ != "" {
27453		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27454	}
27455	var body io.Reader = nil
27456	c.urlParams_.Set("alt", alt)
27457	c.urlParams_.Set("prettyPrint", "false")
27458	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
27459	urls += "?" + c.urlParams_.Encode()
27460	req, err := http.NewRequest("GET", urls, body)
27461	if err != nil {
27462		return nil, err
27463	}
27464	req.Header = reqHeaders
27465	googleapi.Expand(req.URL, map[string]string{
27466		"name": c.name,
27467	})
27468	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27469}
27470
27471// Do executes the "dialogflow.projects.locations.agents.flows.versions.get" call.
27472// Exactly one of *GoogleCloudDialogflowCxV3beta1Version or error will
27473// be non-nil. Any non-2xx status code is an error. Response headers are
27474// in either
27475// *GoogleCloudDialogflowCxV3beta1Version.ServerResponse.Header or (if a
27476// response was returned at all) in error.(*googleapi.Error).Header. Use
27477// googleapi.IsNotModified to check whether the returned error was
27478// because http.StatusNotModified was returned.
27479func (c *ProjectsLocationsAgentsFlowsVersionsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Version, error) {
27480	gensupport.SetOptions(c.urlParams_, opts...)
27481	res, err := c.doRequest("json")
27482	if res != nil && res.StatusCode == http.StatusNotModified {
27483		if res.Body != nil {
27484			res.Body.Close()
27485		}
27486		return nil, &googleapi.Error{
27487			Code:   res.StatusCode,
27488			Header: res.Header,
27489		}
27490	}
27491	if err != nil {
27492		return nil, err
27493	}
27494	defer googleapi.CloseBody(res)
27495	if err := googleapi.CheckResponse(res); err != nil {
27496		return nil, err
27497	}
27498	ret := &GoogleCloudDialogflowCxV3beta1Version{
27499		ServerResponse: googleapi.ServerResponse{
27500			Header:         res.Header,
27501			HTTPStatusCode: res.StatusCode,
27502		},
27503	}
27504	target := &ret
27505	if err := gensupport.DecodeResponse(target, res); err != nil {
27506		return nil, err
27507	}
27508	return ret, nil
27509	// {
27510	//   "description": "Retrieves the specified Version.",
27511	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
27512	//   "httpMethod": "GET",
27513	//   "id": "dialogflow.projects.locations.agents.flows.versions.get",
27514	//   "parameterOrder": [
27515	//     "name"
27516	//   ],
27517	//   "parameters": {
27518	//     "name": {
27519	//       "description": "Required. The name of the Version. Format: `projects//locations//agents//flows//versions/`.",
27520	//       "location": "path",
27521	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27522	//       "required": true,
27523	//       "type": "string"
27524	//     }
27525	//   },
27526	//   "path": "v3beta1/{+name}",
27527	//   "response": {
27528	//     "$ref": "GoogleCloudDialogflowCxV3beta1Version"
27529	//   },
27530	//   "scopes": [
27531	//     "https://www.googleapis.com/auth/cloud-platform",
27532	//     "https://www.googleapis.com/auth/dialogflow"
27533	//   ]
27534	// }
27535
27536}
27537
27538// method id "dialogflow.projects.locations.agents.flows.versions.list":
27539
27540type ProjectsLocationsAgentsFlowsVersionsListCall struct {
27541	s            *Service
27542	parent       string
27543	urlParams_   gensupport.URLParams
27544	ifNoneMatch_ string
27545	ctx_         context.Context
27546	header_      http.Header
27547}
27548
27549// List: Returns the list of all versions in the specified Flow.
27550//
27551// - parent: The Flow to list all versions for. Format:
27552//   `projects//locations//agents//flows/`.
27553func (r *ProjectsLocationsAgentsFlowsVersionsService) List(parent string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27554	c := &ProjectsLocationsAgentsFlowsVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27555	c.parent = parent
27556	return c
27557}
27558
27559// PageSize sets the optional parameter "pageSize": The maximum number
27560// of items to return in a single page. By default 20 and at most 100.
27561func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsFlowsVersionsListCall {
27562	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
27563	return c
27564}
27565
27566// PageToken sets the optional parameter "pageToken": The
27567// next_page_token value returned from a previous list request.
27568func (c *ProjectsLocationsAgentsFlowsVersionsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27569	c.urlParams_.Set("pageToken", pageToken)
27570	return c
27571}
27572
27573// Fields allows partial responses to be retrieved. See
27574// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27575// for more information.
27576func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsListCall {
27577	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27578	return c
27579}
27580
27581// IfNoneMatch sets the optional parameter which makes the operation
27582// fail if the object's ETag matches the given value. This is useful for
27583// getting updates only after the object has changed since the last
27584// request. Use googleapi.IsNotModified to check whether the response
27585// error from Do is the result of In-None-Match.
27586func (c *ProjectsLocationsAgentsFlowsVersionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsFlowsVersionsListCall {
27587	c.ifNoneMatch_ = entityTag
27588	return c
27589}
27590
27591// Context sets the context to be used in this call's Do method. Any
27592// pending HTTP request will be aborted if the provided context is
27593// canceled.
27594func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsListCall {
27595	c.ctx_ = ctx
27596	return c
27597}
27598
27599// Header returns an http.Header that can be modified by the caller to
27600// add HTTP headers to the request.
27601func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Header() http.Header {
27602	if c.header_ == nil {
27603		c.header_ = make(http.Header)
27604	}
27605	return c.header_
27606}
27607
27608func (c *ProjectsLocationsAgentsFlowsVersionsListCall) doRequest(alt string) (*http.Response, error) {
27609	reqHeaders := make(http.Header)
27610	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27611	for k, v := range c.header_ {
27612		reqHeaders[k] = v
27613	}
27614	reqHeaders.Set("User-Agent", c.s.userAgent())
27615	if c.ifNoneMatch_ != "" {
27616		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
27617	}
27618	var body io.Reader = nil
27619	c.urlParams_.Set("alt", alt)
27620	c.urlParams_.Set("prettyPrint", "false")
27621	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/versions")
27622	urls += "?" + c.urlParams_.Encode()
27623	req, err := http.NewRequest("GET", urls, body)
27624	if err != nil {
27625		return nil, err
27626	}
27627	req.Header = reqHeaders
27628	googleapi.Expand(req.URL, map[string]string{
27629		"parent": c.parent,
27630	})
27631	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27632}
27633
27634// Do executes the "dialogflow.projects.locations.agents.flows.versions.list" call.
27635// Exactly one of *GoogleCloudDialogflowCxV3beta1ListVersionsResponse or
27636// error will be non-nil. Any non-2xx status code is an error. Response
27637// headers are in either
27638// *GoogleCloudDialogflowCxV3beta1ListVersionsResponse.ServerResponse.Hea
27639// der or (if a response was returned at all) in
27640// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
27641// whether the returned error was because http.StatusNotModified was
27642// returned.
27643func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListVersionsResponse, error) {
27644	gensupport.SetOptions(c.urlParams_, opts...)
27645	res, err := c.doRequest("json")
27646	if res != nil && res.StatusCode == http.StatusNotModified {
27647		if res.Body != nil {
27648			res.Body.Close()
27649		}
27650		return nil, &googleapi.Error{
27651			Code:   res.StatusCode,
27652			Header: res.Header,
27653		}
27654	}
27655	if err != nil {
27656		return nil, err
27657	}
27658	defer googleapi.CloseBody(res)
27659	if err := googleapi.CheckResponse(res); err != nil {
27660		return nil, err
27661	}
27662	ret := &GoogleCloudDialogflowCxV3beta1ListVersionsResponse{
27663		ServerResponse: googleapi.ServerResponse{
27664			Header:         res.Header,
27665			HTTPStatusCode: res.StatusCode,
27666		},
27667	}
27668	target := &ret
27669	if err := gensupport.DecodeResponse(target, res); err != nil {
27670		return nil, err
27671	}
27672	return ret, nil
27673	// {
27674	//   "description": "Returns the list of all versions in the specified Flow.",
27675	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions",
27676	//   "httpMethod": "GET",
27677	//   "id": "dialogflow.projects.locations.agents.flows.versions.list",
27678	//   "parameterOrder": [
27679	//     "parent"
27680	//   ],
27681	//   "parameters": {
27682	//     "pageSize": {
27683	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
27684	//       "format": "int32",
27685	//       "location": "query",
27686	//       "type": "integer"
27687	//     },
27688	//     "pageToken": {
27689	//       "description": "The next_page_token value returned from a previous list request.",
27690	//       "location": "query",
27691	//       "type": "string"
27692	//     },
27693	//     "parent": {
27694	//       "description": "Required. The Flow to list all versions for. Format: `projects//locations//agents//flows/`.",
27695	//       "location": "path",
27696	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+$",
27697	//       "required": true,
27698	//       "type": "string"
27699	//     }
27700	//   },
27701	//   "path": "v3beta1/{+parent}/versions",
27702	//   "response": {
27703	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListVersionsResponse"
27704	//   },
27705	//   "scopes": [
27706	//     "https://www.googleapis.com/auth/cloud-platform",
27707	//     "https://www.googleapis.com/auth/dialogflow"
27708	//   ]
27709	// }
27710
27711}
27712
27713// Pages invokes f for each page of results.
27714// A non-nil error returned from f will halt the iteration.
27715// The provided context supersedes any context provided to the Context method.
27716func (c *ProjectsLocationsAgentsFlowsVersionsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListVersionsResponse) error) error {
27717	c.ctx_ = ctx
27718	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
27719	for {
27720		x, err := c.Do()
27721		if err != nil {
27722			return err
27723		}
27724		if err := f(x); err != nil {
27725			return err
27726		}
27727		if x.NextPageToken == "" {
27728			return nil
27729		}
27730		c.PageToken(x.NextPageToken)
27731	}
27732}
27733
27734// method id "dialogflow.projects.locations.agents.flows.versions.load":
27735
27736type ProjectsLocationsAgentsFlowsVersionsLoadCall struct {
27737	s                                                *Service
27738	name                                             string
27739	googleclouddialogflowcxv3beta1loadversionrequest *GoogleCloudDialogflowCxV3beta1LoadVersionRequest
27740	urlParams_                                       gensupport.URLParams
27741	ctx_                                             context.Context
27742	header_                                          http.Header
27743}
27744
27745// Load: Loads resources in the specified version to the draft flow.
27746// This method is a long-running operation
27747// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
27748// The returned `Operation` type has the following method-specific
27749// fields: - `metadata`: An empty Struct message
27750// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
27751// - `response`: An Empty message
27752// (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
27753//
27754// - name: The Version to be loaded to draft flow. Format:
27755//   `projects//locations//agents//flows//versions/`.
27756func (r *ProjectsLocationsAgentsFlowsVersionsService) Load(name string, googleclouddialogflowcxv3beta1loadversionrequest *GoogleCloudDialogflowCxV3beta1LoadVersionRequest) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27757	c := &ProjectsLocationsAgentsFlowsVersionsLoadCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27758	c.name = name
27759	c.googleclouddialogflowcxv3beta1loadversionrequest = googleclouddialogflowcxv3beta1loadversionrequest
27760	return c
27761}
27762
27763// Fields allows partial responses to be retrieved. See
27764// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27765// for more information.
27766func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27767	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27768	return c
27769}
27770
27771// Context sets the context to be used in this call's Do method. Any
27772// pending HTTP request will be aborted if the provided context is
27773// canceled.
27774func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsLoadCall {
27775	c.ctx_ = ctx
27776	return c
27777}
27778
27779// Header returns an http.Header that can be modified by the caller to
27780// add HTTP headers to the request.
27781func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Header() http.Header {
27782	if c.header_ == nil {
27783		c.header_ = make(http.Header)
27784	}
27785	return c.header_
27786}
27787
27788func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) doRequest(alt string) (*http.Response, error) {
27789	reqHeaders := make(http.Header)
27790	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27791	for k, v := range c.header_ {
27792		reqHeaders[k] = v
27793	}
27794	reqHeaders.Set("User-Agent", c.s.userAgent())
27795	var body io.Reader = nil
27796	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1loadversionrequest)
27797	if err != nil {
27798		return nil, err
27799	}
27800	reqHeaders.Set("Content-Type", "application/json")
27801	c.urlParams_.Set("alt", alt)
27802	c.urlParams_.Set("prettyPrint", "false")
27803	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:load")
27804	urls += "?" + c.urlParams_.Encode()
27805	req, err := http.NewRequest("POST", urls, body)
27806	if err != nil {
27807		return nil, err
27808	}
27809	req.Header = reqHeaders
27810	googleapi.Expand(req.URL, map[string]string{
27811		"name": c.name,
27812	})
27813	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27814}
27815
27816// Do executes the "dialogflow.projects.locations.agents.flows.versions.load" call.
27817// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
27818// Any non-2xx status code is an error. Response headers are in either
27819// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
27820// was returned at all) in error.(*googleapi.Error).Header. Use
27821// googleapi.IsNotModified to check whether the returned error was
27822// because http.StatusNotModified was returned.
27823func (c *ProjectsLocationsAgentsFlowsVersionsLoadCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
27824	gensupport.SetOptions(c.urlParams_, opts...)
27825	res, err := c.doRequest("json")
27826	if res != nil && res.StatusCode == http.StatusNotModified {
27827		if res.Body != nil {
27828			res.Body.Close()
27829		}
27830		return nil, &googleapi.Error{
27831			Code:   res.StatusCode,
27832			Header: res.Header,
27833		}
27834	}
27835	if err != nil {
27836		return nil, err
27837	}
27838	defer googleapi.CloseBody(res)
27839	if err := googleapi.CheckResponse(res); err != nil {
27840		return nil, err
27841	}
27842	ret := &GoogleLongrunningOperation{
27843		ServerResponse: googleapi.ServerResponse{
27844			Header:         res.Header,
27845			HTTPStatusCode: res.StatusCode,
27846		},
27847	}
27848	target := &ret
27849	if err := gensupport.DecodeResponse(target, res); err != nil {
27850		return nil, err
27851	}
27852	return ret, nil
27853	// {
27854	//   "description": "Loads resources in the specified version to the draft flow. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: An empty [Struct message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct) - `response`: An [Empty message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)",
27855	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}:load",
27856	//   "httpMethod": "POST",
27857	//   "id": "dialogflow.projects.locations.agents.flows.versions.load",
27858	//   "parameterOrder": [
27859	//     "name"
27860	//   ],
27861	//   "parameters": {
27862	//     "name": {
27863	//       "description": "Required. The Version to be loaded to draft flow. Format: `projects//locations//agents//flows//versions/`.",
27864	//       "location": "path",
27865	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
27866	//       "required": true,
27867	//       "type": "string"
27868	//     }
27869	//   },
27870	//   "path": "v3beta1/{+name}:load",
27871	//   "request": {
27872	//     "$ref": "GoogleCloudDialogflowCxV3beta1LoadVersionRequest"
27873	//   },
27874	//   "response": {
27875	//     "$ref": "GoogleLongrunningOperation"
27876	//   },
27877	//   "scopes": [
27878	//     "https://www.googleapis.com/auth/cloud-platform",
27879	//     "https://www.googleapis.com/auth/dialogflow"
27880	//   ]
27881	// }
27882
27883}
27884
27885// method id "dialogflow.projects.locations.agents.flows.versions.patch":
27886
27887type ProjectsLocationsAgentsFlowsVersionsPatchCall struct {
27888	s                                     *Service
27889	name                                  string
27890	googleclouddialogflowcxv3beta1version *GoogleCloudDialogflowCxV3beta1Version
27891	urlParams_                            gensupport.URLParams
27892	ctx_                                  context.Context
27893	header_                               http.Header
27894}
27895
27896// Patch: Updates the specified Version.
27897//
27898// - name: Format: projects//locations//agents//flows//versions/.
27899//   Version ID is a self-increasing number generated by Dialogflow upon
27900//   version creation.
27901func (r *ProjectsLocationsAgentsFlowsVersionsService) Patch(name string, googleclouddialogflowcxv3beta1version *GoogleCloudDialogflowCxV3beta1Version) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27902	c := &ProjectsLocationsAgentsFlowsVersionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
27903	c.name = name
27904	c.googleclouddialogflowcxv3beta1version = googleclouddialogflowcxv3beta1version
27905	return c
27906}
27907
27908// UpdateMask sets the optional parameter "updateMask": Required. The
27909// mask to control which fields get updated. Currently only
27910// `description` and `display_name` can be updated.
27911func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27912	c.urlParams_.Set("updateMask", updateMask)
27913	return c
27914}
27915
27916// Fields allows partial responses to be retrieved. See
27917// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
27918// for more information.
27919func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27920	c.urlParams_.Set("fields", googleapi.CombineFields(s))
27921	return c
27922}
27923
27924// Context sets the context to be used in this call's Do method. Any
27925// pending HTTP request will be aborted if the provided context is
27926// canceled.
27927func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsFlowsVersionsPatchCall {
27928	c.ctx_ = ctx
27929	return c
27930}
27931
27932// Header returns an http.Header that can be modified by the caller to
27933// add HTTP headers to the request.
27934func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Header() http.Header {
27935	if c.header_ == nil {
27936		c.header_ = make(http.Header)
27937	}
27938	return c.header_
27939}
27940
27941func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) doRequest(alt string) (*http.Response, error) {
27942	reqHeaders := make(http.Header)
27943	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
27944	for k, v := range c.header_ {
27945		reqHeaders[k] = v
27946	}
27947	reqHeaders.Set("User-Agent", c.s.userAgent())
27948	var body io.Reader = nil
27949	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1version)
27950	if err != nil {
27951		return nil, err
27952	}
27953	reqHeaders.Set("Content-Type", "application/json")
27954	c.urlParams_.Set("alt", alt)
27955	c.urlParams_.Set("prettyPrint", "false")
27956	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
27957	urls += "?" + c.urlParams_.Encode()
27958	req, err := http.NewRequest("PATCH", urls, body)
27959	if err != nil {
27960		return nil, err
27961	}
27962	req.Header = reqHeaders
27963	googleapi.Expand(req.URL, map[string]string{
27964		"name": c.name,
27965	})
27966	return gensupport.SendRequest(c.ctx_, c.s.client, req)
27967}
27968
27969// Do executes the "dialogflow.projects.locations.agents.flows.versions.patch" call.
27970// Exactly one of *GoogleCloudDialogflowCxV3beta1Version or error will
27971// be non-nil. Any non-2xx status code is an error. Response headers are
27972// in either
27973// *GoogleCloudDialogflowCxV3beta1Version.ServerResponse.Header or (if a
27974// response was returned at all) in error.(*googleapi.Error).Header. Use
27975// googleapi.IsNotModified to check whether the returned error was
27976// because http.StatusNotModified was returned.
27977func (c *ProjectsLocationsAgentsFlowsVersionsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Version, error) {
27978	gensupport.SetOptions(c.urlParams_, opts...)
27979	res, err := c.doRequest("json")
27980	if res != nil && res.StatusCode == http.StatusNotModified {
27981		if res.Body != nil {
27982			res.Body.Close()
27983		}
27984		return nil, &googleapi.Error{
27985			Code:   res.StatusCode,
27986			Header: res.Header,
27987		}
27988	}
27989	if err != nil {
27990		return nil, err
27991	}
27992	defer googleapi.CloseBody(res)
27993	if err := googleapi.CheckResponse(res); err != nil {
27994		return nil, err
27995	}
27996	ret := &GoogleCloudDialogflowCxV3beta1Version{
27997		ServerResponse: googleapi.ServerResponse{
27998			Header:         res.Header,
27999			HTTPStatusCode: res.StatusCode,
28000		},
28001	}
28002	target := &ret
28003	if err := gensupport.DecodeResponse(target, res); err != nil {
28004		return nil, err
28005	}
28006	return ret, nil
28007	// {
28008	//   "description": "Updates the specified Version.",
28009	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/flows/{flowsId}/versions/{versionsId}",
28010	//   "httpMethod": "PATCH",
28011	//   "id": "dialogflow.projects.locations.agents.flows.versions.patch",
28012	//   "parameterOrder": [
28013	//     "name"
28014	//   ],
28015	//   "parameters": {
28016	//     "name": {
28017	//       "description": "Format: projects//locations//agents//flows//versions/. Version ID is a self-increasing number generated by Dialogflow upon version creation.",
28018	//       "location": "path",
28019	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/flows/[^/]+/versions/[^/]+$",
28020	//       "required": true,
28021	//       "type": "string"
28022	//     },
28023	//     "updateMask": {
28024	//       "description": "Required. The mask to control which fields get updated. Currently only `description` and `display_name` can be updated.",
28025	//       "format": "google-fieldmask",
28026	//       "location": "query",
28027	//       "type": "string"
28028	//     }
28029	//   },
28030	//   "path": "v3beta1/{+name}",
28031	//   "request": {
28032	//     "$ref": "GoogleCloudDialogflowCxV3beta1Version"
28033	//   },
28034	//   "response": {
28035	//     "$ref": "GoogleCloudDialogflowCxV3beta1Version"
28036	//   },
28037	//   "scopes": [
28038	//     "https://www.googleapis.com/auth/cloud-platform",
28039	//     "https://www.googleapis.com/auth/dialogflow"
28040	//   ]
28041	// }
28042
28043}
28044
28045// method id "dialogflow.projects.locations.agents.intents.create":
28046
28047type ProjectsLocationsAgentsIntentsCreateCall struct {
28048	s                                    *Service
28049	parent                               string
28050	googleclouddialogflowcxv3beta1intent *GoogleCloudDialogflowCxV3beta1Intent
28051	urlParams_                           gensupport.URLParams
28052	ctx_                                 context.Context
28053	header_                              http.Header
28054}
28055
28056// Create: Creates an intent in the specified agent. Note: You should
28057// always train a flow prior to sending it queries. See the training
28058// documentation
28059// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
28060//
28061// - parent: The agent to create an intent for. Format:
28062//   `projects//locations//agents/`.
28063func (r *ProjectsLocationsAgentsIntentsService) Create(parent string, googleclouddialogflowcxv3beta1intent *GoogleCloudDialogflowCxV3beta1Intent) *ProjectsLocationsAgentsIntentsCreateCall {
28064	c := &ProjectsLocationsAgentsIntentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28065	c.parent = parent
28066	c.googleclouddialogflowcxv3beta1intent = googleclouddialogflowcxv3beta1intent
28067	return c
28068}
28069
28070// LanguageCode sets the optional parameter "languageCode": The language
28071// of the following fields in `intent`: *
28072// `Intent.training_phrases.parts.text` If not specified, the agent's
28073// default language is used. Many languages
28074// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28075// supported. Note: languages must be enabled in the agent before they
28076// can be used.
28077func (c *ProjectsLocationsAgentsIntentsCreateCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsCreateCall {
28078	c.urlParams_.Set("languageCode", languageCode)
28079	return c
28080}
28081
28082// Fields allows partial responses to be retrieved. See
28083// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28084// for more information.
28085func (c *ProjectsLocationsAgentsIntentsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsCreateCall {
28086	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28087	return c
28088}
28089
28090// Context sets the context to be used in this call's Do method. Any
28091// pending HTTP request will be aborted if the provided context is
28092// canceled.
28093func (c *ProjectsLocationsAgentsIntentsCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsCreateCall {
28094	c.ctx_ = ctx
28095	return c
28096}
28097
28098// Header returns an http.Header that can be modified by the caller to
28099// add HTTP headers to the request.
28100func (c *ProjectsLocationsAgentsIntentsCreateCall) Header() http.Header {
28101	if c.header_ == nil {
28102		c.header_ = make(http.Header)
28103	}
28104	return c.header_
28105}
28106
28107func (c *ProjectsLocationsAgentsIntentsCreateCall) doRequest(alt string) (*http.Response, error) {
28108	reqHeaders := make(http.Header)
28109	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28110	for k, v := range c.header_ {
28111		reqHeaders[k] = v
28112	}
28113	reqHeaders.Set("User-Agent", c.s.userAgent())
28114	var body io.Reader = nil
28115	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1intent)
28116	if err != nil {
28117		return nil, err
28118	}
28119	reqHeaders.Set("Content-Type", "application/json")
28120	c.urlParams_.Set("alt", alt)
28121	c.urlParams_.Set("prettyPrint", "false")
28122	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/intents")
28123	urls += "?" + c.urlParams_.Encode()
28124	req, err := http.NewRequest("POST", urls, body)
28125	if err != nil {
28126		return nil, err
28127	}
28128	req.Header = reqHeaders
28129	googleapi.Expand(req.URL, map[string]string{
28130		"parent": c.parent,
28131	})
28132	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28133}
28134
28135// Do executes the "dialogflow.projects.locations.agents.intents.create" call.
28136// Exactly one of *GoogleCloudDialogflowCxV3beta1Intent or error will be
28137// non-nil. Any non-2xx status code is an error. Response headers are in
28138// either *GoogleCloudDialogflowCxV3beta1Intent.ServerResponse.Header or
28139// (if a response was returned at all) in
28140// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28141// whether the returned error was because http.StatusNotModified was
28142// returned.
28143func (c *ProjectsLocationsAgentsIntentsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Intent, error) {
28144	gensupport.SetOptions(c.urlParams_, opts...)
28145	res, err := c.doRequest("json")
28146	if res != nil && res.StatusCode == http.StatusNotModified {
28147		if res.Body != nil {
28148			res.Body.Close()
28149		}
28150		return nil, &googleapi.Error{
28151			Code:   res.StatusCode,
28152			Header: res.Header,
28153		}
28154	}
28155	if err != nil {
28156		return nil, err
28157	}
28158	defer googleapi.CloseBody(res)
28159	if err := googleapi.CheckResponse(res); err != nil {
28160		return nil, err
28161	}
28162	ret := &GoogleCloudDialogflowCxV3beta1Intent{
28163		ServerResponse: googleapi.ServerResponse{
28164			Header:         res.Header,
28165			HTTPStatusCode: res.StatusCode,
28166		},
28167	}
28168	target := &ret
28169	if err := gensupport.DecodeResponse(target, res); err != nil {
28170		return nil, err
28171	}
28172	return ret, nil
28173	// {
28174	//   "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).",
28175	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
28176	//   "httpMethod": "POST",
28177	//   "id": "dialogflow.projects.locations.agents.intents.create",
28178	//   "parameterOrder": [
28179	//     "parent"
28180	//   ],
28181	//   "parameters": {
28182	//     "languageCode": {
28183	//       "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.",
28184	//       "location": "query",
28185	//       "type": "string"
28186	//     },
28187	//     "parent": {
28188	//       "description": "Required. The agent to create an intent for. Format: `projects//locations//agents/`.",
28189	//       "location": "path",
28190	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
28191	//       "required": true,
28192	//       "type": "string"
28193	//     }
28194	//   },
28195	//   "path": "v3beta1/{+parent}/intents",
28196	//   "request": {
28197	//     "$ref": "GoogleCloudDialogflowCxV3beta1Intent"
28198	//   },
28199	//   "response": {
28200	//     "$ref": "GoogleCloudDialogflowCxV3beta1Intent"
28201	//   },
28202	//   "scopes": [
28203	//     "https://www.googleapis.com/auth/cloud-platform",
28204	//     "https://www.googleapis.com/auth/dialogflow"
28205	//   ]
28206	// }
28207
28208}
28209
28210// method id "dialogflow.projects.locations.agents.intents.delete":
28211
28212type ProjectsLocationsAgentsIntentsDeleteCall struct {
28213	s          *Service
28214	name       string
28215	urlParams_ gensupport.URLParams
28216	ctx_       context.Context
28217	header_    http.Header
28218}
28219
28220// Delete: Deletes the specified intent. Note: You should always train a
28221// flow prior to sending it queries. See the training documentation
28222// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
28223//
28224// - name: The name of the intent to delete. Format:
28225//   `projects//locations//agents//intents/`.
28226func (r *ProjectsLocationsAgentsIntentsService) Delete(name string) *ProjectsLocationsAgentsIntentsDeleteCall {
28227	c := &ProjectsLocationsAgentsIntentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28228	c.name = name
28229	return c
28230}
28231
28232// Fields allows partial responses to be retrieved. See
28233// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28234// for more information.
28235func (c *ProjectsLocationsAgentsIntentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsDeleteCall {
28236	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28237	return c
28238}
28239
28240// Context sets the context to be used in this call's Do method. Any
28241// pending HTTP request will be aborted if the provided context is
28242// canceled.
28243func (c *ProjectsLocationsAgentsIntentsDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsDeleteCall {
28244	c.ctx_ = ctx
28245	return c
28246}
28247
28248// Header returns an http.Header that can be modified by the caller to
28249// add HTTP headers to the request.
28250func (c *ProjectsLocationsAgentsIntentsDeleteCall) Header() http.Header {
28251	if c.header_ == nil {
28252		c.header_ = make(http.Header)
28253	}
28254	return c.header_
28255}
28256
28257func (c *ProjectsLocationsAgentsIntentsDeleteCall) doRequest(alt string) (*http.Response, error) {
28258	reqHeaders := make(http.Header)
28259	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28260	for k, v := range c.header_ {
28261		reqHeaders[k] = v
28262	}
28263	reqHeaders.Set("User-Agent", c.s.userAgent())
28264	var body io.Reader = nil
28265	c.urlParams_.Set("alt", alt)
28266	c.urlParams_.Set("prettyPrint", "false")
28267	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
28268	urls += "?" + c.urlParams_.Encode()
28269	req, err := http.NewRequest("DELETE", urls, body)
28270	if err != nil {
28271		return nil, err
28272	}
28273	req.Header = reqHeaders
28274	googleapi.Expand(req.URL, map[string]string{
28275		"name": c.name,
28276	})
28277	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28278}
28279
28280// Do executes the "dialogflow.projects.locations.agents.intents.delete" call.
28281// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
28282// non-2xx status code is an error. Response headers are in either
28283// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
28284// returned at all) in error.(*googleapi.Error).Header. Use
28285// googleapi.IsNotModified to check whether the returned error was
28286// because http.StatusNotModified was returned.
28287func (c *ProjectsLocationsAgentsIntentsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
28288	gensupport.SetOptions(c.urlParams_, opts...)
28289	res, err := c.doRequest("json")
28290	if res != nil && res.StatusCode == http.StatusNotModified {
28291		if res.Body != nil {
28292			res.Body.Close()
28293		}
28294		return nil, &googleapi.Error{
28295			Code:   res.StatusCode,
28296			Header: res.Header,
28297		}
28298	}
28299	if err != nil {
28300		return nil, err
28301	}
28302	defer googleapi.CloseBody(res)
28303	if err := googleapi.CheckResponse(res); err != nil {
28304		return nil, err
28305	}
28306	ret := &GoogleProtobufEmpty{
28307		ServerResponse: googleapi.ServerResponse{
28308			Header:         res.Header,
28309			HTTPStatusCode: res.StatusCode,
28310		},
28311	}
28312	target := &ret
28313	if err := gensupport.DecodeResponse(target, res); err != nil {
28314		return nil, err
28315	}
28316	return ret, nil
28317	// {
28318	//   "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).",
28319	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28320	//   "httpMethod": "DELETE",
28321	//   "id": "dialogflow.projects.locations.agents.intents.delete",
28322	//   "parameterOrder": [
28323	//     "name"
28324	//   ],
28325	//   "parameters": {
28326	//     "name": {
28327	//       "description": "Required. The name of the intent to delete. Format: `projects//locations//agents//intents/`.",
28328	//       "location": "path",
28329	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28330	//       "required": true,
28331	//       "type": "string"
28332	//     }
28333	//   },
28334	//   "path": "v3beta1/{+name}",
28335	//   "response": {
28336	//     "$ref": "GoogleProtobufEmpty"
28337	//   },
28338	//   "scopes": [
28339	//     "https://www.googleapis.com/auth/cloud-platform",
28340	//     "https://www.googleapis.com/auth/dialogflow"
28341	//   ]
28342	// }
28343
28344}
28345
28346// method id "dialogflow.projects.locations.agents.intents.get":
28347
28348type ProjectsLocationsAgentsIntentsGetCall struct {
28349	s            *Service
28350	name         string
28351	urlParams_   gensupport.URLParams
28352	ifNoneMatch_ string
28353	ctx_         context.Context
28354	header_      http.Header
28355}
28356
28357// Get: Retrieves the specified intent.
28358//
28359// - name: The name of the intent. Format:
28360//   `projects//locations//agents//intents/`.
28361func (r *ProjectsLocationsAgentsIntentsService) Get(name string) *ProjectsLocationsAgentsIntentsGetCall {
28362	c := &ProjectsLocationsAgentsIntentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28363	c.name = name
28364	return c
28365}
28366
28367// LanguageCode sets the optional parameter "languageCode": The language
28368// to retrieve the intent for. The following fields are language
28369// dependent: * `Intent.training_phrases.parts.text` If not specified,
28370// the agent's default language is used. Many languages
28371// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28372// supported. Note: languages must be enabled in the agent before they
28373// can be used.
28374func (c *ProjectsLocationsAgentsIntentsGetCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsGetCall {
28375	c.urlParams_.Set("languageCode", languageCode)
28376	return c
28377}
28378
28379// Fields allows partial responses to be retrieved. See
28380// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28381// for more information.
28382func (c *ProjectsLocationsAgentsIntentsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsGetCall {
28383	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28384	return c
28385}
28386
28387// IfNoneMatch sets the optional parameter which makes the operation
28388// fail if the object's ETag matches the given value. This is useful for
28389// getting updates only after the object has changed since the last
28390// request. Use googleapi.IsNotModified to check whether the response
28391// error from Do is the result of In-None-Match.
28392func (c *ProjectsLocationsAgentsIntentsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsGetCall {
28393	c.ifNoneMatch_ = entityTag
28394	return c
28395}
28396
28397// Context sets the context to be used in this call's Do method. Any
28398// pending HTTP request will be aborted if the provided context is
28399// canceled.
28400func (c *ProjectsLocationsAgentsIntentsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsGetCall {
28401	c.ctx_ = ctx
28402	return c
28403}
28404
28405// Header returns an http.Header that can be modified by the caller to
28406// add HTTP headers to the request.
28407func (c *ProjectsLocationsAgentsIntentsGetCall) Header() http.Header {
28408	if c.header_ == nil {
28409		c.header_ = make(http.Header)
28410	}
28411	return c.header_
28412}
28413
28414func (c *ProjectsLocationsAgentsIntentsGetCall) doRequest(alt string) (*http.Response, error) {
28415	reqHeaders := make(http.Header)
28416	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28417	for k, v := range c.header_ {
28418		reqHeaders[k] = v
28419	}
28420	reqHeaders.Set("User-Agent", c.s.userAgent())
28421	if c.ifNoneMatch_ != "" {
28422		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28423	}
28424	var body io.Reader = nil
28425	c.urlParams_.Set("alt", alt)
28426	c.urlParams_.Set("prettyPrint", "false")
28427	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
28428	urls += "?" + c.urlParams_.Encode()
28429	req, err := http.NewRequest("GET", urls, body)
28430	if err != nil {
28431		return nil, err
28432	}
28433	req.Header = reqHeaders
28434	googleapi.Expand(req.URL, map[string]string{
28435		"name": c.name,
28436	})
28437	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28438}
28439
28440// Do executes the "dialogflow.projects.locations.agents.intents.get" call.
28441// Exactly one of *GoogleCloudDialogflowCxV3beta1Intent or error will be
28442// non-nil. Any non-2xx status code is an error. Response headers are in
28443// either *GoogleCloudDialogflowCxV3beta1Intent.ServerResponse.Header or
28444// (if a response was returned at all) in
28445// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28446// whether the returned error was because http.StatusNotModified was
28447// returned.
28448func (c *ProjectsLocationsAgentsIntentsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Intent, error) {
28449	gensupport.SetOptions(c.urlParams_, opts...)
28450	res, err := c.doRequest("json")
28451	if res != nil && res.StatusCode == http.StatusNotModified {
28452		if res.Body != nil {
28453			res.Body.Close()
28454		}
28455		return nil, &googleapi.Error{
28456			Code:   res.StatusCode,
28457			Header: res.Header,
28458		}
28459	}
28460	if err != nil {
28461		return nil, err
28462	}
28463	defer googleapi.CloseBody(res)
28464	if err := googleapi.CheckResponse(res); err != nil {
28465		return nil, err
28466	}
28467	ret := &GoogleCloudDialogflowCxV3beta1Intent{
28468		ServerResponse: googleapi.ServerResponse{
28469			Header:         res.Header,
28470			HTTPStatusCode: res.StatusCode,
28471		},
28472	}
28473	target := &ret
28474	if err := gensupport.DecodeResponse(target, res); err != nil {
28475		return nil, err
28476	}
28477	return ret, nil
28478	// {
28479	//   "description": "Retrieves the specified intent.",
28480	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28481	//   "httpMethod": "GET",
28482	//   "id": "dialogflow.projects.locations.agents.intents.get",
28483	//   "parameterOrder": [
28484	//     "name"
28485	//   ],
28486	//   "parameters": {
28487	//     "languageCode": {
28488	//       "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.",
28489	//       "location": "query",
28490	//       "type": "string"
28491	//     },
28492	//     "name": {
28493	//       "description": "Required. The name of the intent. Format: `projects//locations//agents//intents/`.",
28494	//       "location": "path",
28495	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28496	//       "required": true,
28497	//       "type": "string"
28498	//     }
28499	//   },
28500	//   "path": "v3beta1/{+name}",
28501	//   "response": {
28502	//     "$ref": "GoogleCloudDialogflowCxV3beta1Intent"
28503	//   },
28504	//   "scopes": [
28505	//     "https://www.googleapis.com/auth/cloud-platform",
28506	//     "https://www.googleapis.com/auth/dialogflow"
28507	//   ]
28508	// }
28509
28510}
28511
28512// method id "dialogflow.projects.locations.agents.intents.list":
28513
28514type ProjectsLocationsAgentsIntentsListCall struct {
28515	s            *Service
28516	parent       string
28517	urlParams_   gensupport.URLParams
28518	ifNoneMatch_ string
28519	ctx_         context.Context
28520	header_      http.Header
28521}
28522
28523// List: Returns the list of all intents in the specified agent.
28524//
28525// - parent: The agent to list all intents for. Format:
28526//   `projects//locations//agents/`.
28527func (r *ProjectsLocationsAgentsIntentsService) List(parent string) *ProjectsLocationsAgentsIntentsListCall {
28528	c := &ProjectsLocationsAgentsIntentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28529	c.parent = parent
28530	return c
28531}
28532
28533// IntentView sets the optional parameter "intentView": The resource
28534// view to apply to the returned intent.
28535//
28536// Possible values:
28537//   "INTENT_VIEW_UNSPECIFIED" - Not specified. Treated as
28538// INTENT_VIEW_FULL.
28539//   "INTENT_VIEW_PARTIAL" - Training phrases field is not populated in
28540// the response.
28541//   "INTENT_VIEW_FULL" - All fields are populated.
28542func (c *ProjectsLocationsAgentsIntentsListCall) IntentView(intentView string) *ProjectsLocationsAgentsIntentsListCall {
28543	c.urlParams_.Set("intentView", intentView)
28544	return c
28545}
28546
28547// LanguageCode sets the optional parameter "languageCode": The language
28548// to list intents for. The following fields are language dependent: *
28549// `Intent.training_phrases.parts.text` If not specified, the agent's
28550// default language is used. Many languages
28551// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28552// supported. Note: languages must be enabled in the agent before they
28553// can be used.
28554func (c *ProjectsLocationsAgentsIntentsListCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsListCall {
28555	c.urlParams_.Set("languageCode", languageCode)
28556	return c
28557}
28558
28559// PageSize sets the optional parameter "pageSize": The maximum number
28560// of items to return in a single page. By default 100 and at most 1000.
28561func (c *ProjectsLocationsAgentsIntentsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsIntentsListCall {
28562	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
28563	return c
28564}
28565
28566// PageToken sets the optional parameter "pageToken": The
28567// next_page_token value returned from a previous list request.
28568func (c *ProjectsLocationsAgentsIntentsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsIntentsListCall {
28569	c.urlParams_.Set("pageToken", pageToken)
28570	return c
28571}
28572
28573// Fields allows partial responses to be retrieved. See
28574// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28575// for more information.
28576func (c *ProjectsLocationsAgentsIntentsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsListCall {
28577	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28578	return c
28579}
28580
28581// IfNoneMatch sets the optional parameter which makes the operation
28582// fail if the object's ETag matches the given value. This is useful for
28583// getting updates only after the object has changed since the last
28584// request. Use googleapi.IsNotModified to check whether the response
28585// error from Do is the result of In-None-Match.
28586func (c *ProjectsLocationsAgentsIntentsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsIntentsListCall {
28587	c.ifNoneMatch_ = entityTag
28588	return c
28589}
28590
28591// Context sets the context to be used in this call's Do method. Any
28592// pending HTTP request will be aborted if the provided context is
28593// canceled.
28594func (c *ProjectsLocationsAgentsIntentsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsListCall {
28595	c.ctx_ = ctx
28596	return c
28597}
28598
28599// Header returns an http.Header that can be modified by the caller to
28600// add HTTP headers to the request.
28601func (c *ProjectsLocationsAgentsIntentsListCall) Header() http.Header {
28602	if c.header_ == nil {
28603		c.header_ = make(http.Header)
28604	}
28605	return c.header_
28606}
28607
28608func (c *ProjectsLocationsAgentsIntentsListCall) doRequest(alt string) (*http.Response, error) {
28609	reqHeaders := make(http.Header)
28610	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28611	for k, v := range c.header_ {
28612		reqHeaders[k] = v
28613	}
28614	reqHeaders.Set("User-Agent", c.s.userAgent())
28615	if c.ifNoneMatch_ != "" {
28616		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
28617	}
28618	var body io.Reader = nil
28619	c.urlParams_.Set("alt", alt)
28620	c.urlParams_.Set("prettyPrint", "false")
28621	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/intents")
28622	urls += "?" + c.urlParams_.Encode()
28623	req, err := http.NewRequest("GET", urls, body)
28624	if err != nil {
28625		return nil, err
28626	}
28627	req.Header = reqHeaders
28628	googleapi.Expand(req.URL, map[string]string{
28629		"parent": c.parent,
28630	})
28631	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28632}
28633
28634// Do executes the "dialogflow.projects.locations.agents.intents.list" call.
28635// Exactly one of *GoogleCloudDialogflowCxV3beta1ListIntentsResponse or
28636// error will be non-nil. Any non-2xx status code is an error. Response
28637// headers are in either
28638// *GoogleCloudDialogflowCxV3beta1ListIntentsResponse.ServerResponse.Head
28639// er or (if a response was returned at all) in
28640// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28641// whether the returned error was because http.StatusNotModified was
28642// returned.
28643func (c *ProjectsLocationsAgentsIntentsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListIntentsResponse, error) {
28644	gensupport.SetOptions(c.urlParams_, opts...)
28645	res, err := c.doRequest("json")
28646	if res != nil && res.StatusCode == http.StatusNotModified {
28647		if res.Body != nil {
28648			res.Body.Close()
28649		}
28650		return nil, &googleapi.Error{
28651			Code:   res.StatusCode,
28652			Header: res.Header,
28653		}
28654	}
28655	if err != nil {
28656		return nil, err
28657	}
28658	defer googleapi.CloseBody(res)
28659	if err := googleapi.CheckResponse(res); err != nil {
28660		return nil, err
28661	}
28662	ret := &GoogleCloudDialogflowCxV3beta1ListIntentsResponse{
28663		ServerResponse: googleapi.ServerResponse{
28664			Header:         res.Header,
28665			HTTPStatusCode: res.StatusCode,
28666		},
28667	}
28668	target := &ret
28669	if err := gensupport.DecodeResponse(target, res); err != nil {
28670		return nil, err
28671	}
28672	return ret, nil
28673	// {
28674	//   "description": "Returns the list of all intents in the specified agent.",
28675	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents",
28676	//   "httpMethod": "GET",
28677	//   "id": "dialogflow.projects.locations.agents.intents.list",
28678	//   "parameterOrder": [
28679	//     "parent"
28680	//   ],
28681	//   "parameters": {
28682	//     "intentView": {
28683	//       "description": "The resource view to apply to the returned intent.",
28684	//       "enum": [
28685	//         "INTENT_VIEW_UNSPECIFIED",
28686	//         "INTENT_VIEW_PARTIAL",
28687	//         "INTENT_VIEW_FULL"
28688	//       ],
28689	//       "enumDescriptions": [
28690	//         "Not specified. Treated as INTENT_VIEW_FULL.",
28691	//         "Training phrases field is not populated in the response.",
28692	//         "All fields are populated."
28693	//       ],
28694	//       "location": "query",
28695	//       "type": "string"
28696	//     },
28697	//     "languageCode": {
28698	//       "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.",
28699	//       "location": "query",
28700	//       "type": "string"
28701	//     },
28702	//     "pageSize": {
28703	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
28704	//       "format": "int32",
28705	//       "location": "query",
28706	//       "type": "integer"
28707	//     },
28708	//     "pageToken": {
28709	//       "description": "The next_page_token value returned from a previous list request.",
28710	//       "location": "query",
28711	//       "type": "string"
28712	//     },
28713	//     "parent": {
28714	//       "description": "Required. The agent to list all intents for. Format: `projects//locations//agents/`.",
28715	//       "location": "path",
28716	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
28717	//       "required": true,
28718	//       "type": "string"
28719	//     }
28720	//   },
28721	//   "path": "v3beta1/{+parent}/intents",
28722	//   "response": {
28723	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListIntentsResponse"
28724	//   },
28725	//   "scopes": [
28726	//     "https://www.googleapis.com/auth/cloud-platform",
28727	//     "https://www.googleapis.com/auth/dialogflow"
28728	//   ]
28729	// }
28730
28731}
28732
28733// Pages invokes f for each page of results.
28734// A non-nil error returned from f will halt the iteration.
28735// The provided context supersedes any context provided to the Context method.
28736func (c *ProjectsLocationsAgentsIntentsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListIntentsResponse) error) error {
28737	c.ctx_ = ctx
28738	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
28739	for {
28740		x, err := c.Do()
28741		if err != nil {
28742			return err
28743		}
28744		if err := f(x); err != nil {
28745			return err
28746		}
28747		if x.NextPageToken == "" {
28748			return nil
28749		}
28750		c.PageToken(x.NextPageToken)
28751	}
28752}
28753
28754// method id "dialogflow.projects.locations.agents.intents.patch":
28755
28756type ProjectsLocationsAgentsIntentsPatchCall struct {
28757	s                                    *Service
28758	nameid                               string
28759	googleclouddialogflowcxv3beta1intent *GoogleCloudDialogflowCxV3beta1Intent
28760	urlParams_                           gensupport.URLParams
28761	ctx_                                 context.Context
28762	header_                              http.Header
28763}
28764
28765// Patch: Updates the specified intent. Note: You should always train a
28766// flow prior to sending it queries. See the training documentation
28767// (https://cloud.google.com/dialogflow/cx/docs/concept/training).
28768//
28769// - name: The unique identifier of the intent. Required for the
28770//   Intents.UpdateIntent method. Intents.CreateIntent populates the
28771//   name automatically. Format:
28772//   `projects//locations//agents//intents/`.
28773func (r *ProjectsLocationsAgentsIntentsService) Patch(nameid string, googleclouddialogflowcxv3beta1intent *GoogleCloudDialogflowCxV3beta1Intent) *ProjectsLocationsAgentsIntentsPatchCall {
28774	c := &ProjectsLocationsAgentsIntentsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28775	c.nameid = nameid
28776	c.googleclouddialogflowcxv3beta1intent = googleclouddialogflowcxv3beta1intent
28777	return c
28778}
28779
28780// LanguageCode sets the optional parameter "languageCode": The language
28781// of the following fields in `intent`: *
28782// `Intent.training_phrases.parts.text` If not specified, the agent's
28783// default language is used. Many languages
28784// (https://cloud.google.com/dialogflow/cx/docs/reference/language) are
28785// supported. Note: languages must be enabled in the agent before they
28786// can be used.
28787func (c *ProjectsLocationsAgentsIntentsPatchCall) LanguageCode(languageCode string) *ProjectsLocationsAgentsIntentsPatchCall {
28788	c.urlParams_.Set("languageCode", languageCode)
28789	return c
28790}
28791
28792// UpdateMask sets the optional parameter "updateMask": The mask to
28793// control which fields get updated. If the mask is not present, all
28794// fields will be updated.
28795func (c *ProjectsLocationsAgentsIntentsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsIntentsPatchCall {
28796	c.urlParams_.Set("updateMask", updateMask)
28797	return c
28798}
28799
28800// Fields allows partial responses to be retrieved. See
28801// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28802// for more information.
28803func (c *ProjectsLocationsAgentsIntentsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsIntentsPatchCall {
28804	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28805	return c
28806}
28807
28808// Context sets the context to be used in this call's Do method. Any
28809// pending HTTP request will be aborted if the provided context is
28810// canceled.
28811func (c *ProjectsLocationsAgentsIntentsPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsIntentsPatchCall {
28812	c.ctx_ = ctx
28813	return c
28814}
28815
28816// Header returns an http.Header that can be modified by the caller to
28817// add HTTP headers to the request.
28818func (c *ProjectsLocationsAgentsIntentsPatchCall) Header() http.Header {
28819	if c.header_ == nil {
28820		c.header_ = make(http.Header)
28821	}
28822	return c.header_
28823}
28824
28825func (c *ProjectsLocationsAgentsIntentsPatchCall) doRequest(alt string) (*http.Response, error) {
28826	reqHeaders := make(http.Header)
28827	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
28828	for k, v := range c.header_ {
28829		reqHeaders[k] = v
28830	}
28831	reqHeaders.Set("User-Agent", c.s.userAgent())
28832	var body io.Reader = nil
28833	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1intent)
28834	if err != nil {
28835		return nil, err
28836	}
28837	reqHeaders.Set("Content-Type", "application/json")
28838	c.urlParams_.Set("alt", alt)
28839	c.urlParams_.Set("prettyPrint", "false")
28840	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
28841	urls += "?" + c.urlParams_.Encode()
28842	req, err := http.NewRequest("PATCH", urls, body)
28843	if err != nil {
28844		return nil, err
28845	}
28846	req.Header = reqHeaders
28847	googleapi.Expand(req.URL, map[string]string{
28848		"name": c.nameid,
28849	})
28850	return gensupport.SendRequest(c.ctx_, c.s.client, req)
28851}
28852
28853// Do executes the "dialogflow.projects.locations.agents.intents.patch" call.
28854// Exactly one of *GoogleCloudDialogflowCxV3beta1Intent or error will be
28855// non-nil. Any non-2xx status code is an error. Response headers are in
28856// either *GoogleCloudDialogflowCxV3beta1Intent.ServerResponse.Header or
28857// (if a response was returned at all) in
28858// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
28859// whether the returned error was because http.StatusNotModified was
28860// returned.
28861func (c *ProjectsLocationsAgentsIntentsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Intent, error) {
28862	gensupport.SetOptions(c.urlParams_, opts...)
28863	res, err := c.doRequest("json")
28864	if res != nil && res.StatusCode == http.StatusNotModified {
28865		if res.Body != nil {
28866			res.Body.Close()
28867		}
28868		return nil, &googleapi.Error{
28869			Code:   res.StatusCode,
28870			Header: res.Header,
28871		}
28872	}
28873	if err != nil {
28874		return nil, err
28875	}
28876	defer googleapi.CloseBody(res)
28877	if err := googleapi.CheckResponse(res); err != nil {
28878		return nil, err
28879	}
28880	ret := &GoogleCloudDialogflowCxV3beta1Intent{
28881		ServerResponse: googleapi.ServerResponse{
28882			Header:         res.Header,
28883			HTTPStatusCode: res.StatusCode,
28884		},
28885	}
28886	target := &ret
28887	if err := gensupport.DecodeResponse(target, res); err != nil {
28888		return nil, err
28889	}
28890	return ret, nil
28891	// {
28892	//   "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).",
28893	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/intents/{intentsId}",
28894	//   "httpMethod": "PATCH",
28895	//   "id": "dialogflow.projects.locations.agents.intents.patch",
28896	//   "parameterOrder": [
28897	//     "name"
28898	//   ],
28899	//   "parameters": {
28900	//     "languageCode": {
28901	//       "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.",
28902	//       "location": "query",
28903	//       "type": "string"
28904	//     },
28905	//     "name": {
28906	//       "description": "The unique identifier of the intent. Required for the Intents.UpdateIntent method. Intents.CreateIntent populates the name automatically. Format: `projects//locations//agents//intents/`.",
28907	//       "location": "path",
28908	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/intents/[^/]+$",
28909	//       "required": true,
28910	//       "type": "string"
28911	//     },
28912	//     "updateMask": {
28913	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
28914	//       "format": "google-fieldmask",
28915	//       "location": "query",
28916	//       "type": "string"
28917	//     }
28918	//   },
28919	//   "path": "v3beta1/{+name}",
28920	//   "request": {
28921	//     "$ref": "GoogleCloudDialogflowCxV3beta1Intent"
28922	//   },
28923	//   "response": {
28924	//     "$ref": "GoogleCloudDialogflowCxV3beta1Intent"
28925	//   },
28926	//   "scopes": [
28927	//     "https://www.googleapis.com/auth/cloud-platform",
28928	//     "https://www.googleapis.com/auth/dialogflow"
28929	//   ]
28930	// }
28931
28932}
28933
28934// method id "dialogflow.projects.locations.agents.sessions.detectIntent":
28935
28936type ProjectsLocationsAgentsSessionsDetectIntentCall struct {
28937	s                                                 *Service
28938	sessionid                                         string
28939	googleclouddialogflowcxv3beta1detectintentrequest *GoogleCloudDialogflowCxV3beta1DetectIntentRequest
28940	urlParams_                                        gensupport.URLParams
28941	ctx_                                              context.Context
28942	header_                                           http.Header
28943}
28944
28945// DetectIntent: Processes a natural language query and returns
28946// structured, actionable data as a result. This method is not
28947// idempotent, because it may cause session entity types to be updated,
28948// which in turn might affect results of future queries. Note: Always
28949// use agent versions for production traffic. See Versions and
28950// environments
28951// (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28952//
28953// - session: The name of the session this query is sent to. Format:
28954//   `projects//locations//agents//sessions/` or
28955//   `projects//locations//agents//environments//sessions/`. If
28956//   `Environment ID` is not specified, we assume default 'draft'
28957//   environment. It's up to the API caller to choose an appropriate
28958//   `Session ID`. It can be a random number or some type of session
28959//   identifiers (preferably hashed). The length of the `Session ID`
28960//   must not exceed 36 characters. For more information, see the
28961//   sessions guide
28962//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
28963//   Note: Always use agent versions for production traffic. See
28964//   Versions and environments
28965//   (https://cloud.google.com/dialogflow/cx/docs/concept/version).
28966func (r *ProjectsLocationsAgentsSessionsService) DetectIntent(sessionid string, googleclouddialogflowcxv3beta1detectintentrequest *GoogleCloudDialogflowCxV3beta1DetectIntentRequest) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28967	c := &ProjectsLocationsAgentsSessionsDetectIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
28968	c.sessionid = sessionid
28969	c.googleclouddialogflowcxv3beta1detectintentrequest = googleclouddialogflowcxv3beta1detectintentrequest
28970	return c
28971}
28972
28973// Fields allows partial responses to be retrieved. See
28974// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
28975// for more information.
28976func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28977	c.urlParams_.Set("fields", googleapi.CombineFields(s))
28978	return c
28979}
28980
28981// Context sets the context to be used in this call's Do method. Any
28982// pending HTTP request will be aborted if the provided context is
28983// canceled.
28984func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsDetectIntentCall {
28985	c.ctx_ = ctx
28986	return c
28987}
28988
28989// Header returns an http.Header that can be modified by the caller to
28990// add HTTP headers to the request.
28991func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Header() http.Header {
28992	if c.header_ == nil {
28993		c.header_ = make(http.Header)
28994	}
28995	return c.header_
28996}
28997
28998func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) doRequest(alt string) (*http.Response, error) {
28999	reqHeaders := make(http.Header)
29000	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29001	for k, v := range c.header_ {
29002		reqHeaders[k] = v
29003	}
29004	reqHeaders.Set("User-Agent", c.s.userAgent())
29005	var body io.Reader = nil
29006	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1detectintentrequest)
29007	if err != nil {
29008		return nil, err
29009	}
29010	reqHeaders.Set("Content-Type", "application/json")
29011	c.urlParams_.Set("alt", alt)
29012	c.urlParams_.Set("prettyPrint", "false")
29013	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:detectIntent")
29014	urls += "?" + c.urlParams_.Encode()
29015	req, err := http.NewRequest("POST", urls, body)
29016	if err != nil {
29017		return nil, err
29018	}
29019	req.Header = reqHeaders
29020	googleapi.Expand(req.URL, map[string]string{
29021		"session": c.sessionid,
29022	})
29023	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29024}
29025
29026// Do executes the "dialogflow.projects.locations.agents.sessions.detectIntent" call.
29027// Exactly one of *GoogleCloudDialogflowCxV3beta1DetectIntentResponse or
29028// error will be non-nil. Any non-2xx status code is an error. Response
29029// headers are in either
29030// *GoogleCloudDialogflowCxV3beta1DetectIntentResponse.ServerResponse.Hea
29031// der or (if a response was returned at all) in
29032// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29033// whether the returned error was because http.StatusNotModified was
29034// returned.
29035func (c *ProjectsLocationsAgentsSessionsDetectIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1DetectIntentResponse, error) {
29036	gensupport.SetOptions(c.urlParams_, opts...)
29037	res, err := c.doRequest("json")
29038	if res != nil && res.StatusCode == http.StatusNotModified {
29039		if res.Body != nil {
29040			res.Body.Close()
29041		}
29042		return nil, &googleapi.Error{
29043			Code:   res.StatusCode,
29044			Header: res.Header,
29045		}
29046	}
29047	if err != nil {
29048		return nil, err
29049	}
29050	defer googleapi.CloseBody(res)
29051	if err := googleapi.CheckResponse(res); err != nil {
29052		return nil, err
29053	}
29054	ret := &GoogleCloudDialogflowCxV3beta1DetectIntentResponse{
29055		ServerResponse: googleapi.ServerResponse{
29056			Header:         res.Header,
29057			HTTPStatusCode: res.StatusCode,
29058		},
29059	}
29060	target := &ret
29061	if err := gensupport.DecodeResponse(target, res); err != nil {
29062		return nil, err
29063	}
29064	return ret, nil
29065	// {
29066	//   "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).",
29067	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:detectIntent",
29068	//   "httpMethod": "POST",
29069	//   "id": "dialogflow.projects.locations.agents.sessions.detectIntent",
29070	//   "parameterOrder": [
29071	//     "session"
29072	//   ],
29073	//   "parameters": {
29074	//     "session": {
29075	//       "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).",
29076	//       "location": "path",
29077	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29078	//       "required": true,
29079	//       "type": "string"
29080	//     }
29081	//   },
29082	//   "path": "v3beta1/{+session}:detectIntent",
29083	//   "request": {
29084	//     "$ref": "GoogleCloudDialogflowCxV3beta1DetectIntentRequest"
29085	//   },
29086	//   "response": {
29087	//     "$ref": "GoogleCloudDialogflowCxV3beta1DetectIntentResponse"
29088	//   },
29089	//   "scopes": [
29090	//     "https://www.googleapis.com/auth/cloud-platform",
29091	//     "https://www.googleapis.com/auth/dialogflow"
29092	//   ]
29093	// }
29094
29095}
29096
29097// method id "dialogflow.projects.locations.agents.sessions.fulfillIntent":
29098
29099type ProjectsLocationsAgentsSessionsFulfillIntentCall struct {
29100	s                                                  *Service
29101	sessionid                                          string
29102	googleclouddialogflowcxv3beta1fulfillintentrequest *GoogleCloudDialogflowCxV3beta1FulfillIntentRequest
29103	urlParams_                                         gensupport.URLParams
29104	ctx_                                               context.Context
29105	header_                                            http.Header
29106}
29107
29108// FulfillIntent: Fulfills a matched intent returned by MatchIntent.
29109// Must be called after MatchIntent, with input from
29110// MatchIntentResponse. Otherwise, the behavior is undefined.
29111//
29112// - session: The name of the session this query is sent to. Format:
29113//   `projects//locations//agents//sessions/` or
29114//   `projects//locations//agents//environments//sessions/`. If
29115//   `Environment ID` is not specified, we assume default 'draft'
29116//   environment. It's up to the API caller to choose an appropriate
29117//   `Session ID`. It can be a random number or some type of session
29118//   identifiers (preferably hashed). The length of the `Session ID`
29119//   must not exceed 36 characters. For more information, see the
29120//   sessions guide
29121//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
29122func (r *ProjectsLocationsAgentsSessionsService) FulfillIntent(sessionid string, googleclouddialogflowcxv3beta1fulfillintentrequest *GoogleCloudDialogflowCxV3beta1FulfillIntentRequest) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29123	c := &ProjectsLocationsAgentsSessionsFulfillIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29124	c.sessionid = sessionid
29125	c.googleclouddialogflowcxv3beta1fulfillintentrequest = googleclouddialogflowcxv3beta1fulfillintentrequest
29126	return c
29127}
29128
29129// Fields allows partial responses to be retrieved. See
29130// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29131// for more information.
29132func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29133	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29134	return c
29135}
29136
29137// Context sets the context to be used in this call's Do method. Any
29138// pending HTTP request will be aborted if the provided context is
29139// canceled.
29140func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsFulfillIntentCall {
29141	c.ctx_ = ctx
29142	return c
29143}
29144
29145// Header returns an http.Header that can be modified by the caller to
29146// add HTTP headers to the request.
29147func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Header() http.Header {
29148	if c.header_ == nil {
29149		c.header_ = make(http.Header)
29150	}
29151	return c.header_
29152}
29153
29154func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) doRequest(alt string) (*http.Response, error) {
29155	reqHeaders := make(http.Header)
29156	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29157	for k, v := range c.header_ {
29158		reqHeaders[k] = v
29159	}
29160	reqHeaders.Set("User-Agent", c.s.userAgent())
29161	var body io.Reader = nil
29162	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1fulfillintentrequest)
29163	if err != nil {
29164		return nil, err
29165	}
29166	reqHeaders.Set("Content-Type", "application/json")
29167	c.urlParams_.Set("alt", alt)
29168	c.urlParams_.Set("prettyPrint", "false")
29169	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:fulfillIntent")
29170	urls += "?" + c.urlParams_.Encode()
29171	req, err := http.NewRequest("POST", urls, body)
29172	if err != nil {
29173		return nil, err
29174	}
29175	req.Header = reqHeaders
29176	googleapi.Expand(req.URL, map[string]string{
29177		"session": c.sessionid,
29178	})
29179	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29180}
29181
29182// Do executes the "dialogflow.projects.locations.agents.sessions.fulfillIntent" call.
29183// Exactly one of *GoogleCloudDialogflowCxV3beta1FulfillIntentResponse
29184// or error will be non-nil. Any non-2xx status code is an error.
29185// Response headers are in either
29186// *GoogleCloudDialogflowCxV3beta1FulfillIntentResponse.ServerResponse.He
29187// ader or (if a response was returned at all) in
29188// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29189// whether the returned error was because http.StatusNotModified was
29190// returned.
29191func (c *ProjectsLocationsAgentsSessionsFulfillIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1FulfillIntentResponse, error) {
29192	gensupport.SetOptions(c.urlParams_, opts...)
29193	res, err := c.doRequest("json")
29194	if res != nil && res.StatusCode == http.StatusNotModified {
29195		if res.Body != nil {
29196			res.Body.Close()
29197		}
29198		return nil, &googleapi.Error{
29199			Code:   res.StatusCode,
29200			Header: res.Header,
29201		}
29202	}
29203	if err != nil {
29204		return nil, err
29205	}
29206	defer googleapi.CloseBody(res)
29207	if err := googleapi.CheckResponse(res); err != nil {
29208		return nil, err
29209	}
29210	ret := &GoogleCloudDialogflowCxV3beta1FulfillIntentResponse{
29211		ServerResponse: googleapi.ServerResponse{
29212			Header:         res.Header,
29213			HTTPStatusCode: res.StatusCode,
29214		},
29215	}
29216	target := &ret
29217	if err := gensupport.DecodeResponse(target, res); err != nil {
29218		return nil, err
29219	}
29220	return ret, nil
29221	// {
29222	//   "description": "Fulfills a matched intent returned by MatchIntent. Must be called after MatchIntent, with input from MatchIntentResponse. Otherwise, the behavior is undefined.",
29223	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:fulfillIntent",
29224	//   "httpMethod": "POST",
29225	//   "id": "dialogflow.projects.locations.agents.sessions.fulfillIntent",
29226	//   "parameterOrder": [
29227	//     "session"
29228	//   ],
29229	//   "parameters": {
29230	//     "session": {
29231	//       "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).",
29232	//       "location": "path",
29233	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29234	//       "required": true,
29235	//       "type": "string"
29236	//     }
29237	//   },
29238	//   "path": "v3beta1/{+session}:fulfillIntent",
29239	//   "request": {
29240	//     "$ref": "GoogleCloudDialogflowCxV3beta1FulfillIntentRequest"
29241	//   },
29242	//   "response": {
29243	//     "$ref": "GoogleCloudDialogflowCxV3beta1FulfillIntentResponse"
29244	//   },
29245	//   "scopes": [
29246	//     "https://www.googleapis.com/auth/cloud-platform",
29247	//     "https://www.googleapis.com/auth/dialogflow"
29248	//   ]
29249	// }
29250
29251}
29252
29253// method id "dialogflow.projects.locations.agents.sessions.matchIntent":
29254
29255type ProjectsLocationsAgentsSessionsMatchIntentCall struct {
29256	s                                                *Service
29257	sessionid                                        string
29258	googleclouddialogflowcxv3beta1matchintentrequest *GoogleCloudDialogflowCxV3beta1MatchIntentRequest
29259	urlParams_                                       gensupport.URLParams
29260	ctx_                                             context.Context
29261	header_                                          http.Header
29262}
29263
29264// MatchIntent: Returns preliminary intent match results, doesn't change
29265// the session status.
29266//
29267// - session: The name of the session this query is sent to. Format:
29268//   `projects//locations//agents//sessions/` or
29269//   `projects//locations//agents//environments//sessions/`. If
29270//   `Environment ID` is not specified, we assume default 'draft'
29271//   environment. It's up to the API caller to choose an appropriate
29272//   `Session ID`. It can be a random number or some type of session
29273//   identifiers (preferably hashed). The length of the `Session ID`
29274//   must not exceed 36 characters. For more information, see the
29275//   sessions guide
29276//   (https://cloud.google.com/dialogflow/cx/docs/concept/session).
29277func (r *ProjectsLocationsAgentsSessionsService) MatchIntent(sessionid string, googleclouddialogflowcxv3beta1matchintentrequest *GoogleCloudDialogflowCxV3beta1MatchIntentRequest) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29278	c := &ProjectsLocationsAgentsSessionsMatchIntentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29279	c.sessionid = sessionid
29280	c.googleclouddialogflowcxv3beta1matchintentrequest = googleclouddialogflowcxv3beta1matchintentrequest
29281	return c
29282}
29283
29284// Fields allows partial responses to be retrieved. See
29285// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29286// for more information.
29287func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29288	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29289	return c
29290}
29291
29292// Context sets the context to be used in this call's Do method. Any
29293// pending HTTP request will be aborted if the provided context is
29294// canceled.
29295func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsMatchIntentCall {
29296	c.ctx_ = ctx
29297	return c
29298}
29299
29300// Header returns an http.Header that can be modified by the caller to
29301// add HTTP headers to the request.
29302func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Header() http.Header {
29303	if c.header_ == nil {
29304		c.header_ = make(http.Header)
29305	}
29306	return c.header_
29307}
29308
29309func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) doRequest(alt string) (*http.Response, error) {
29310	reqHeaders := make(http.Header)
29311	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29312	for k, v := range c.header_ {
29313		reqHeaders[k] = v
29314	}
29315	reqHeaders.Set("User-Agent", c.s.userAgent())
29316	var body io.Reader = nil
29317	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1matchintentrequest)
29318	if err != nil {
29319		return nil, err
29320	}
29321	reqHeaders.Set("Content-Type", "application/json")
29322	c.urlParams_.Set("alt", alt)
29323	c.urlParams_.Set("prettyPrint", "false")
29324	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+session}:matchIntent")
29325	urls += "?" + c.urlParams_.Encode()
29326	req, err := http.NewRequest("POST", urls, body)
29327	if err != nil {
29328		return nil, err
29329	}
29330	req.Header = reqHeaders
29331	googleapi.Expand(req.URL, map[string]string{
29332		"session": c.sessionid,
29333	})
29334	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29335}
29336
29337// Do executes the "dialogflow.projects.locations.agents.sessions.matchIntent" call.
29338// Exactly one of *GoogleCloudDialogflowCxV3beta1MatchIntentResponse or
29339// error will be non-nil. Any non-2xx status code is an error. Response
29340// headers are in either
29341// *GoogleCloudDialogflowCxV3beta1MatchIntentResponse.ServerResponse.Head
29342// er or (if a response was returned at all) in
29343// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29344// whether the returned error was because http.StatusNotModified was
29345// returned.
29346func (c *ProjectsLocationsAgentsSessionsMatchIntentCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1MatchIntentResponse, error) {
29347	gensupport.SetOptions(c.urlParams_, opts...)
29348	res, err := c.doRequest("json")
29349	if res != nil && res.StatusCode == http.StatusNotModified {
29350		if res.Body != nil {
29351			res.Body.Close()
29352		}
29353		return nil, &googleapi.Error{
29354			Code:   res.StatusCode,
29355			Header: res.Header,
29356		}
29357	}
29358	if err != nil {
29359		return nil, err
29360	}
29361	defer googleapi.CloseBody(res)
29362	if err := googleapi.CheckResponse(res); err != nil {
29363		return nil, err
29364	}
29365	ret := &GoogleCloudDialogflowCxV3beta1MatchIntentResponse{
29366		ServerResponse: googleapi.ServerResponse{
29367			Header:         res.Header,
29368			HTTPStatusCode: res.StatusCode,
29369		},
29370	}
29371	target := &ret
29372	if err := gensupport.DecodeResponse(target, res); err != nil {
29373		return nil, err
29374	}
29375	return ret, nil
29376	// {
29377	//   "description": "Returns preliminary intent match results, doesn't change the session status.",
29378	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}:matchIntent",
29379	//   "httpMethod": "POST",
29380	//   "id": "dialogflow.projects.locations.agents.sessions.matchIntent",
29381	//   "parameterOrder": [
29382	//     "session"
29383	//   ],
29384	//   "parameters": {
29385	//     "session": {
29386	//       "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).",
29387	//       "location": "path",
29388	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29389	//       "required": true,
29390	//       "type": "string"
29391	//     }
29392	//   },
29393	//   "path": "v3beta1/{+session}:matchIntent",
29394	//   "request": {
29395	//     "$ref": "GoogleCloudDialogflowCxV3beta1MatchIntentRequest"
29396	//   },
29397	//   "response": {
29398	//     "$ref": "GoogleCloudDialogflowCxV3beta1MatchIntentResponse"
29399	//   },
29400	//   "scopes": [
29401	//     "https://www.googleapis.com/auth/cloud-platform",
29402	//     "https://www.googleapis.com/auth/dialogflow"
29403	//   ]
29404	// }
29405
29406}
29407
29408// method id "dialogflow.projects.locations.agents.sessions.entityTypes.create":
29409
29410type ProjectsLocationsAgentsSessionsEntityTypesCreateCall struct {
29411	s                                               *Service
29412	parent                                          string
29413	googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType
29414	urlParams_                                      gensupport.URLParams
29415	ctx_                                            context.Context
29416	header_                                         http.Header
29417}
29418
29419// Create: Creates a session entity type.
29420//
29421// - parent: The session to create a session entity type for. Format:
29422//   `projects//locations//agents//sessions/` or
29423//   `projects//locations//agents//environments//sessions/`. If
29424//   `Environment ID` is not specified, we assume default 'draft'
29425//   environment.
29426func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Create(parent string, googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29427	c := &ProjectsLocationsAgentsSessionsEntityTypesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29428	c.parent = parent
29429	c.googleclouddialogflowcxv3beta1sessionentitytype = googleclouddialogflowcxv3beta1sessionentitytype
29430	return c
29431}
29432
29433// Fields allows partial responses to be retrieved. See
29434// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29435// for more information.
29436func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29437	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29438	return c
29439}
29440
29441// Context sets the context to be used in this call's Do method. Any
29442// pending HTTP request will be aborted if the provided context is
29443// canceled.
29444func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesCreateCall {
29445	c.ctx_ = ctx
29446	return c
29447}
29448
29449// Header returns an http.Header that can be modified by the caller to
29450// add HTTP headers to the request.
29451func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Header() http.Header {
29452	if c.header_ == nil {
29453		c.header_ = make(http.Header)
29454	}
29455	return c.header_
29456}
29457
29458func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) doRequest(alt string) (*http.Response, error) {
29459	reqHeaders := make(http.Header)
29460	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29461	for k, v := range c.header_ {
29462		reqHeaders[k] = v
29463	}
29464	reqHeaders.Set("User-Agent", c.s.userAgent())
29465	var body io.Reader = nil
29466	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1sessionentitytype)
29467	if err != nil {
29468		return nil, err
29469	}
29470	reqHeaders.Set("Content-Type", "application/json")
29471	c.urlParams_.Set("alt", alt)
29472	c.urlParams_.Set("prettyPrint", "false")
29473	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
29474	urls += "?" + c.urlParams_.Encode()
29475	req, err := http.NewRequest("POST", urls, body)
29476	if err != nil {
29477		return nil, err
29478	}
29479	req.Header = reqHeaders
29480	googleapi.Expand(req.URL, map[string]string{
29481		"parent": c.parent,
29482	})
29483	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29484}
29485
29486// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.create" call.
29487// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
29488// error will be non-nil. Any non-2xx status code is an error. Response
29489// headers are in either
29490// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
29491//  or (if a response was returned at all) in
29492// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29493// whether the returned error was because http.StatusNotModified was
29494// returned.
29495func (c *ProjectsLocationsAgentsSessionsEntityTypesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
29496	gensupport.SetOptions(c.urlParams_, opts...)
29497	res, err := c.doRequest("json")
29498	if res != nil && res.StatusCode == http.StatusNotModified {
29499		if res.Body != nil {
29500			res.Body.Close()
29501		}
29502		return nil, &googleapi.Error{
29503			Code:   res.StatusCode,
29504			Header: res.Header,
29505		}
29506	}
29507	if err != nil {
29508		return nil, err
29509	}
29510	defer googleapi.CloseBody(res)
29511	if err := googleapi.CheckResponse(res); err != nil {
29512		return nil, err
29513	}
29514	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
29515		ServerResponse: googleapi.ServerResponse{
29516			Header:         res.Header,
29517			HTTPStatusCode: res.StatusCode,
29518		},
29519	}
29520	target := &ret
29521	if err := gensupport.DecodeResponse(target, res); err != nil {
29522		return nil, err
29523	}
29524	return ret, nil
29525	// {
29526	//   "description": "Creates a session entity type.",
29527	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
29528	//   "httpMethod": "POST",
29529	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.create",
29530	//   "parameterOrder": [
29531	//     "parent"
29532	//   ],
29533	//   "parameters": {
29534	//     "parent": {
29535	//       "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.",
29536	//       "location": "path",
29537	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
29538	//       "required": true,
29539	//       "type": "string"
29540	//     }
29541	//   },
29542	//   "path": "v3beta1/{+parent}/entityTypes",
29543	//   "request": {
29544	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
29545	//   },
29546	//   "response": {
29547	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
29548	//   },
29549	//   "scopes": [
29550	//     "https://www.googleapis.com/auth/cloud-platform",
29551	//     "https://www.googleapis.com/auth/dialogflow"
29552	//   ]
29553	// }
29554
29555}
29556
29557// method id "dialogflow.projects.locations.agents.sessions.entityTypes.delete":
29558
29559type ProjectsLocationsAgentsSessionsEntityTypesDeleteCall struct {
29560	s          *Service
29561	name       string
29562	urlParams_ gensupport.URLParams
29563	ctx_       context.Context
29564	header_    http.Header
29565}
29566
29567// Delete: Deletes the specified session entity type.
29568//
29569// - name: The name of the session entity type to delete. Format:
29570//   `projects//locations//agents//sessions//entityTypes/` or
29571//   `projects//locations//agents//environments//sessions//entityTypes/`.
29572//    If `Environment ID` is not specified, we assume default 'draft'
29573//   environment.
29574func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Delete(name string) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29575	c := &ProjectsLocationsAgentsSessionsEntityTypesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29576	c.name = name
29577	return c
29578}
29579
29580// Fields allows partial responses to be retrieved. See
29581// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29582// for more information.
29583func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29584	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29585	return c
29586}
29587
29588// Context sets the context to be used in this call's Do method. Any
29589// pending HTTP request will be aborted if the provided context is
29590// canceled.
29591func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall {
29592	c.ctx_ = ctx
29593	return c
29594}
29595
29596// Header returns an http.Header that can be modified by the caller to
29597// add HTTP headers to the request.
29598func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Header() http.Header {
29599	if c.header_ == nil {
29600		c.header_ = make(http.Header)
29601	}
29602	return c.header_
29603}
29604
29605func (c *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) doRequest(alt string) (*http.Response, error) {
29606	reqHeaders := make(http.Header)
29607	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29608	for k, v := range c.header_ {
29609		reqHeaders[k] = v
29610	}
29611	reqHeaders.Set("User-Agent", c.s.userAgent())
29612	var body io.Reader = nil
29613	c.urlParams_.Set("alt", alt)
29614	c.urlParams_.Set("prettyPrint", "false")
29615	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
29616	urls += "?" + c.urlParams_.Encode()
29617	req, err := http.NewRequest("DELETE", urls, body)
29618	if err != nil {
29619		return nil, err
29620	}
29621	req.Header = reqHeaders
29622	googleapi.Expand(req.URL, map[string]string{
29623		"name": c.name,
29624	})
29625	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29626}
29627
29628// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.delete" call.
29629// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
29630// non-2xx status code is an error. Response headers are in either
29631// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
29632// 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 *ProjectsLocationsAgentsSessionsEntityTypesDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, 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 := &GoogleProtobufEmpty{
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": "Deletes the specified session entity type.",
29667	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29668	//   "httpMethod": "DELETE",
29669	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.delete",
29670	//   "parameterOrder": [
29671	//     "name"
29672	//   ],
29673	//   "parameters": {
29674	//     "name": {
29675	//       "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.",
29676	//       "location": "path",
29677	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29678	//       "required": true,
29679	//       "type": "string"
29680	//     }
29681	//   },
29682	//   "path": "v3beta1/{+name}",
29683	//   "response": {
29684	//     "$ref": "GoogleProtobufEmpty"
29685	//   },
29686	//   "scopes": [
29687	//     "https://www.googleapis.com/auth/cloud-platform",
29688	//     "https://www.googleapis.com/auth/dialogflow"
29689	//   ]
29690	// }
29691
29692}
29693
29694// method id "dialogflow.projects.locations.agents.sessions.entityTypes.get":
29695
29696type ProjectsLocationsAgentsSessionsEntityTypesGetCall struct {
29697	s            *Service
29698	name         string
29699	urlParams_   gensupport.URLParams
29700	ifNoneMatch_ string
29701	ctx_         context.Context
29702	header_      http.Header
29703}
29704
29705// Get: Retrieves the specified session entity type.
29706//
29707// - name: The name of the session entity type. Format:
29708//   `projects//locations//agents//sessions//entityTypes/` or
29709//   `projects//locations//agents//environments//sessions//entityTypes/`.
29710//    If `Environment ID` is not specified, we assume default 'draft'
29711//   environment.
29712func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Get(name string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29713	c := &ProjectsLocationsAgentsSessionsEntityTypesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29714	c.name = name
29715	return c
29716}
29717
29718// Fields allows partial responses to be retrieved. See
29719// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29720// for more information.
29721func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29722	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29723	return c
29724}
29725
29726// IfNoneMatch sets the optional parameter which makes the operation
29727// fail if the object's ETag matches the given value. This is useful for
29728// getting updates only after the object has changed since the last
29729// request. Use googleapi.IsNotModified to check whether the response
29730// error from Do is the result of In-None-Match.
29731func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29732	c.ifNoneMatch_ = entityTag
29733	return c
29734}
29735
29736// Context sets the context to be used in this call's Do method. Any
29737// pending HTTP request will be aborted if the provided context is
29738// canceled.
29739func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesGetCall {
29740	c.ctx_ = ctx
29741	return c
29742}
29743
29744// Header returns an http.Header that can be modified by the caller to
29745// add HTTP headers to the request.
29746func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Header() http.Header {
29747	if c.header_ == nil {
29748		c.header_ = make(http.Header)
29749	}
29750	return c.header_
29751}
29752
29753func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) doRequest(alt string) (*http.Response, error) {
29754	reqHeaders := make(http.Header)
29755	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29756	for k, v := range c.header_ {
29757		reqHeaders[k] = v
29758	}
29759	reqHeaders.Set("User-Agent", c.s.userAgent())
29760	if c.ifNoneMatch_ != "" {
29761		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29762	}
29763	var body io.Reader = nil
29764	c.urlParams_.Set("alt", alt)
29765	c.urlParams_.Set("prettyPrint", "false")
29766	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
29767	urls += "?" + c.urlParams_.Encode()
29768	req, err := http.NewRequest("GET", urls, body)
29769	if err != nil {
29770		return nil, err
29771	}
29772	req.Header = reqHeaders
29773	googleapi.Expand(req.URL, map[string]string{
29774		"name": c.name,
29775	})
29776	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29777}
29778
29779// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.get" call.
29780// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
29781// error will be non-nil. Any non-2xx status code is an error. Response
29782// headers are in either
29783// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
29784//  or (if a response was returned at all) in
29785// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29786// whether the returned error was because http.StatusNotModified was
29787// returned.
29788func (c *ProjectsLocationsAgentsSessionsEntityTypesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
29789	gensupport.SetOptions(c.urlParams_, opts...)
29790	res, err := c.doRequest("json")
29791	if res != nil && res.StatusCode == http.StatusNotModified {
29792		if res.Body != nil {
29793			res.Body.Close()
29794		}
29795		return nil, &googleapi.Error{
29796			Code:   res.StatusCode,
29797			Header: res.Header,
29798		}
29799	}
29800	if err != nil {
29801		return nil, err
29802	}
29803	defer googleapi.CloseBody(res)
29804	if err := googleapi.CheckResponse(res); err != nil {
29805		return nil, err
29806	}
29807	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
29808		ServerResponse: googleapi.ServerResponse{
29809			Header:         res.Header,
29810			HTTPStatusCode: res.StatusCode,
29811		},
29812	}
29813	target := &ret
29814	if err := gensupport.DecodeResponse(target, res); err != nil {
29815		return nil, err
29816	}
29817	return ret, nil
29818	// {
29819	//   "description": "Retrieves the specified session entity type.",
29820	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
29821	//   "httpMethod": "GET",
29822	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.get",
29823	//   "parameterOrder": [
29824	//     "name"
29825	//   ],
29826	//   "parameters": {
29827	//     "name": {
29828	//       "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.",
29829	//       "location": "path",
29830	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
29831	//       "required": true,
29832	//       "type": "string"
29833	//     }
29834	//   },
29835	//   "path": "v3beta1/{+name}",
29836	//   "response": {
29837	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
29838	//   },
29839	//   "scopes": [
29840	//     "https://www.googleapis.com/auth/cloud-platform",
29841	//     "https://www.googleapis.com/auth/dialogflow"
29842	//   ]
29843	// }
29844
29845}
29846
29847// method id "dialogflow.projects.locations.agents.sessions.entityTypes.list":
29848
29849type ProjectsLocationsAgentsSessionsEntityTypesListCall struct {
29850	s            *Service
29851	parent       string
29852	urlParams_   gensupport.URLParams
29853	ifNoneMatch_ string
29854	ctx_         context.Context
29855	header_      http.Header
29856}
29857
29858// List: Returns the list of all session entity types in the specified
29859// session.
29860//
29861// - parent: The session to list all session entity types from. Format:
29862//   `projects//locations//agents//sessions/` or
29863//   `projects//locations//agents//environments//sessions/`. If
29864//   `Environment ID` is not specified, we assume default 'draft'
29865//   environment.
29866func (r *ProjectsLocationsAgentsSessionsEntityTypesService) List(parent string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29867	c := &ProjectsLocationsAgentsSessionsEntityTypesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
29868	c.parent = parent
29869	return c
29870}
29871
29872// PageSize sets the optional parameter "pageSize": The maximum number
29873// of items to return in a single page. By default 100 and at most 1000.
29874func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29875	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
29876	return c
29877}
29878
29879// PageToken sets the optional parameter "pageToken": The
29880// next_page_token value returned from a previous list request.
29881func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29882	c.urlParams_.Set("pageToken", pageToken)
29883	return c
29884}
29885
29886// Fields allows partial responses to be retrieved. See
29887// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
29888// for more information.
29889func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29890	c.urlParams_.Set("fields", googleapi.CombineFields(s))
29891	return c
29892}
29893
29894// IfNoneMatch sets the optional parameter which makes the operation
29895// fail if the object's ETag matches the given value. This is useful for
29896// getting updates only after the object has changed since the last
29897// request. Use googleapi.IsNotModified to check whether the response
29898// error from Do is the result of In-None-Match.
29899func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29900	c.ifNoneMatch_ = entityTag
29901	return c
29902}
29903
29904// Context sets the context to be used in this call's Do method. Any
29905// pending HTTP request will be aborted if the provided context is
29906// canceled.
29907func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesListCall {
29908	c.ctx_ = ctx
29909	return c
29910}
29911
29912// Header returns an http.Header that can be modified by the caller to
29913// add HTTP headers to the request.
29914func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Header() http.Header {
29915	if c.header_ == nil {
29916		c.header_ = make(http.Header)
29917	}
29918	return c.header_
29919}
29920
29921func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) doRequest(alt string) (*http.Response, error) {
29922	reqHeaders := make(http.Header)
29923	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
29924	for k, v := range c.header_ {
29925		reqHeaders[k] = v
29926	}
29927	reqHeaders.Set("User-Agent", c.s.userAgent())
29928	if c.ifNoneMatch_ != "" {
29929		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
29930	}
29931	var body io.Reader = nil
29932	c.urlParams_.Set("alt", alt)
29933	c.urlParams_.Set("prettyPrint", "false")
29934	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/entityTypes")
29935	urls += "?" + c.urlParams_.Encode()
29936	req, err := http.NewRequest("GET", urls, body)
29937	if err != nil {
29938		return nil, err
29939	}
29940	req.Header = reqHeaders
29941	googleapi.Expand(req.URL, map[string]string{
29942		"parent": c.parent,
29943	})
29944	return gensupport.SendRequest(c.ctx_, c.s.client, req)
29945}
29946
29947// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.list" call.
29948// Exactly one of
29949// *GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse or
29950// error will be non-nil. Any non-2xx status code is an error. Response
29951// headers are in either
29952// *GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse.ServerRe
29953// sponse.Header or (if a response was returned at all) in
29954// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
29955// whether the returned error was because http.StatusNotModified was
29956// returned.
29957func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse, error) {
29958	gensupport.SetOptions(c.urlParams_, opts...)
29959	res, err := c.doRequest("json")
29960	if res != nil && res.StatusCode == http.StatusNotModified {
29961		if res.Body != nil {
29962			res.Body.Close()
29963		}
29964		return nil, &googleapi.Error{
29965			Code:   res.StatusCode,
29966			Header: res.Header,
29967		}
29968	}
29969	if err != nil {
29970		return nil, err
29971	}
29972	defer googleapi.CloseBody(res)
29973	if err := googleapi.CheckResponse(res); err != nil {
29974		return nil, err
29975	}
29976	ret := &GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse{
29977		ServerResponse: googleapi.ServerResponse{
29978			Header:         res.Header,
29979			HTTPStatusCode: res.StatusCode,
29980		},
29981	}
29982	target := &ret
29983	if err := gensupport.DecodeResponse(target, res); err != nil {
29984		return nil, err
29985	}
29986	return ret, nil
29987	// {
29988	//   "description": "Returns the list of all session entity types in the specified session.",
29989	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes",
29990	//   "httpMethod": "GET",
29991	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.list",
29992	//   "parameterOrder": [
29993	//     "parent"
29994	//   ],
29995	//   "parameters": {
29996	//     "pageSize": {
29997	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
29998	//       "format": "int32",
29999	//       "location": "query",
30000	//       "type": "integer"
30001	//     },
30002	//     "pageToken": {
30003	//       "description": "The next_page_token value returned from a previous list request.",
30004	//       "location": "query",
30005	//       "type": "string"
30006	//     },
30007	//     "parent": {
30008	//       "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.",
30009	//       "location": "path",
30010	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+$",
30011	//       "required": true,
30012	//       "type": "string"
30013	//     }
30014	//   },
30015	//   "path": "v3beta1/{+parent}/entityTypes",
30016	//   "response": {
30017	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse"
30018	//   },
30019	//   "scopes": [
30020	//     "https://www.googleapis.com/auth/cloud-platform",
30021	//     "https://www.googleapis.com/auth/dialogflow"
30022	//   ]
30023	// }
30024
30025}
30026
30027// Pages invokes f for each page of results.
30028// A non-nil error returned from f will halt the iteration.
30029// The provided context supersedes any context provided to the Context method.
30030func (c *ProjectsLocationsAgentsSessionsEntityTypesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListSessionEntityTypesResponse) error) error {
30031	c.ctx_ = ctx
30032	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
30033	for {
30034		x, err := c.Do()
30035		if err != nil {
30036			return err
30037		}
30038		if err := f(x); err != nil {
30039			return err
30040		}
30041		if x.NextPageToken == "" {
30042			return nil
30043		}
30044		c.PageToken(x.NextPageToken)
30045	}
30046}
30047
30048// method id "dialogflow.projects.locations.agents.sessions.entityTypes.patch":
30049
30050type ProjectsLocationsAgentsSessionsEntityTypesPatchCall struct {
30051	s                                               *Service
30052	nameid                                          string
30053	googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType
30054	urlParams_                                      gensupport.URLParams
30055	ctx_                                            context.Context
30056	header_                                         http.Header
30057}
30058
30059// Patch: Updates the specified session entity type.
30060//
30061// - name: The unique identifier of the session entity type. Format:
30062//   `projects//locations//agents//sessions//entityTypes/` or
30063//   `projects//locations//agents//environments//sessions//entityTypes/`.
30064//    If `Environment ID` is not specified, we assume default 'draft'
30065//   environment.
30066func (r *ProjectsLocationsAgentsSessionsEntityTypesService) Patch(nameid string, googleclouddialogflowcxv3beta1sessionentitytype *GoogleCloudDialogflowCxV3beta1SessionEntityType) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30067	c := &ProjectsLocationsAgentsSessionsEntityTypesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30068	c.nameid = nameid
30069	c.googleclouddialogflowcxv3beta1sessionentitytype = googleclouddialogflowcxv3beta1sessionentitytype
30070	return c
30071}
30072
30073// UpdateMask sets the optional parameter "updateMask": The mask to
30074// control which fields get updated.
30075func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30076	c.urlParams_.Set("updateMask", updateMask)
30077	return c
30078}
30079
30080// Fields allows partial responses to be retrieved. See
30081// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30082// for more information.
30083func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30084	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30085	return c
30086}
30087
30088// Context sets the context to be used in this call's Do method. Any
30089// pending HTTP request will be aborted if the provided context is
30090// canceled.
30091func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsSessionsEntityTypesPatchCall {
30092	c.ctx_ = ctx
30093	return c
30094}
30095
30096// Header returns an http.Header that can be modified by the caller to
30097// add HTTP headers to the request.
30098func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Header() http.Header {
30099	if c.header_ == nil {
30100		c.header_ = make(http.Header)
30101	}
30102	return c.header_
30103}
30104
30105func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) doRequest(alt string) (*http.Response, error) {
30106	reqHeaders := make(http.Header)
30107	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30108	for k, v := range c.header_ {
30109		reqHeaders[k] = v
30110	}
30111	reqHeaders.Set("User-Agent", c.s.userAgent())
30112	var body io.Reader = nil
30113	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1sessionentitytype)
30114	if err != nil {
30115		return nil, err
30116	}
30117	reqHeaders.Set("Content-Type", "application/json")
30118	c.urlParams_.Set("alt", alt)
30119	c.urlParams_.Set("prettyPrint", "false")
30120	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
30121	urls += "?" + c.urlParams_.Encode()
30122	req, err := http.NewRequest("PATCH", urls, body)
30123	if err != nil {
30124		return nil, err
30125	}
30126	req.Header = reqHeaders
30127	googleapi.Expand(req.URL, map[string]string{
30128		"name": c.nameid,
30129	})
30130	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30131}
30132
30133// Do executes the "dialogflow.projects.locations.agents.sessions.entityTypes.patch" call.
30134// Exactly one of *GoogleCloudDialogflowCxV3beta1SessionEntityType or
30135// error will be non-nil. Any non-2xx status code is an error. Response
30136// headers are in either
30137// *GoogleCloudDialogflowCxV3beta1SessionEntityType.ServerResponse.Header
30138//  or (if a response was returned at all) in
30139// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30140// whether the returned error was because http.StatusNotModified was
30141// returned.
30142func (c *ProjectsLocationsAgentsSessionsEntityTypesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SessionEntityType, error) {
30143	gensupport.SetOptions(c.urlParams_, opts...)
30144	res, err := c.doRequest("json")
30145	if res != nil && res.StatusCode == http.StatusNotModified {
30146		if res.Body != nil {
30147			res.Body.Close()
30148		}
30149		return nil, &googleapi.Error{
30150			Code:   res.StatusCode,
30151			Header: res.Header,
30152		}
30153	}
30154	if err != nil {
30155		return nil, err
30156	}
30157	defer googleapi.CloseBody(res)
30158	if err := googleapi.CheckResponse(res); err != nil {
30159		return nil, err
30160	}
30161	ret := &GoogleCloudDialogflowCxV3beta1SessionEntityType{
30162		ServerResponse: googleapi.ServerResponse{
30163			Header:         res.Header,
30164			HTTPStatusCode: res.StatusCode,
30165		},
30166	}
30167	target := &ret
30168	if err := gensupport.DecodeResponse(target, res); err != nil {
30169		return nil, err
30170	}
30171	return ret, nil
30172	// {
30173	//   "description": "Updates the specified session entity type.",
30174	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/sessions/{sessionsId}/entityTypes/{entityTypesId}",
30175	//   "httpMethod": "PATCH",
30176	//   "id": "dialogflow.projects.locations.agents.sessions.entityTypes.patch",
30177	//   "parameterOrder": [
30178	//     "name"
30179	//   ],
30180	//   "parameters": {
30181	//     "name": {
30182	//       "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.",
30183	//       "location": "path",
30184	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/sessions/[^/]+/entityTypes/[^/]+$",
30185	//       "required": true,
30186	//       "type": "string"
30187	//     },
30188	//     "updateMask": {
30189	//       "description": "The mask to control which fields get updated.",
30190	//       "format": "google-fieldmask",
30191	//       "location": "query",
30192	//       "type": "string"
30193	//     }
30194	//   },
30195	//   "path": "v3beta1/{+name}",
30196	//   "request": {
30197	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
30198	//   },
30199	//   "response": {
30200	//     "$ref": "GoogleCloudDialogflowCxV3beta1SessionEntityType"
30201	//   },
30202	//   "scopes": [
30203	//     "https://www.googleapis.com/auth/cloud-platform",
30204	//     "https://www.googleapis.com/auth/dialogflow"
30205	//   ]
30206	// }
30207
30208}
30209
30210// method id "dialogflow.projects.locations.agents.testCases.batchDelete":
30211
30212type ProjectsLocationsAgentsTestCasesBatchDeleteCall struct {
30213	s                                                         *Service
30214	parent                                                    string
30215	googleclouddialogflowcxv3beta1batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest
30216	urlParams_                                                gensupport.URLParams
30217	ctx_                                                      context.Context
30218	header_                                                   http.Header
30219}
30220
30221// BatchDelete: Batch deletes test cases.
30222//
30223// - parent: The agent to delete test cases from. Format:
30224//   `projects//locations//agents/`.
30225func (r *ProjectsLocationsAgentsTestCasesService) BatchDelete(parent string, googleclouddialogflowcxv3beta1batchdeletetestcasesrequest *GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30226	c := &ProjectsLocationsAgentsTestCasesBatchDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30227	c.parent = parent
30228	c.googleclouddialogflowcxv3beta1batchdeletetestcasesrequest = googleclouddialogflowcxv3beta1batchdeletetestcasesrequest
30229	return c
30230}
30231
30232// Fields allows partial responses to be retrieved. See
30233// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30234// for more information.
30235func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30236	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30237	return c
30238}
30239
30240// Context sets the context to be used in this call's Do method. Any
30241// pending HTTP request will be aborted if the provided context is
30242// canceled.
30243func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchDeleteCall {
30244	c.ctx_ = ctx
30245	return c
30246}
30247
30248// Header returns an http.Header that can be modified by the caller to
30249// add HTTP headers to the request.
30250func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Header() http.Header {
30251	if c.header_ == nil {
30252		c.header_ = make(http.Header)
30253	}
30254	return c.header_
30255}
30256
30257func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) doRequest(alt string) (*http.Response, error) {
30258	reqHeaders := make(http.Header)
30259	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30260	for k, v := range c.header_ {
30261		reqHeaders[k] = v
30262	}
30263	reqHeaders.Set("User-Agent", c.s.userAgent())
30264	var body io.Reader = nil
30265	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1batchdeletetestcasesrequest)
30266	if err != nil {
30267		return nil, err
30268	}
30269	reqHeaders.Set("Content-Type", "application/json")
30270	c.urlParams_.Set("alt", alt)
30271	c.urlParams_.Set("prettyPrint", "false")
30272	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases:batchDelete")
30273	urls += "?" + c.urlParams_.Encode()
30274	req, err := http.NewRequest("POST", urls, body)
30275	if err != nil {
30276		return nil, err
30277	}
30278	req.Header = reqHeaders
30279	googleapi.Expand(req.URL, map[string]string{
30280		"parent": c.parent,
30281	})
30282	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30283}
30284
30285// Do executes the "dialogflow.projects.locations.agents.testCases.batchDelete" call.
30286// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
30287// non-2xx status code is an error. Response headers are in either
30288// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
30289// returned at all) in error.(*googleapi.Error).Header. Use
30290// googleapi.IsNotModified to check whether the returned error was
30291// because http.StatusNotModified was returned.
30292func (c *ProjectsLocationsAgentsTestCasesBatchDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
30293	gensupport.SetOptions(c.urlParams_, opts...)
30294	res, err := c.doRequest("json")
30295	if res != nil && res.StatusCode == http.StatusNotModified {
30296		if res.Body != nil {
30297			res.Body.Close()
30298		}
30299		return nil, &googleapi.Error{
30300			Code:   res.StatusCode,
30301			Header: res.Header,
30302		}
30303	}
30304	if err != nil {
30305		return nil, err
30306	}
30307	defer googleapi.CloseBody(res)
30308	if err := googleapi.CheckResponse(res); err != nil {
30309		return nil, err
30310	}
30311	ret := &GoogleProtobufEmpty{
30312		ServerResponse: googleapi.ServerResponse{
30313			Header:         res.Header,
30314			HTTPStatusCode: res.StatusCode,
30315		},
30316	}
30317	target := &ret
30318	if err := gensupport.DecodeResponse(target, res); err != nil {
30319		return nil, err
30320	}
30321	return ret, nil
30322	// {
30323	//   "description": "Batch deletes test cases.",
30324	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchDelete",
30325	//   "httpMethod": "POST",
30326	//   "id": "dialogflow.projects.locations.agents.testCases.batchDelete",
30327	//   "parameterOrder": [
30328	//     "parent"
30329	//   ],
30330	//   "parameters": {
30331	//     "parent": {
30332	//       "description": "Required. The agent to delete test cases from. Format: `projects//locations//agents/`.",
30333	//       "location": "path",
30334	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30335	//       "required": true,
30336	//       "type": "string"
30337	//     }
30338	//   },
30339	//   "path": "v3beta1/{+parent}/testCases:batchDelete",
30340	//   "request": {
30341	//     "$ref": "GoogleCloudDialogflowCxV3beta1BatchDeleteTestCasesRequest"
30342	//   },
30343	//   "response": {
30344	//     "$ref": "GoogleProtobufEmpty"
30345	//   },
30346	//   "scopes": [
30347	//     "https://www.googleapis.com/auth/cloud-platform",
30348	//     "https://www.googleapis.com/auth/dialogflow"
30349	//   ]
30350	// }
30351
30352}
30353
30354// method id "dialogflow.projects.locations.agents.testCases.batchRun":
30355
30356type ProjectsLocationsAgentsTestCasesBatchRunCall struct {
30357	s                                                      *Service
30358	parent                                                 string
30359	googleclouddialogflowcxv3beta1batchruntestcasesrequest *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest
30360	urlParams_                                             gensupport.URLParams
30361	ctx_                                                   context.Context
30362	header_                                                http.Header
30363}
30364
30365// BatchRun: Kicks off a batch run of test cases. This method is a
30366// long-running operation
30367// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
30368// The returned `Operation` type has the following method-specific
30369// fields: - `metadata`: BatchRunTestCasesMetadata - `response`:
30370// BatchRunTestCasesResponse
30371//
30372// - parent: Agent name. Format: `projects//locations//agents/ `.
30373func (r *ProjectsLocationsAgentsTestCasesService) BatchRun(parent string, googleclouddialogflowcxv3beta1batchruntestcasesrequest *GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30374	c := &ProjectsLocationsAgentsTestCasesBatchRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30375	c.parent = parent
30376	c.googleclouddialogflowcxv3beta1batchruntestcasesrequest = googleclouddialogflowcxv3beta1batchruntestcasesrequest
30377	return c
30378}
30379
30380// Fields allows partial responses to be retrieved. See
30381// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30382// for more information.
30383func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30384	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30385	return c
30386}
30387
30388// Context sets the context to be used in this call's Do method. Any
30389// pending HTTP request will be aborted if the provided context is
30390// canceled.
30391func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesBatchRunCall {
30392	c.ctx_ = ctx
30393	return c
30394}
30395
30396// Header returns an http.Header that can be modified by the caller to
30397// add HTTP headers to the request.
30398func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Header() http.Header {
30399	if c.header_ == nil {
30400		c.header_ = make(http.Header)
30401	}
30402	return c.header_
30403}
30404
30405func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) doRequest(alt string) (*http.Response, error) {
30406	reqHeaders := make(http.Header)
30407	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30408	for k, v := range c.header_ {
30409		reqHeaders[k] = v
30410	}
30411	reqHeaders.Set("User-Agent", c.s.userAgent())
30412	var body io.Reader = nil
30413	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1batchruntestcasesrequest)
30414	if err != nil {
30415		return nil, err
30416	}
30417	reqHeaders.Set("Content-Type", "application/json")
30418	c.urlParams_.Set("alt", alt)
30419	c.urlParams_.Set("prettyPrint", "false")
30420	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases:batchRun")
30421	urls += "?" + c.urlParams_.Encode()
30422	req, err := http.NewRequest("POST", urls, body)
30423	if err != nil {
30424		return nil, err
30425	}
30426	req.Header = reqHeaders
30427	googleapi.Expand(req.URL, map[string]string{
30428		"parent": c.parent,
30429	})
30430	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30431}
30432
30433// Do executes the "dialogflow.projects.locations.agents.testCases.batchRun" call.
30434// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30435// Any non-2xx status code is an error. Response headers are in either
30436// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30437// was returned at all) in error.(*googleapi.Error).Header. Use
30438// googleapi.IsNotModified to check whether the returned error was
30439// because http.StatusNotModified was returned.
30440func (c *ProjectsLocationsAgentsTestCasesBatchRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30441	gensupport.SetOptions(c.urlParams_, opts...)
30442	res, err := c.doRequest("json")
30443	if res != nil && res.StatusCode == http.StatusNotModified {
30444		if res.Body != nil {
30445			res.Body.Close()
30446		}
30447		return nil, &googleapi.Error{
30448			Code:   res.StatusCode,
30449			Header: res.Header,
30450		}
30451	}
30452	if err != nil {
30453		return nil, err
30454	}
30455	defer googleapi.CloseBody(res)
30456	if err := googleapi.CheckResponse(res); err != nil {
30457		return nil, err
30458	}
30459	ret := &GoogleLongrunningOperation{
30460		ServerResponse: googleapi.ServerResponse{
30461			Header:         res.Header,
30462			HTTPStatusCode: res.StatusCode,
30463		},
30464	}
30465	target := &ret
30466	if err := gensupport.DecodeResponse(target, res); err != nil {
30467		return nil, err
30468	}
30469	return ret, nil
30470	// {
30471	//   "description": "Kicks off a batch run of test cases. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: BatchRunTestCasesMetadata - `response`: BatchRunTestCasesResponse",
30472	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:batchRun",
30473	//   "httpMethod": "POST",
30474	//   "id": "dialogflow.projects.locations.agents.testCases.batchRun",
30475	//   "parameterOrder": [
30476	//     "parent"
30477	//   ],
30478	//   "parameters": {
30479	//     "parent": {
30480	//       "description": "Required. Agent name. Format: `projects//locations//agents/ `.",
30481	//       "location": "path",
30482	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30483	//       "required": true,
30484	//       "type": "string"
30485	//     }
30486	//   },
30487	//   "path": "v3beta1/{+parent}/testCases:batchRun",
30488	//   "request": {
30489	//     "$ref": "GoogleCloudDialogflowCxV3beta1BatchRunTestCasesRequest"
30490	//   },
30491	//   "response": {
30492	//     "$ref": "GoogleLongrunningOperation"
30493	//   },
30494	//   "scopes": [
30495	//     "https://www.googleapis.com/auth/cloud-platform",
30496	//     "https://www.googleapis.com/auth/dialogflow"
30497	//   ]
30498	// }
30499
30500}
30501
30502// method id "dialogflow.projects.locations.agents.testCases.calculateCoverage":
30503
30504type ProjectsLocationsAgentsTestCasesCalculateCoverageCall struct {
30505	s            *Service
30506	agent        string
30507	urlParams_   gensupport.URLParams
30508	ifNoneMatch_ string
30509	ctx_         context.Context
30510	header_      http.Header
30511}
30512
30513// CalculateCoverage: Calculates the test coverage for an agent.
30514//
30515// - agent: The agent to calculate coverage for. Format:
30516//   `projects//locations//agents/`.
30517func (r *ProjectsLocationsAgentsTestCasesService) CalculateCoverage(agent string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30518	c := &ProjectsLocationsAgentsTestCasesCalculateCoverageCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30519	c.agent = agent
30520	return c
30521}
30522
30523// Type sets the optional parameter "type": Required. The type of
30524// coverage requested.
30525//
30526// Possible values:
30527//   "COVERAGE_TYPE_UNSPECIFIED" - Should never be used.
30528//   "INTENT" - Intent coverage.
30529//   "PAGE_TRANSITION" - Page transition coverage.
30530//   "TRANSITION_ROUTE_GROUP" - Transition route group coverage.
30531func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Type(type_ string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30532	c.urlParams_.Set("type", type_)
30533	return c
30534}
30535
30536// Fields allows partial responses to be retrieved. See
30537// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30538// for more information.
30539func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30540	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30541	return c
30542}
30543
30544// IfNoneMatch sets the optional parameter which makes the operation
30545// fail if the object's ETag matches the given value. This is useful for
30546// getting updates only after the object has changed since the last
30547// request. Use googleapi.IsNotModified to check whether the response
30548// error from Do is the result of In-None-Match.
30549func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30550	c.ifNoneMatch_ = entityTag
30551	return c
30552}
30553
30554// Context sets the context to be used in this call's Do method. Any
30555// pending HTTP request will be aborted if the provided context is
30556// canceled.
30557func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCalculateCoverageCall {
30558	c.ctx_ = ctx
30559	return c
30560}
30561
30562// Header returns an http.Header that can be modified by the caller to
30563// add HTTP headers to the request.
30564func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Header() http.Header {
30565	if c.header_ == nil {
30566		c.header_ = make(http.Header)
30567	}
30568	return c.header_
30569}
30570
30571func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) doRequest(alt string) (*http.Response, error) {
30572	reqHeaders := make(http.Header)
30573	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30574	for k, v := range c.header_ {
30575		reqHeaders[k] = v
30576	}
30577	reqHeaders.Set("User-Agent", c.s.userAgent())
30578	if c.ifNoneMatch_ != "" {
30579		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
30580	}
30581	var body io.Reader = nil
30582	c.urlParams_.Set("alt", alt)
30583	c.urlParams_.Set("prettyPrint", "false")
30584	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+agent}/testCases:calculateCoverage")
30585	urls += "?" + c.urlParams_.Encode()
30586	req, err := http.NewRequest("GET", urls, body)
30587	if err != nil {
30588		return nil, err
30589	}
30590	req.Header = reqHeaders
30591	googleapi.Expand(req.URL, map[string]string{
30592		"agent": c.agent,
30593	})
30594	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30595}
30596
30597// Do executes the "dialogflow.projects.locations.agents.testCases.calculateCoverage" call.
30598// Exactly one of
30599// *GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse or error
30600// will be non-nil. Any non-2xx status code is an error. Response
30601// headers are in either
30602// *GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse.ServerRespons
30603// e.Header or (if a response was returned at all) in
30604// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
30605// whether the returned error was because http.StatusNotModified was
30606// returned.
30607func (c *ProjectsLocationsAgentsTestCasesCalculateCoverageCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse, error) {
30608	gensupport.SetOptions(c.urlParams_, opts...)
30609	res, err := c.doRequest("json")
30610	if res != nil && res.StatusCode == http.StatusNotModified {
30611		if res.Body != nil {
30612			res.Body.Close()
30613		}
30614		return nil, &googleapi.Error{
30615			Code:   res.StatusCode,
30616			Header: res.Header,
30617		}
30618	}
30619	if err != nil {
30620		return nil, err
30621	}
30622	defer googleapi.CloseBody(res)
30623	if err := googleapi.CheckResponse(res); err != nil {
30624		return nil, err
30625	}
30626	ret := &GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse{
30627		ServerResponse: googleapi.ServerResponse{
30628			Header:         res.Header,
30629			HTTPStatusCode: res.StatusCode,
30630		},
30631	}
30632	target := &ret
30633	if err := gensupport.DecodeResponse(target, res); err != nil {
30634		return nil, err
30635	}
30636	return ret, nil
30637	// {
30638	//   "description": "Calculates the test coverage for an agent.",
30639	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:calculateCoverage",
30640	//   "httpMethod": "GET",
30641	//   "id": "dialogflow.projects.locations.agents.testCases.calculateCoverage",
30642	//   "parameterOrder": [
30643	//     "agent"
30644	//   ],
30645	//   "parameters": {
30646	//     "agent": {
30647	//       "description": "Required. The agent to calculate coverage for. Format: `projects//locations//agents/`.",
30648	//       "location": "path",
30649	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30650	//       "required": true,
30651	//       "type": "string"
30652	//     },
30653	//     "type": {
30654	//       "description": "Required. The type of coverage requested.",
30655	//       "enum": [
30656	//         "COVERAGE_TYPE_UNSPECIFIED",
30657	//         "INTENT",
30658	//         "PAGE_TRANSITION",
30659	//         "TRANSITION_ROUTE_GROUP"
30660	//       ],
30661	//       "enumDescriptions": [
30662	//         "Should never be used.",
30663	//         "Intent coverage.",
30664	//         "Page transition coverage.",
30665	//         "Transition route group coverage."
30666	//       ],
30667	//       "location": "query",
30668	//       "type": "string"
30669	//     }
30670	//   },
30671	//   "path": "v3beta1/{+agent}/testCases:calculateCoverage",
30672	//   "response": {
30673	//     "$ref": "GoogleCloudDialogflowCxV3beta1CalculateCoverageResponse"
30674	//   },
30675	//   "scopes": [
30676	//     "https://www.googleapis.com/auth/cloud-platform",
30677	//     "https://www.googleapis.com/auth/dialogflow"
30678	//   ]
30679	// }
30680
30681}
30682
30683// method id "dialogflow.projects.locations.agents.testCases.create":
30684
30685type ProjectsLocationsAgentsTestCasesCreateCall struct {
30686	s                                      *Service
30687	parent                                 string
30688	googleclouddialogflowcxv3beta1testcase *GoogleCloudDialogflowCxV3beta1TestCase
30689	urlParams_                             gensupport.URLParams
30690	ctx_                                   context.Context
30691	header_                                http.Header
30692}
30693
30694// Create: Creates a test case for the given agent.
30695//
30696// - parent: The agent to create the test case for. Format:
30697//   `projects//locations//agents/`.
30698func (r *ProjectsLocationsAgentsTestCasesService) Create(parent string, googleclouddialogflowcxv3beta1testcase *GoogleCloudDialogflowCxV3beta1TestCase) *ProjectsLocationsAgentsTestCasesCreateCall {
30699	c := &ProjectsLocationsAgentsTestCasesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30700	c.parent = parent
30701	c.googleclouddialogflowcxv3beta1testcase = googleclouddialogflowcxv3beta1testcase
30702	return c
30703}
30704
30705// Fields allows partial responses to be retrieved. See
30706// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30707// for more information.
30708func (c *ProjectsLocationsAgentsTestCasesCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesCreateCall {
30709	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30710	return c
30711}
30712
30713// Context sets the context to be used in this call's Do method. Any
30714// pending HTTP request will be aborted if the provided context is
30715// canceled.
30716func (c *ProjectsLocationsAgentsTestCasesCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesCreateCall {
30717	c.ctx_ = ctx
30718	return c
30719}
30720
30721// Header returns an http.Header that can be modified by the caller to
30722// add HTTP headers to the request.
30723func (c *ProjectsLocationsAgentsTestCasesCreateCall) Header() http.Header {
30724	if c.header_ == nil {
30725		c.header_ = make(http.Header)
30726	}
30727	return c.header_
30728}
30729
30730func (c *ProjectsLocationsAgentsTestCasesCreateCall) doRequest(alt string) (*http.Response, error) {
30731	reqHeaders := make(http.Header)
30732	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30733	for k, v := range c.header_ {
30734		reqHeaders[k] = v
30735	}
30736	reqHeaders.Set("User-Agent", c.s.userAgent())
30737	var body io.Reader = nil
30738	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1testcase)
30739	if err != nil {
30740		return nil, err
30741	}
30742	reqHeaders.Set("Content-Type", "application/json")
30743	c.urlParams_.Set("alt", alt)
30744	c.urlParams_.Set("prettyPrint", "false")
30745	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases")
30746	urls += "?" + c.urlParams_.Encode()
30747	req, err := http.NewRequest("POST", urls, body)
30748	if err != nil {
30749		return nil, err
30750	}
30751	req.Header = reqHeaders
30752	googleapi.Expand(req.URL, map[string]string{
30753		"parent": c.parent,
30754	})
30755	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30756}
30757
30758// Do executes the "dialogflow.projects.locations.agents.testCases.create" call.
30759// Exactly one of *GoogleCloudDialogflowCxV3beta1TestCase or error will
30760// be non-nil. Any non-2xx status code is an error. Response headers are
30761// in either
30762// *GoogleCloudDialogflowCxV3beta1TestCase.ServerResponse.Header or (if
30763// a response was returned at all) in error.(*googleapi.Error).Header.
30764// Use googleapi.IsNotModified to check whether the returned error was
30765// because http.StatusNotModified was returned.
30766func (c *ProjectsLocationsAgentsTestCasesCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TestCase, error) {
30767	gensupport.SetOptions(c.urlParams_, opts...)
30768	res, err := c.doRequest("json")
30769	if res != nil && res.StatusCode == http.StatusNotModified {
30770		if res.Body != nil {
30771			res.Body.Close()
30772		}
30773		return nil, &googleapi.Error{
30774			Code:   res.StatusCode,
30775			Header: res.Header,
30776		}
30777	}
30778	if err != nil {
30779		return nil, err
30780	}
30781	defer googleapi.CloseBody(res)
30782	if err := googleapi.CheckResponse(res); err != nil {
30783		return nil, err
30784	}
30785	ret := &GoogleCloudDialogflowCxV3beta1TestCase{
30786		ServerResponse: googleapi.ServerResponse{
30787			Header:         res.Header,
30788			HTTPStatusCode: res.StatusCode,
30789		},
30790	}
30791	target := &ret
30792	if err := gensupport.DecodeResponse(target, res); err != nil {
30793		return nil, err
30794	}
30795	return ret, nil
30796	// {
30797	//   "description": "Creates a test case for the given agent.",
30798	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
30799	//   "httpMethod": "POST",
30800	//   "id": "dialogflow.projects.locations.agents.testCases.create",
30801	//   "parameterOrder": [
30802	//     "parent"
30803	//   ],
30804	//   "parameters": {
30805	//     "parent": {
30806	//       "description": "Required. The agent to create the test case for. Format: `projects//locations//agents/`.",
30807	//       "location": "path",
30808	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30809	//       "required": true,
30810	//       "type": "string"
30811	//     }
30812	//   },
30813	//   "path": "v3beta1/{+parent}/testCases",
30814	//   "request": {
30815	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCase"
30816	//   },
30817	//   "response": {
30818	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCase"
30819	//   },
30820	//   "scopes": [
30821	//     "https://www.googleapis.com/auth/cloud-platform",
30822	//     "https://www.googleapis.com/auth/dialogflow"
30823	//   ]
30824	// }
30825
30826}
30827
30828// method id "dialogflow.projects.locations.agents.testCases.export":
30829
30830type ProjectsLocationsAgentsTestCasesExportCall struct {
30831	s                                                    *Service
30832	parent                                               string
30833	googleclouddialogflowcxv3beta1exporttestcasesrequest *GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest
30834	urlParams_                                           gensupport.URLParams
30835	ctx_                                                 context.Context
30836	header_                                              http.Header
30837}
30838
30839// Export: Exports the test cases under the agent to a Cloud Storage
30840// bucket or a local file. Filter can be applied to export a subset of
30841// test cases. This method is a long-running operation
30842// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
30843// The returned `Operation` type has the following method-specific
30844// fields: - `metadata`: ExportTestCasesMetadata - `response`:
30845// ExportTestCasesResponse
30846//
30847// - parent: The agent where to export test cases from. Format:
30848//   `projects//locations//agents/`.
30849func (r *ProjectsLocationsAgentsTestCasesService) Export(parent string, googleclouddialogflowcxv3beta1exporttestcasesrequest *GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest) *ProjectsLocationsAgentsTestCasesExportCall {
30850	c := &ProjectsLocationsAgentsTestCasesExportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30851	c.parent = parent
30852	c.googleclouddialogflowcxv3beta1exporttestcasesrequest = googleclouddialogflowcxv3beta1exporttestcasesrequest
30853	return c
30854}
30855
30856// Fields allows partial responses to be retrieved. See
30857// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
30858// for more information.
30859func (c *ProjectsLocationsAgentsTestCasesExportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesExportCall {
30860	c.urlParams_.Set("fields", googleapi.CombineFields(s))
30861	return c
30862}
30863
30864// Context sets the context to be used in this call's Do method. Any
30865// pending HTTP request will be aborted if the provided context is
30866// canceled.
30867func (c *ProjectsLocationsAgentsTestCasesExportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesExportCall {
30868	c.ctx_ = ctx
30869	return c
30870}
30871
30872// Header returns an http.Header that can be modified by the caller to
30873// add HTTP headers to the request.
30874func (c *ProjectsLocationsAgentsTestCasesExportCall) Header() http.Header {
30875	if c.header_ == nil {
30876		c.header_ = make(http.Header)
30877	}
30878	return c.header_
30879}
30880
30881func (c *ProjectsLocationsAgentsTestCasesExportCall) doRequest(alt string) (*http.Response, error) {
30882	reqHeaders := make(http.Header)
30883	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
30884	for k, v := range c.header_ {
30885		reqHeaders[k] = v
30886	}
30887	reqHeaders.Set("User-Agent", c.s.userAgent())
30888	var body io.Reader = nil
30889	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1exporttestcasesrequest)
30890	if err != nil {
30891		return nil, err
30892	}
30893	reqHeaders.Set("Content-Type", "application/json")
30894	c.urlParams_.Set("alt", alt)
30895	c.urlParams_.Set("prettyPrint", "false")
30896	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases:export")
30897	urls += "?" + c.urlParams_.Encode()
30898	req, err := http.NewRequest("POST", urls, body)
30899	if err != nil {
30900		return nil, err
30901	}
30902	req.Header = reqHeaders
30903	googleapi.Expand(req.URL, map[string]string{
30904		"parent": c.parent,
30905	})
30906	return gensupport.SendRequest(c.ctx_, c.s.client, req)
30907}
30908
30909// Do executes the "dialogflow.projects.locations.agents.testCases.export" call.
30910// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
30911// Any non-2xx status code is an error. Response headers are in either
30912// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
30913// was returned at all) in error.(*googleapi.Error).Header. Use
30914// googleapi.IsNotModified to check whether the returned error was
30915// because http.StatusNotModified was returned.
30916func (c *ProjectsLocationsAgentsTestCasesExportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
30917	gensupport.SetOptions(c.urlParams_, opts...)
30918	res, err := c.doRequest("json")
30919	if res != nil && res.StatusCode == http.StatusNotModified {
30920		if res.Body != nil {
30921			res.Body.Close()
30922		}
30923		return nil, &googleapi.Error{
30924			Code:   res.StatusCode,
30925			Header: res.Header,
30926		}
30927	}
30928	if err != nil {
30929		return nil, err
30930	}
30931	defer googleapi.CloseBody(res)
30932	if err := googleapi.CheckResponse(res); err != nil {
30933		return nil, err
30934	}
30935	ret := &GoogleLongrunningOperation{
30936		ServerResponse: googleapi.ServerResponse{
30937			Header:         res.Header,
30938			HTTPStatusCode: res.StatusCode,
30939		},
30940	}
30941	target := &ret
30942	if err := gensupport.DecodeResponse(target, res); err != nil {
30943		return nil, err
30944	}
30945	return ret, nil
30946	// {
30947	//   "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. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: ExportTestCasesMetadata - `response`: ExportTestCasesResponse",
30948	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:export",
30949	//   "httpMethod": "POST",
30950	//   "id": "dialogflow.projects.locations.agents.testCases.export",
30951	//   "parameterOrder": [
30952	//     "parent"
30953	//   ],
30954	//   "parameters": {
30955	//     "parent": {
30956	//       "description": "Required. The agent where to export test cases from. Format: `projects//locations//agents/`.",
30957	//       "location": "path",
30958	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
30959	//       "required": true,
30960	//       "type": "string"
30961	//     }
30962	//   },
30963	//   "path": "v3beta1/{+parent}/testCases:export",
30964	//   "request": {
30965	//     "$ref": "GoogleCloudDialogflowCxV3beta1ExportTestCasesRequest"
30966	//   },
30967	//   "response": {
30968	//     "$ref": "GoogleLongrunningOperation"
30969	//   },
30970	//   "scopes": [
30971	//     "https://www.googleapis.com/auth/cloud-platform",
30972	//     "https://www.googleapis.com/auth/dialogflow"
30973	//   ]
30974	// }
30975
30976}
30977
30978// method id "dialogflow.projects.locations.agents.testCases.get":
30979
30980type ProjectsLocationsAgentsTestCasesGetCall struct {
30981	s            *Service
30982	name         string
30983	urlParams_   gensupport.URLParams
30984	ifNoneMatch_ string
30985	ctx_         context.Context
30986	header_      http.Header
30987}
30988
30989// Get: Gets a test case.
30990//
30991// - name: The name of the testcase. Format:
30992//   `projects//locations//agents//testCases/`.
30993func (r *ProjectsLocationsAgentsTestCasesService) Get(name string) *ProjectsLocationsAgentsTestCasesGetCall {
30994	c := &ProjectsLocationsAgentsTestCasesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
30995	c.name = name
30996	return c
30997}
30998
30999// Fields allows partial responses to be retrieved. See
31000// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31001// for more information.
31002func (c *ProjectsLocationsAgentsTestCasesGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesGetCall {
31003	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31004	return c
31005}
31006
31007// IfNoneMatch sets the optional parameter which makes the operation
31008// fail if the object's ETag matches the given value. This is useful for
31009// getting updates only after the object has changed since the last
31010// request. Use googleapi.IsNotModified to check whether the response
31011// error from Do is the result of In-None-Match.
31012func (c *ProjectsLocationsAgentsTestCasesGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesGetCall {
31013	c.ifNoneMatch_ = entityTag
31014	return c
31015}
31016
31017// Context sets the context to be used in this call's Do method. Any
31018// pending HTTP request will be aborted if the provided context is
31019// canceled.
31020func (c *ProjectsLocationsAgentsTestCasesGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesGetCall {
31021	c.ctx_ = ctx
31022	return c
31023}
31024
31025// Header returns an http.Header that can be modified by the caller to
31026// add HTTP headers to the request.
31027func (c *ProjectsLocationsAgentsTestCasesGetCall) Header() http.Header {
31028	if c.header_ == nil {
31029		c.header_ = make(http.Header)
31030	}
31031	return c.header_
31032}
31033
31034func (c *ProjectsLocationsAgentsTestCasesGetCall) doRequest(alt string) (*http.Response, error) {
31035	reqHeaders := make(http.Header)
31036	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31037	for k, v := range c.header_ {
31038		reqHeaders[k] = v
31039	}
31040	reqHeaders.Set("User-Agent", c.s.userAgent())
31041	if c.ifNoneMatch_ != "" {
31042		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31043	}
31044	var body io.Reader = nil
31045	c.urlParams_.Set("alt", alt)
31046	c.urlParams_.Set("prettyPrint", "false")
31047	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
31048	urls += "?" + c.urlParams_.Encode()
31049	req, err := http.NewRequest("GET", urls, body)
31050	if err != nil {
31051		return nil, err
31052	}
31053	req.Header = reqHeaders
31054	googleapi.Expand(req.URL, map[string]string{
31055		"name": c.name,
31056	})
31057	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31058}
31059
31060// Do executes the "dialogflow.projects.locations.agents.testCases.get" call.
31061// Exactly one of *GoogleCloudDialogflowCxV3beta1TestCase or error will
31062// be non-nil. Any non-2xx status code is an error. Response headers are
31063// in either
31064// *GoogleCloudDialogflowCxV3beta1TestCase.ServerResponse.Header or (if
31065// a response was returned at all) in error.(*googleapi.Error).Header.
31066// Use googleapi.IsNotModified to check whether the returned error was
31067// because http.StatusNotModified was returned.
31068func (c *ProjectsLocationsAgentsTestCasesGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TestCase, error) {
31069	gensupport.SetOptions(c.urlParams_, opts...)
31070	res, err := c.doRequest("json")
31071	if res != nil && res.StatusCode == http.StatusNotModified {
31072		if res.Body != nil {
31073			res.Body.Close()
31074		}
31075		return nil, &googleapi.Error{
31076			Code:   res.StatusCode,
31077			Header: res.Header,
31078		}
31079	}
31080	if err != nil {
31081		return nil, err
31082	}
31083	defer googleapi.CloseBody(res)
31084	if err := googleapi.CheckResponse(res); err != nil {
31085		return nil, err
31086	}
31087	ret := &GoogleCloudDialogflowCxV3beta1TestCase{
31088		ServerResponse: googleapi.ServerResponse{
31089			Header:         res.Header,
31090			HTTPStatusCode: res.StatusCode,
31091		},
31092	}
31093	target := &ret
31094	if err := gensupport.DecodeResponse(target, res); err != nil {
31095		return nil, err
31096	}
31097	return ret, nil
31098	// {
31099	//   "description": "Gets a test case.",
31100	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
31101	//   "httpMethod": "GET",
31102	//   "id": "dialogflow.projects.locations.agents.testCases.get",
31103	//   "parameterOrder": [
31104	//     "name"
31105	//   ],
31106	//   "parameters": {
31107	//     "name": {
31108	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases/`.",
31109	//       "location": "path",
31110	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31111	//       "required": true,
31112	//       "type": "string"
31113	//     }
31114	//   },
31115	//   "path": "v3beta1/{+name}",
31116	//   "response": {
31117	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCase"
31118	//   },
31119	//   "scopes": [
31120	//     "https://www.googleapis.com/auth/cloud-platform",
31121	//     "https://www.googleapis.com/auth/dialogflow"
31122	//   ]
31123	// }
31124
31125}
31126
31127// method id "dialogflow.projects.locations.agents.testCases.import":
31128
31129type ProjectsLocationsAgentsTestCasesImportCall struct {
31130	s                                                    *Service
31131	parent                                               string
31132	googleclouddialogflowcxv3beta1importtestcasesrequest *GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest
31133	urlParams_                                           gensupport.URLParams
31134	ctx_                                                 context.Context
31135	header_                                              http.Header
31136}
31137
31138// Import: Imports the test cases from a Cloud Storage bucket or a local
31139// file. It always creates new test cases and won't overwite any
31140// existing ones. The provided ID in the imported test case is
31141// neglected. This method is a long-running operation
31142// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
31143// The returned `Operation` type has the following method-specific
31144// fields: - `metadata`: ImportTestCasesMetadata - `response`:
31145// ImportTestCasesResponse
31146//
31147// - parent: The agent to import test cases to. Format:
31148//   `projects//locations//agents/`.
31149func (r *ProjectsLocationsAgentsTestCasesService) Import(parent string, googleclouddialogflowcxv3beta1importtestcasesrequest *GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest) *ProjectsLocationsAgentsTestCasesImportCall {
31150	c := &ProjectsLocationsAgentsTestCasesImportCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31151	c.parent = parent
31152	c.googleclouddialogflowcxv3beta1importtestcasesrequest = googleclouddialogflowcxv3beta1importtestcasesrequest
31153	return c
31154}
31155
31156// Fields allows partial responses to be retrieved. See
31157// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31158// for more information.
31159func (c *ProjectsLocationsAgentsTestCasesImportCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesImportCall {
31160	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31161	return c
31162}
31163
31164// Context sets the context to be used in this call's Do method. Any
31165// pending HTTP request will be aborted if the provided context is
31166// canceled.
31167func (c *ProjectsLocationsAgentsTestCasesImportCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesImportCall {
31168	c.ctx_ = ctx
31169	return c
31170}
31171
31172// Header returns an http.Header that can be modified by the caller to
31173// add HTTP headers to the request.
31174func (c *ProjectsLocationsAgentsTestCasesImportCall) Header() http.Header {
31175	if c.header_ == nil {
31176		c.header_ = make(http.Header)
31177	}
31178	return c.header_
31179}
31180
31181func (c *ProjectsLocationsAgentsTestCasesImportCall) doRequest(alt string) (*http.Response, error) {
31182	reqHeaders := make(http.Header)
31183	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31184	for k, v := range c.header_ {
31185		reqHeaders[k] = v
31186	}
31187	reqHeaders.Set("User-Agent", c.s.userAgent())
31188	var body io.Reader = nil
31189	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1importtestcasesrequest)
31190	if err != nil {
31191		return nil, err
31192	}
31193	reqHeaders.Set("Content-Type", "application/json")
31194	c.urlParams_.Set("alt", alt)
31195	c.urlParams_.Set("prettyPrint", "false")
31196	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases:import")
31197	urls += "?" + c.urlParams_.Encode()
31198	req, err := http.NewRequest("POST", urls, body)
31199	if err != nil {
31200		return nil, err
31201	}
31202	req.Header = reqHeaders
31203	googleapi.Expand(req.URL, map[string]string{
31204		"parent": c.parent,
31205	})
31206	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31207}
31208
31209// Do executes the "dialogflow.projects.locations.agents.testCases.import" call.
31210// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
31211// Any non-2xx status code is an error. Response headers are in either
31212// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
31213// was returned at all) in error.(*googleapi.Error).Header. Use
31214// googleapi.IsNotModified to check whether the returned error was
31215// because http.StatusNotModified was returned.
31216func (c *ProjectsLocationsAgentsTestCasesImportCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
31217	gensupport.SetOptions(c.urlParams_, opts...)
31218	res, err := c.doRequest("json")
31219	if res != nil && res.StatusCode == http.StatusNotModified {
31220		if res.Body != nil {
31221			res.Body.Close()
31222		}
31223		return nil, &googleapi.Error{
31224			Code:   res.StatusCode,
31225			Header: res.Header,
31226		}
31227	}
31228	if err != nil {
31229		return nil, err
31230	}
31231	defer googleapi.CloseBody(res)
31232	if err := googleapi.CheckResponse(res); err != nil {
31233		return nil, err
31234	}
31235	ret := &GoogleLongrunningOperation{
31236		ServerResponse: googleapi.ServerResponse{
31237			Header:         res.Header,
31238			HTTPStatusCode: res.StatusCode,
31239		},
31240	}
31241	target := &ret
31242	if err := gensupport.DecodeResponse(target, res); err != nil {
31243		return nil, err
31244	}
31245	return ret, nil
31246	// {
31247	//   "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. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: ImportTestCasesMetadata - `response`: ImportTestCasesResponse",
31248	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases:import",
31249	//   "httpMethod": "POST",
31250	//   "id": "dialogflow.projects.locations.agents.testCases.import",
31251	//   "parameterOrder": [
31252	//     "parent"
31253	//   ],
31254	//   "parameters": {
31255	//     "parent": {
31256	//       "description": "Required. The agent to import test cases to. Format: `projects//locations//agents/`.",
31257	//       "location": "path",
31258	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31259	//       "required": true,
31260	//       "type": "string"
31261	//     }
31262	//   },
31263	//   "path": "v3beta1/{+parent}/testCases:import",
31264	//   "request": {
31265	//     "$ref": "GoogleCloudDialogflowCxV3beta1ImportTestCasesRequest"
31266	//   },
31267	//   "response": {
31268	//     "$ref": "GoogleLongrunningOperation"
31269	//   },
31270	//   "scopes": [
31271	//     "https://www.googleapis.com/auth/cloud-platform",
31272	//     "https://www.googleapis.com/auth/dialogflow"
31273	//   ]
31274	// }
31275
31276}
31277
31278// method id "dialogflow.projects.locations.agents.testCases.list":
31279
31280type ProjectsLocationsAgentsTestCasesListCall struct {
31281	s            *Service
31282	parent       string
31283	urlParams_   gensupport.URLParams
31284	ifNoneMatch_ string
31285	ctx_         context.Context
31286	header_      http.Header
31287}
31288
31289// List: Fetches a list of test cases for a given agent.
31290//
31291// - parent: The agent to list all pages for. Format:
31292//   `projects//locations//agents/`.
31293func (r *ProjectsLocationsAgentsTestCasesService) List(parent string) *ProjectsLocationsAgentsTestCasesListCall {
31294	c := &ProjectsLocationsAgentsTestCasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31295	c.parent = parent
31296	return c
31297}
31298
31299// PageSize sets the optional parameter "pageSize": The maximum number
31300// of items to return in a single page. By default 20. Note that when
31301// TestCaseView = FULL, the maximum page size allowed is 20. When
31302// TestCaseView = BASIC, the maximum page size allowed is 500.
31303func (c *ProjectsLocationsAgentsTestCasesListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesListCall {
31304	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
31305	return c
31306}
31307
31308// PageToken sets the optional parameter "pageToken": The
31309// next_page_token value returned from a previous list request.
31310func (c *ProjectsLocationsAgentsTestCasesListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesListCall {
31311	c.urlParams_.Set("pageToken", pageToken)
31312	return c
31313}
31314
31315// View sets the optional parameter "view": Specifies whether response
31316// should include all fields or just the metadata.
31317//
31318// Possible values:
31319//   "TEST_CASE_VIEW_UNSPECIFIED" - The default / unset value. The API
31320// will default to the BASIC view.
31321//   "BASIC" - Include basic metadata about the test case, but not the
31322// conversation turns. This is the default value.
31323//   "FULL" - Include everything.
31324func (c *ProjectsLocationsAgentsTestCasesListCall) View(view string) *ProjectsLocationsAgentsTestCasesListCall {
31325	c.urlParams_.Set("view", view)
31326	return c
31327}
31328
31329// Fields allows partial responses to be retrieved. See
31330// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31331// for more information.
31332func (c *ProjectsLocationsAgentsTestCasesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesListCall {
31333	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31334	return c
31335}
31336
31337// IfNoneMatch sets the optional parameter which makes the operation
31338// fail if the object's ETag matches the given value. This is useful for
31339// getting updates only after the object has changed since the last
31340// request. Use googleapi.IsNotModified to check whether the response
31341// error from Do is the result of In-None-Match.
31342func (c *ProjectsLocationsAgentsTestCasesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesListCall {
31343	c.ifNoneMatch_ = entityTag
31344	return c
31345}
31346
31347// Context sets the context to be used in this call's Do method. Any
31348// pending HTTP request will be aborted if the provided context is
31349// canceled.
31350func (c *ProjectsLocationsAgentsTestCasesListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesListCall {
31351	c.ctx_ = ctx
31352	return c
31353}
31354
31355// Header returns an http.Header that can be modified by the caller to
31356// add HTTP headers to the request.
31357func (c *ProjectsLocationsAgentsTestCasesListCall) Header() http.Header {
31358	if c.header_ == nil {
31359		c.header_ = make(http.Header)
31360	}
31361	return c.header_
31362}
31363
31364func (c *ProjectsLocationsAgentsTestCasesListCall) doRequest(alt string) (*http.Response, error) {
31365	reqHeaders := make(http.Header)
31366	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31367	for k, v := range c.header_ {
31368		reqHeaders[k] = v
31369	}
31370	reqHeaders.Set("User-Agent", c.s.userAgent())
31371	if c.ifNoneMatch_ != "" {
31372		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31373	}
31374	var body io.Reader = nil
31375	c.urlParams_.Set("alt", alt)
31376	c.urlParams_.Set("prettyPrint", "false")
31377	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/testCases")
31378	urls += "?" + c.urlParams_.Encode()
31379	req, err := http.NewRequest("GET", urls, body)
31380	if err != nil {
31381		return nil, err
31382	}
31383	req.Header = reqHeaders
31384	googleapi.Expand(req.URL, map[string]string{
31385		"parent": c.parent,
31386	})
31387	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31388}
31389
31390// Do executes the "dialogflow.projects.locations.agents.testCases.list" call.
31391// Exactly one of *GoogleCloudDialogflowCxV3beta1ListTestCasesResponse
31392// or error will be non-nil. Any non-2xx status code is an error.
31393// Response headers are in either
31394// *GoogleCloudDialogflowCxV3beta1ListTestCasesResponse.ServerResponse.He
31395// ader or (if a response was returned at all) in
31396// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31397// whether the returned error was because http.StatusNotModified was
31398// returned.
31399func (c *ProjectsLocationsAgentsTestCasesListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListTestCasesResponse, error) {
31400	gensupport.SetOptions(c.urlParams_, opts...)
31401	res, err := c.doRequest("json")
31402	if res != nil && res.StatusCode == http.StatusNotModified {
31403		if res.Body != nil {
31404			res.Body.Close()
31405		}
31406		return nil, &googleapi.Error{
31407			Code:   res.StatusCode,
31408			Header: res.Header,
31409		}
31410	}
31411	if err != nil {
31412		return nil, err
31413	}
31414	defer googleapi.CloseBody(res)
31415	if err := googleapi.CheckResponse(res); err != nil {
31416		return nil, err
31417	}
31418	ret := &GoogleCloudDialogflowCxV3beta1ListTestCasesResponse{
31419		ServerResponse: googleapi.ServerResponse{
31420			Header:         res.Header,
31421			HTTPStatusCode: res.StatusCode,
31422		},
31423	}
31424	target := &ret
31425	if err := gensupport.DecodeResponse(target, res); err != nil {
31426		return nil, err
31427	}
31428	return ret, nil
31429	// {
31430	//   "description": "Fetches a list of test cases for a given agent.",
31431	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases",
31432	//   "httpMethod": "GET",
31433	//   "id": "dialogflow.projects.locations.agents.testCases.list",
31434	//   "parameterOrder": [
31435	//     "parent"
31436	//   ],
31437	//   "parameters": {
31438	//     "pageSize": {
31439	//       "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.",
31440	//       "format": "int32",
31441	//       "location": "query",
31442	//       "type": "integer"
31443	//     },
31444	//     "pageToken": {
31445	//       "description": "The next_page_token value returned from a previous list request.",
31446	//       "location": "query",
31447	//       "type": "string"
31448	//     },
31449	//     "parent": {
31450	//       "description": "Required. The agent to list all pages for. Format: `projects//locations//agents/`.",
31451	//       "location": "path",
31452	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
31453	//       "required": true,
31454	//       "type": "string"
31455	//     },
31456	//     "view": {
31457	//       "description": "Specifies whether response should include all fields or just the metadata.",
31458	//       "enum": [
31459	//         "TEST_CASE_VIEW_UNSPECIFIED",
31460	//         "BASIC",
31461	//         "FULL"
31462	//       ],
31463	//       "enumDescriptions": [
31464	//         "The default / unset value. The API will default to the BASIC view.",
31465	//         "Include basic metadata about the test case, but not the conversation turns. This is the default value.",
31466	//         "Include everything."
31467	//       ],
31468	//       "location": "query",
31469	//       "type": "string"
31470	//     }
31471	//   },
31472	//   "path": "v3beta1/{+parent}/testCases",
31473	//   "response": {
31474	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListTestCasesResponse"
31475	//   },
31476	//   "scopes": [
31477	//     "https://www.googleapis.com/auth/cloud-platform",
31478	//     "https://www.googleapis.com/auth/dialogflow"
31479	//   ]
31480	// }
31481
31482}
31483
31484// Pages invokes f for each page of results.
31485// A non-nil error returned from f will halt the iteration.
31486// The provided context supersedes any context provided to the Context method.
31487func (c *ProjectsLocationsAgentsTestCasesListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListTestCasesResponse) error) error {
31488	c.ctx_ = ctx
31489	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
31490	for {
31491		x, err := c.Do()
31492		if err != nil {
31493			return err
31494		}
31495		if err := f(x); err != nil {
31496			return err
31497		}
31498		if x.NextPageToken == "" {
31499			return nil
31500		}
31501		c.PageToken(x.NextPageToken)
31502	}
31503}
31504
31505// method id "dialogflow.projects.locations.agents.testCases.patch":
31506
31507type ProjectsLocationsAgentsTestCasesPatchCall struct {
31508	s                                      *Service
31509	nameid                                 string
31510	googleclouddialogflowcxv3beta1testcase *GoogleCloudDialogflowCxV3beta1TestCase
31511	urlParams_                             gensupport.URLParams
31512	ctx_                                   context.Context
31513	header_                                http.Header
31514}
31515
31516// Patch: Updates the specified test case.
31517//
31518// - name: The unique identifier of the test case.
31519//   TestCases.CreateTestCase will populate the name automatically.
31520//   Otherwise use format: `projects//locations//agents/ /testCases/`.
31521func (r *ProjectsLocationsAgentsTestCasesService) Patch(nameid string, googleclouddialogflowcxv3beta1testcase *GoogleCloudDialogflowCxV3beta1TestCase) *ProjectsLocationsAgentsTestCasesPatchCall {
31522	c := &ProjectsLocationsAgentsTestCasesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31523	c.nameid = nameid
31524	c.googleclouddialogflowcxv3beta1testcase = googleclouddialogflowcxv3beta1testcase
31525	return c
31526}
31527
31528// UpdateMask sets the optional parameter "updateMask": Required. The
31529// mask to specify which fields should be updated. The `creationTime`
31530// and `lastTestResult` cannot be updated.
31531func (c *ProjectsLocationsAgentsTestCasesPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsTestCasesPatchCall {
31532	c.urlParams_.Set("updateMask", updateMask)
31533	return c
31534}
31535
31536// Fields allows partial responses to be retrieved. See
31537// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31538// for more information.
31539func (c *ProjectsLocationsAgentsTestCasesPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesPatchCall {
31540	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31541	return c
31542}
31543
31544// Context sets the context to be used in this call's Do method. Any
31545// pending HTTP request will be aborted if the provided context is
31546// canceled.
31547func (c *ProjectsLocationsAgentsTestCasesPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesPatchCall {
31548	c.ctx_ = ctx
31549	return c
31550}
31551
31552// Header returns an http.Header that can be modified by the caller to
31553// add HTTP headers to the request.
31554func (c *ProjectsLocationsAgentsTestCasesPatchCall) Header() http.Header {
31555	if c.header_ == nil {
31556		c.header_ = make(http.Header)
31557	}
31558	return c.header_
31559}
31560
31561func (c *ProjectsLocationsAgentsTestCasesPatchCall) doRequest(alt string) (*http.Response, error) {
31562	reqHeaders := make(http.Header)
31563	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31564	for k, v := range c.header_ {
31565		reqHeaders[k] = v
31566	}
31567	reqHeaders.Set("User-Agent", c.s.userAgent())
31568	var body io.Reader = nil
31569	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1testcase)
31570	if err != nil {
31571		return nil, err
31572	}
31573	reqHeaders.Set("Content-Type", "application/json")
31574	c.urlParams_.Set("alt", alt)
31575	c.urlParams_.Set("prettyPrint", "false")
31576	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
31577	urls += "?" + c.urlParams_.Encode()
31578	req, err := http.NewRequest("PATCH", urls, body)
31579	if err != nil {
31580		return nil, err
31581	}
31582	req.Header = reqHeaders
31583	googleapi.Expand(req.URL, map[string]string{
31584		"name": c.nameid,
31585	})
31586	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31587}
31588
31589// Do executes the "dialogflow.projects.locations.agents.testCases.patch" call.
31590// Exactly one of *GoogleCloudDialogflowCxV3beta1TestCase or error will
31591// be non-nil. Any non-2xx status code is an error. Response headers are
31592// in either
31593// *GoogleCloudDialogflowCxV3beta1TestCase.ServerResponse.Header or (if
31594// a response was returned at all) in error.(*googleapi.Error).Header.
31595// Use googleapi.IsNotModified to check whether the returned error was
31596// because http.StatusNotModified was returned.
31597func (c *ProjectsLocationsAgentsTestCasesPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TestCase, 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 := &GoogleCloudDialogflowCxV3beta1TestCase{
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": "Updates the specified test case.",
31629	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}",
31630	//   "httpMethod": "PATCH",
31631	//   "id": "dialogflow.projects.locations.agents.testCases.patch",
31632	//   "parameterOrder": [
31633	//     "name"
31634	//   ],
31635	//   "parameters": {
31636	//     "name": {
31637	//       "description": "The unique identifier of the test case. TestCases.CreateTestCase will populate the name automatically. Otherwise use format: `projects//locations//agents/ /testCases/`.",
31638	//       "location": "path",
31639	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31640	//       "required": true,
31641	//       "type": "string"
31642	//     },
31643	//     "updateMask": {
31644	//       "description": "Required. The mask to specify which fields should be updated. The `creationTime` and `lastTestResult` cannot be updated.",
31645	//       "format": "google-fieldmask",
31646	//       "location": "query",
31647	//       "type": "string"
31648	//     }
31649	//   },
31650	//   "path": "v3beta1/{+name}",
31651	//   "request": {
31652	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCase"
31653	//   },
31654	//   "response": {
31655	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCase"
31656	//   },
31657	//   "scopes": [
31658	//     "https://www.googleapis.com/auth/cloud-platform",
31659	//     "https://www.googleapis.com/auth/dialogflow"
31660	//   ]
31661	// }
31662
31663}
31664
31665// method id "dialogflow.projects.locations.agents.testCases.run":
31666
31667type ProjectsLocationsAgentsTestCasesRunCall struct {
31668	s                                                *Service
31669	name                                             string
31670	googleclouddialogflowcxv3beta1runtestcaserequest *GoogleCloudDialogflowCxV3beta1RunTestCaseRequest
31671	urlParams_                                       gensupport.URLParams
31672	ctx_                                             context.Context
31673	header_                                          http.Header
31674}
31675
31676// Run: Kicks off a test case run. This method is a long-running
31677// operation
31678// (https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
31679// The returned `Operation` type has the following method-specific
31680// fields: - `metadata`: RunTestCaseMetadata - `response`:
31681// RunTestCaseResponse
31682//
31683// - name: Format of test case name to run: `projects//locations/
31684//   /agents//testCases/`.
31685func (r *ProjectsLocationsAgentsTestCasesService) Run(name string, googleclouddialogflowcxv3beta1runtestcaserequest *GoogleCloudDialogflowCxV3beta1RunTestCaseRequest) *ProjectsLocationsAgentsTestCasesRunCall {
31686	c := &ProjectsLocationsAgentsTestCasesRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31687	c.name = name
31688	c.googleclouddialogflowcxv3beta1runtestcaserequest = googleclouddialogflowcxv3beta1runtestcaserequest
31689	return c
31690}
31691
31692// Fields allows partial responses to be retrieved. See
31693// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31694// for more information.
31695func (c *ProjectsLocationsAgentsTestCasesRunCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesRunCall {
31696	c.urlParams_.Set("fields", googleapi.CombineFields(s))
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 *ProjectsLocationsAgentsTestCasesRunCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesRunCall {
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 *ProjectsLocationsAgentsTestCasesRunCall) Header() http.Header {
31711	if c.header_ == nil {
31712		c.header_ = make(http.Header)
31713	}
31714	return c.header_
31715}
31716
31717func (c *ProjectsLocationsAgentsTestCasesRunCall) doRequest(alt string) (*http.Response, error) {
31718	reqHeaders := make(http.Header)
31719	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31720	for k, v := range c.header_ {
31721		reqHeaders[k] = v
31722	}
31723	reqHeaders.Set("User-Agent", c.s.userAgent())
31724	var body io.Reader = nil
31725	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1runtestcaserequest)
31726	if err != nil {
31727		return nil, err
31728	}
31729	reqHeaders.Set("Content-Type", "application/json")
31730	c.urlParams_.Set("alt", alt)
31731	c.urlParams_.Set("prettyPrint", "false")
31732	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:run")
31733	urls += "?" + c.urlParams_.Encode()
31734	req, err := http.NewRequest("POST", urls, body)
31735	if err != nil {
31736		return nil, err
31737	}
31738	req.Header = reqHeaders
31739	googleapi.Expand(req.URL, map[string]string{
31740		"name": c.name,
31741	})
31742	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31743}
31744
31745// Do executes the "dialogflow.projects.locations.agents.testCases.run" call.
31746// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
31747// Any non-2xx status code is an error. Response headers are in either
31748// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
31749// was returned at all) in error.(*googleapi.Error).Header. Use
31750// googleapi.IsNotModified to check whether the returned error was
31751// because http.StatusNotModified was returned.
31752func (c *ProjectsLocationsAgentsTestCasesRunCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
31753	gensupport.SetOptions(c.urlParams_, opts...)
31754	res, err := c.doRequest("json")
31755	if res != nil && res.StatusCode == http.StatusNotModified {
31756		if res.Body != nil {
31757			res.Body.Close()
31758		}
31759		return nil, &googleapi.Error{
31760			Code:   res.StatusCode,
31761			Header: res.Header,
31762		}
31763	}
31764	if err != nil {
31765		return nil, err
31766	}
31767	defer googleapi.CloseBody(res)
31768	if err := googleapi.CheckResponse(res); err != nil {
31769		return nil, err
31770	}
31771	ret := &GoogleLongrunningOperation{
31772		ServerResponse: googleapi.ServerResponse{
31773			Header:         res.Header,
31774			HTTPStatusCode: res.StatusCode,
31775		},
31776	}
31777	target := &ret
31778	if err := gensupport.DecodeResponse(target, res); err != nil {
31779		return nil, err
31780	}
31781	return ret, nil
31782	// {
31783	//   "description": "Kicks off a test case run. This method is a [long-running operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation). The returned `Operation` type has the following method-specific fields: - `metadata`: RunTestCaseMetadata - `response`: RunTestCaseResponse",
31784	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}:run",
31785	//   "httpMethod": "POST",
31786	//   "id": "dialogflow.projects.locations.agents.testCases.run",
31787	//   "parameterOrder": [
31788	//     "name"
31789	//   ],
31790	//   "parameters": {
31791	//     "name": {
31792	//       "description": "Required. Format of test case name to run: `projects//locations/ /agents//testCases/`.",
31793	//       "location": "path",
31794	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
31795	//       "required": true,
31796	//       "type": "string"
31797	//     }
31798	//   },
31799	//   "path": "v3beta1/{+name}:run",
31800	//   "request": {
31801	//     "$ref": "GoogleCloudDialogflowCxV3beta1RunTestCaseRequest"
31802	//   },
31803	//   "response": {
31804	//     "$ref": "GoogleLongrunningOperation"
31805	//   },
31806	//   "scopes": [
31807	//     "https://www.googleapis.com/auth/cloud-platform",
31808	//     "https://www.googleapis.com/auth/dialogflow"
31809	//   ]
31810	// }
31811
31812}
31813
31814// method id "dialogflow.projects.locations.agents.testCases.results.get":
31815
31816type ProjectsLocationsAgentsTestCasesResultsGetCall struct {
31817	s            *Service
31818	name         string
31819	urlParams_   gensupport.URLParams
31820	ifNoneMatch_ string
31821	ctx_         context.Context
31822	header_      http.Header
31823}
31824
31825// Get: Gets a test case result.
31826//
31827// - name: The name of the testcase. Format:
31828//   `projects//locations//agents//testCases//results/`.
31829func (r *ProjectsLocationsAgentsTestCasesResultsService) Get(name string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31830	c := &ProjectsLocationsAgentsTestCasesResultsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31831	c.name = name
31832	return c
31833}
31834
31835// Fields allows partial responses to be retrieved. See
31836// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
31837// for more information.
31838func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31839	c.urlParams_.Set("fields", googleapi.CombineFields(s))
31840	return c
31841}
31842
31843// IfNoneMatch sets the optional parameter which makes the operation
31844// fail if the object's ETag matches the given value. This is useful for
31845// getting updates only after the object has changed since the last
31846// request. Use googleapi.IsNotModified to check whether the response
31847// error from Do is the result of In-None-Match.
31848func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31849	c.ifNoneMatch_ = entityTag
31850	return c
31851}
31852
31853// Context sets the context to be used in this call's Do method. Any
31854// pending HTTP request will be aborted if the provided context is
31855// canceled.
31856func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsGetCall {
31857	c.ctx_ = ctx
31858	return c
31859}
31860
31861// Header returns an http.Header that can be modified by the caller to
31862// add HTTP headers to the request.
31863func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Header() http.Header {
31864	if c.header_ == nil {
31865		c.header_ = make(http.Header)
31866	}
31867	return c.header_
31868}
31869
31870func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) doRequest(alt string) (*http.Response, error) {
31871	reqHeaders := make(http.Header)
31872	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
31873	for k, v := range c.header_ {
31874		reqHeaders[k] = v
31875	}
31876	reqHeaders.Set("User-Agent", c.s.userAgent())
31877	if c.ifNoneMatch_ != "" {
31878		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
31879	}
31880	var body io.Reader = nil
31881	c.urlParams_.Set("alt", alt)
31882	c.urlParams_.Set("prettyPrint", "false")
31883	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
31884	urls += "?" + c.urlParams_.Encode()
31885	req, err := http.NewRequest("GET", urls, body)
31886	if err != nil {
31887		return nil, err
31888	}
31889	req.Header = reqHeaders
31890	googleapi.Expand(req.URL, map[string]string{
31891		"name": c.name,
31892	})
31893	return gensupport.SendRequest(c.ctx_, c.s.client, req)
31894}
31895
31896// Do executes the "dialogflow.projects.locations.agents.testCases.results.get" call.
31897// Exactly one of *GoogleCloudDialogflowCxV3beta1TestCaseResult or error
31898// will be non-nil. Any non-2xx status code is an error. Response
31899// headers are in either
31900// *GoogleCloudDialogflowCxV3beta1TestCaseResult.ServerResponse.Header
31901// or (if a response was returned at all) in
31902// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
31903// whether the returned error was because http.StatusNotModified was
31904// returned.
31905func (c *ProjectsLocationsAgentsTestCasesResultsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1TestCaseResult, error) {
31906	gensupport.SetOptions(c.urlParams_, opts...)
31907	res, err := c.doRequest("json")
31908	if res != nil && res.StatusCode == http.StatusNotModified {
31909		if res.Body != nil {
31910			res.Body.Close()
31911		}
31912		return nil, &googleapi.Error{
31913			Code:   res.StatusCode,
31914			Header: res.Header,
31915		}
31916	}
31917	if err != nil {
31918		return nil, err
31919	}
31920	defer googleapi.CloseBody(res)
31921	if err := googleapi.CheckResponse(res); err != nil {
31922		return nil, err
31923	}
31924	ret := &GoogleCloudDialogflowCxV3beta1TestCaseResult{
31925		ServerResponse: googleapi.ServerResponse{
31926			Header:         res.Header,
31927			HTTPStatusCode: res.StatusCode,
31928		},
31929	}
31930	target := &ret
31931	if err := gensupport.DecodeResponse(target, res); err != nil {
31932		return nil, err
31933	}
31934	return ret, nil
31935	// {
31936	//   "description": "Gets a test case result.",
31937	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results/{resultsId}",
31938	//   "httpMethod": "GET",
31939	//   "id": "dialogflow.projects.locations.agents.testCases.results.get",
31940	//   "parameterOrder": [
31941	//     "name"
31942	//   ],
31943	//   "parameters": {
31944	//     "name": {
31945	//       "description": "Required. The name of the testcase. Format: `projects//locations//agents//testCases//results/`.",
31946	//       "location": "path",
31947	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+/results/[^/]+$",
31948	//       "required": true,
31949	//       "type": "string"
31950	//     }
31951	//   },
31952	//   "path": "v3beta1/{+name}",
31953	//   "response": {
31954	//     "$ref": "GoogleCloudDialogflowCxV3beta1TestCaseResult"
31955	//   },
31956	//   "scopes": [
31957	//     "https://www.googleapis.com/auth/cloud-platform",
31958	//     "https://www.googleapis.com/auth/dialogflow"
31959	//   ]
31960	// }
31961
31962}
31963
31964// method id "dialogflow.projects.locations.agents.testCases.results.list":
31965
31966type ProjectsLocationsAgentsTestCasesResultsListCall struct {
31967	s            *Service
31968	parent       string
31969	urlParams_   gensupport.URLParams
31970	ifNoneMatch_ string
31971	ctx_         context.Context
31972	header_      http.Header
31973}
31974
31975// List: Fetches a list of results for a given test case.
31976//
31977// - parent: The test case to list results for. Format:
31978//   `projects//locations//agents// testCases/`. Specify a `-` as a
31979//   wildcard for TestCase ID to list results across multiple test
31980//   cases.
31981func (r *ProjectsLocationsAgentsTestCasesResultsService) List(parent string) *ProjectsLocationsAgentsTestCasesResultsListCall {
31982	c := &ProjectsLocationsAgentsTestCasesResultsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
31983	c.parent = parent
31984	return c
31985}
31986
31987// Filter sets the optional parameter "filter": The filter expression
31988// used to filter test case results. See API Filtering
31989// (https://aip.dev/160). The expression is case insensitive. Only 'AND'
31990// is supported for logical operators. The supported syntax is listed
31991// below in detail: [AND ] ... [AND latest] The supported fields and
31992// operators are: field operator `environment` `=`, `IN` (Use value
31993// `draft` for draft environment) `test_time` `>`, `<` `latest` only
31994// returns the latest test result in all results for each test case.
31995// Examples: * "environment=draft AND latest" matches the latest test
31996// result for each test case in the draft environment. * "environment IN
31997// (e1,e2)" matches any test case results with an environment resource
31998// name of either "e1" or "e2". * "test_time > 1602540713" matches any
31999// test case results with test time later than a unix timestamp in
32000// seconds 1602540713.
32001func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Filter(filter string) *ProjectsLocationsAgentsTestCasesResultsListCall {
32002	c.urlParams_.Set("filter", filter)
32003	return c
32004}
32005
32006// PageSize sets the optional parameter "pageSize": The maximum number
32007// of items to return in a single page. By default 100 and at most 1000.
32008func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsTestCasesResultsListCall {
32009	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
32010	return c
32011}
32012
32013// PageToken sets the optional parameter "pageToken": The
32014// next_page_token value returned from a previous list request.
32015func (c *ProjectsLocationsAgentsTestCasesResultsListCall) PageToken(pageToken string) *ProjectsLocationsAgentsTestCasesResultsListCall {
32016	c.urlParams_.Set("pageToken", pageToken)
32017	return c
32018}
32019
32020// Fields allows partial responses to be retrieved. See
32021// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32022// for more information.
32023func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsTestCasesResultsListCall {
32024	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32025	return c
32026}
32027
32028// IfNoneMatch sets the optional parameter which makes the operation
32029// fail if the object's ETag matches the given value. This is useful for
32030// getting updates only after the object has changed since the last
32031// request. Use googleapi.IsNotModified to check whether the response
32032// error from Do is the result of In-None-Match.
32033func (c *ProjectsLocationsAgentsTestCasesResultsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsTestCasesResultsListCall {
32034	c.ifNoneMatch_ = entityTag
32035	return c
32036}
32037
32038// Context sets the context to be used in this call's Do method. Any
32039// pending HTTP request will be aborted if the provided context is
32040// canceled.
32041func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Context(ctx context.Context) *ProjectsLocationsAgentsTestCasesResultsListCall {
32042	c.ctx_ = ctx
32043	return c
32044}
32045
32046// Header returns an http.Header that can be modified by the caller to
32047// add HTTP headers to the request.
32048func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Header() http.Header {
32049	if c.header_ == nil {
32050		c.header_ = make(http.Header)
32051	}
32052	return c.header_
32053}
32054
32055func (c *ProjectsLocationsAgentsTestCasesResultsListCall) doRequest(alt string) (*http.Response, error) {
32056	reqHeaders := make(http.Header)
32057	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32058	for k, v := range c.header_ {
32059		reqHeaders[k] = v
32060	}
32061	reqHeaders.Set("User-Agent", c.s.userAgent())
32062	if c.ifNoneMatch_ != "" {
32063		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32064	}
32065	var body io.Reader = nil
32066	c.urlParams_.Set("alt", alt)
32067	c.urlParams_.Set("prettyPrint", "false")
32068	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/results")
32069	urls += "?" + c.urlParams_.Encode()
32070	req, err := http.NewRequest("GET", urls, body)
32071	if err != nil {
32072		return nil, err
32073	}
32074	req.Header = reqHeaders
32075	googleapi.Expand(req.URL, map[string]string{
32076		"parent": c.parent,
32077	})
32078	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32079}
32080
32081// Do executes the "dialogflow.projects.locations.agents.testCases.results.list" call.
32082// Exactly one of
32083// *GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse or error
32084// will be non-nil. Any non-2xx status code is an error. Response
32085// headers are in either
32086// *GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse.ServerRespo
32087// nse.Header or (if a response was returned at all) in
32088// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32089// whether the returned error was because http.StatusNotModified was
32090// returned.
32091func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse, error) {
32092	gensupport.SetOptions(c.urlParams_, opts...)
32093	res, err := c.doRequest("json")
32094	if res != nil && res.StatusCode == http.StatusNotModified {
32095		if res.Body != nil {
32096			res.Body.Close()
32097		}
32098		return nil, &googleapi.Error{
32099			Code:   res.StatusCode,
32100			Header: res.Header,
32101		}
32102	}
32103	if err != nil {
32104		return nil, err
32105	}
32106	defer googleapi.CloseBody(res)
32107	if err := googleapi.CheckResponse(res); err != nil {
32108		return nil, err
32109	}
32110	ret := &GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse{
32111		ServerResponse: googleapi.ServerResponse{
32112			Header:         res.Header,
32113			HTTPStatusCode: res.StatusCode,
32114		},
32115	}
32116	target := &ret
32117	if err := gensupport.DecodeResponse(target, res); err != nil {
32118		return nil, err
32119	}
32120	return ret, nil
32121	// {
32122	//   "description": "Fetches a list of results for a given test case.",
32123	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/testCases/{testCasesId}/results",
32124	//   "httpMethod": "GET",
32125	//   "id": "dialogflow.projects.locations.agents.testCases.results.list",
32126	//   "parameterOrder": [
32127	//     "parent"
32128	//   ],
32129	//   "parameters": {
32130	//     "filter": {
32131	//       "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.",
32132	//       "location": "query",
32133	//       "type": "string"
32134	//     },
32135	//     "pageSize": {
32136	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
32137	//       "format": "int32",
32138	//       "location": "query",
32139	//       "type": "integer"
32140	//     },
32141	//     "pageToken": {
32142	//       "description": "The next_page_token value returned from a previous list request.",
32143	//       "location": "query",
32144	//       "type": "string"
32145	//     },
32146	//     "parent": {
32147	//       "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.",
32148	//       "location": "path",
32149	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/testCases/[^/]+$",
32150	//       "required": true,
32151	//       "type": "string"
32152	//     }
32153	//   },
32154	//   "path": "v3beta1/{+parent}/results",
32155	//   "response": {
32156	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse"
32157	//   },
32158	//   "scopes": [
32159	//     "https://www.googleapis.com/auth/cloud-platform",
32160	//     "https://www.googleapis.com/auth/dialogflow"
32161	//   ]
32162	// }
32163
32164}
32165
32166// Pages invokes f for each page of results.
32167// A non-nil error returned from f will halt the iteration.
32168// The provided context supersedes any context provided to the Context method.
32169func (c *ProjectsLocationsAgentsTestCasesResultsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListTestCaseResultsResponse) error) error {
32170	c.ctx_ = ctx
32171	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32172	for {
32173		x, err := c.Do()
32174		if err != nil {
32175			return err
32176		}
32177		if err := f(x); err != nil {
32178			return err
32179		}
32180		if x.NextPageToken == "" {
32181			return nil
32182		}
32183		c.PageToken(x.NextPageToken)
32184	}
32185}
32186
32187// method id "dialogflow.projects.locations.agents.webhooks.create":
32188
32189type ProjectsLocationsAgentsWebhooksCreateCall struct {
32190	s                                     *Service
32191	parent                                string
32192	googleclouddialogflowcxv3beta1webhook *GoogleCloudDialogflowCxV3beta1Webhook
32193	urlParams_                            gensupport.URLParams
32194	ctx_                                  context.Context
32195	header_                               http.Header
32196}
32197
32198// Create: Creates a webhook in the specified agent.
32199//
32200// - parent: The agent to create a webhook for. Format:
32201//   `projects//locations//agents/`.
32202func (r *ProjectsLocationsAgentsWebhooksService) Create(parent string, googleclouddialogflowcxv3beta1webhook *GoogleCloudDialogflowCxV3beta1Webhook) *ProjectsLocationsAgentsWebhooksCreateCall {
32203	c := &ProjectsLocationsAgentsWebhooksCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32204	c.parent = parent
32205	c.googleclouddialogflowcxv3beta1webhook = googleclouddialogflowcxv3beta1webhook
32206	return c
32207}
32208
32209// Fields allows partial responses to be retrieved. See
32210// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32211// for more information.
32212func (c *ProjectsLocationsAgentsWebhooksCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksCreateCall {
32213	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32214	return c
32215}
32216
32217// Context sets the context to be used in this call's Do method. Any
32218// pending HTTP request will be aborted if the provided context is
32219// canceled.
32220func (c *ProjectsLocationsAgentsWebhooksCreateCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksCreateCall {
32221	c.ctx_ = ctx
32222	return c
32223}
32224
32225// Header returns an http.Header that can be modified by the caller to
32226// add HTTP headers to the request.
32227func (c *ProjectsLocationsAgentsWebhooksCreateCall) Header() http.Header {
32228	if c.header_ == nil {
32229		c.header_ = make(http.Header)
32230	}
32231	return c.header_
32232}
32233
32234func (c *ProjectsLocationsAgentsWebhooksCreateCall) doRequest(alt string) (*http.Response, error) {
32235	reqHeaders := make(http.Header)
32236	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32237	for k, v := range c.header_ {
32238		reqHeaders[k] = v
32239	}
32240	reqHeaders.Set("User-Agent", c.s.userAgent())
32241	var body io.Reader = nil
32242	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1webhook)
32243	if err != nil {
32244		return nil, err
32245	}
32246	reqHeaders.Set("Content-Type", "application/json")
32247	c.urlParams_.Set("alt", alt)
32248	c.urlParams_.Set("prettyPrint", "false")
32249	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/webhooks")
32250	urls += "?" + c.urlParams_.Encode()
32251	req, err := http.NewRequest("POST", urls, body)
32252	if err != nil {
32253		return nil, err
32254	}
32255	req.Header = reqHeaders
32256	googleapi.Expand(req.URL, map[string]string{
32257		"parent": c.parent,
32258	})
32259	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32260}
32261
32262// Do executes the "dialogflow.projects.locations.agents.webhooks.create" call.
32263// Exactly one of *GoogleCloudDialogflowCxV3beta1Webhook or error will
32264// be non-nil. Any non-2xx status code is an error. Response headers are
32265// in either
32266// *GoogleCloudDialogflowCxV3beta1Webhook.ServerResponse.Header or (if a
32267// response was returned at all) in error.(*googleapi.Error).Header. Use
32268// googleapi.IsNotModified to check whether the returned error was
32269// because http.StatusNotModified was returned.
32270func (c *ProjectsLocationsAgentsWebhooksCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Webhook, error) {
32271	gensupport.SetOptions(c.urlParams_, opts...)
32272	res, err := c.doRequest("json")
32273	if res != nil && res.StatusCode == http.StatusNotModified {
32274		if res.Body != nil {
32275			res.Body.Close()
32276		}
32277		return nil, &googleapi.Error{
32278			Code:   res.StatusCode,
32279			Header: res.Header,
32280		}
32281	}
32282	if err != nil {
32283		return nil, err
32284	}
32285	defer googleapi.CloseBody(res)
32286	if err := googleapi.CheckResponse(res); err != nil {
32287		return nil, err
32288	}
32289	ret := &GoogleCloudDialogflowCxV3beta1Webhook{
32290		ServerResponse: googleapi.ServerResponse{
32291			Header:         res.Header,
32292			HTTPStatusCode: res.StatusCode,
32293		},
32294	}
32295	target := &ret
32296	if err := gensupport.DecodeResponse(target, res); err != nil {
32297		return nil, err
32298	}
32299	return ret, nil
32300	// {
32301	//   "description": "Creates a webhook in the specified agent.",
32302	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
32303	//   "httpMethod": "POST",
32304	//   "id": "dialogflow.projects.locations.agents.webhooks.create",
32305	//   "parameterOrder": [
32306	//     "parent"
32307	//   ],
32308	//   "parameters": {
32309	//     "parent": {
32310	//       "description": "Required. The agent to create a webhook for. Format: `projects//locations//agents/`.",
32311	//       "location": "path",
32312	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
32313	//       "required": true,
32314	//       "type": "string"
32315	//     }
32316	//   },
32317	//   "path": "v3beta1/{+parent}/webhooks",
32318	//   "request": {
32319	//     "$ref": "GoogleCloudDialogflowCxV3beta1Webhook"
32320	//   },
32321	//   "response": {
32322	//     "$ref": "GoogleCloudDialogflowCxV3beta1Webhook"
32323	//   },
32324	//   "scopes": [
32325	//     "https://www.googleapis.com/auth/cloud-platform",
32326	//     "https://www.googleapis.com/auth/dialogflow"
32327	//   ]
32328	// }
32329
32330}
32331
32332// method id "dialogflow.projects.locations.agents.webhooks.delete":
32333
32334type ProjectsLocationsAgentsWebhooksDeleteCall struct {
32335	s          *Service
32336	name       string
32337	urlParams_ gensupport.URLParams
32338	ctx_       context.Context
32339	header_    http.Header
32340}
32341
32342// Delete: Deletes the specified webhook.
32343//
32344// - name: The name of the webhook to delete. Format:
32345//   `projects//locations//agents//webhooks/`.
32346func (r *ProjectsLocationsAgentsWebhooksService) Delete(name string) *ProjectsLocationsAgentsWebhooksDeleteCall {
32347	c := &ProjectsLocationsAgentsWebhooksDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32348	c.name = name
32349	return c
32350}
32351
32352// Force sets the optional parameter "force": This field has no effect
32353// for webhook not being used. For webhooks that are used by
32354// pages/flows/transition route groups: * If `force` is set to false, an
32355// error will be returned with message indicating the referenced
32356// resources. * If `force` is set to true, Dialogflow will remove the
32357// webhook, as well as any references to the webhook (i.e. Webhook and
32358// tagin fulfillments that point to this webhook will be removed).
32359func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Force(force bool) *ProjectsLocationsAgentsWebhooksDeleteCall {
32360	c.urlParams_.Set("force", fmt.Sprint(force))
32361	return c
32362}
32363
32364// Fields allows partial responses to be retrieved. See
32365// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32366// for more information.
32367func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksDeleteCall {
32368	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32369	return c
32370}
32371
32372// Context sets the context to be used in this call's Do method. Any
32373// pending HTTP request will be aborted if the provided context is
32374// canceled.
32375func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksDeleteCall {
32376	c.ctx_ = ctx
32377	return c
32378}
32379
32380// Header returns an http.Header that can be modified by the caller to
32381// add HTTP headers to the request.
32382func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Header() http.Header {
32383	if c.header_ == nil {
32384		c.header_ = make(http.Header)
32385	}
32386	return c.header_
32387}
32388
32389func (c *ProjectsLocationsAgentsWebhooksDeleteCall) doRequest(alt string) (*http.Response, error) {
32390	reqHeaders := make(http.Header)
32391	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32392	for k, v := range c.header_ {
32393		reqHeaders[k] = v
32394	}
32395	reqHeaders.Set("User-Agent", c.s.userAgent())
32396	var body io.Reader = nil
32397	c.urlParams_.Set("alt", alt)
32398	c.urlParams_.Set("prettyPrint", "false")
32399	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
32400	urls += "?" + c.urlParams_.Encode()
32401	req, err := http.NewRequest("DELETE", urls, body)
32402	if err != nil {
32403		return nil, err
32404	}
32405	req.Header = reqHeaders
32406	googleapi.Expand(req.URL, map[string]string{
32407		"name": c.name,
32408	})
32409	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32410}
32411
32412// Do executes the "dialogflow.projects.locations.agents.webhooks.delete" call.
32413// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
32414// non-2xx status code is an error. Response headers are in either
32415// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
32416// returned at all) in error.(*googleapi.Error).Header. Use
32417// googleapi.IsNotModified to check whether the returned error was
32418// because http.StatusNotModified was returned.
32419func (c *ProjectsLocationsAgentsWebhooksDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
32420	gensupport.SetOptions(c.urlParams_, opts...)
32421	res, err := c.doRequest("json")
32422	if res != nil && res.StatusCode == http.StatusNotModified {
32423		if res.Body != nil {
32424			res.Body.Close()
32425		}
32426		return nil, &googleapi.Error{
32427			Code:   res.StatusCode,
32428			Header: res.Header,
32429		}
32430	}
32431	if err != nil {
32432		return nil, err
32433	}
32434	defer googleapi.CloseBody(res)
32435	if err := googleapi.CheckResponse(res); err != nil {
32436		return nil, err
32437	}
32438	ret := &GoogleProtobufEmpty{
32439		ServerResponse: googleapi.ServerResponse{
32440			Header:         res.Header,
32441			HTTPStatusCode: res.StatusCode,
32442		},
32443	}
32444	target := &ret
32445	if err := gensupport.DecodeResponse(target, res); err != nil {
32446		return nil, err
32447	}
32448	return ret, nil
32449	// {
32450	//   "description": "Deletes the specified webhook.",
32451	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32452	//   "httpMethod": "DELETE",
32453	//   "id": "dialogflow.projects.locations.agents.webhooks.delete",
32454	//   "parameterOrder": [
32455	//     "name"
32456	//   ],
32457	//   "parameters": {
32458	//     "force": {
32459	//       "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).",
32460	//       "location": "query",
32461	//       "type": "boolean"
32462	//     },
32463	//     "name": {
32464	//       "description": "Required. The name of the webhook to delete. Format: `projects//locations//agents//webhooks/`.",
32465	//       "location": "path",
32466	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32467	//       "required": true,
32468	//       "type": "string"
32469	//     }
32470	//   },
32471	//   "path": "v3beta1/{+name}",
32472	//   "response": {
32473	//     "$ref": "GoogleProtobufEmpty"
32474	//   },
32475	//   "scopes": [
32476	//     "https://www.googleapis.com/auth/cloud-platform",
32477	//     "https://www.googleapis.com/auth/dialogflow"
32478	//   ]
32479	// }
32480
32481}
32482
32483// method id "dialogflow.projects.locations.agents.webhooks.get":
32484
32485type ProjectsLocationsAgentsWebhooksGetCall struct {
32486	s            *Service
32487	name         string
32488	urlParams_   gensupport.URLParams
32489	ifNoneMatch_ string
32490	ctx_         context.Context
32491	header_      http.Header
32492}
32493
32494// Get: Retrieves the specified webhook.
32495//
32496// - name: The name of the webhook. Format:
32497//   `projects//locations//agents//webhooks/`.
32498func (r *ProjectsLocationsAgentsWebhooksService) Get(name string) *ProjectsLocationsAgentsWebhooksGetCall {
32499	c := &ProjectsLocationsAgentsWebhooksGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32500	c.name = name
32501	return c
32502}
32503
32504// Fields allows partial responses to be retrieved. See
32505// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32506// for more information.
32507func (c *ProjectsLocationsAgentsWebhooksGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksGetCall {
32508	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32509	return c
32510}
32511
32512// IfNoneMatch sets the optional parameter which makes the operation
32513// fail if the object's ETag matches the given value. This is useful for
32514// getting updates only after the object has changed since the last
32515// request. Use googleapi.IsNotModified to check whether the response
32516// error from Do is the result of In-None-Match.
32517func (c *ProjectsLocationsAgentsWebhooksGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksGetCall {
32518	c.ifNoneMatch_ = entityTag
32519	return c
32520}
32521
32522// Context sets the context to be used in this call's Do method. Any
32523// pending HTTP request will be aborted if the provided context is
32524// canceled.
32525func (c *ProjectsLocationsAgentsWebhooksGetCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksGetCall {
32526	c.ctx_ = ctx
32527	return c
32528}
32529
32530// Header returns an http.Header that can be modified by the caller to
32531// add HTTP headers to the request.
32532func (c *ProjectsLocationsAgentsWebhooksGetCall) Header() http.Header {
32533	if c.header_ == nil {
32534		c.header_ = make(http.Header)
32535	}
32536	return c.header_
32537}
32538
32539func (c *ProjectsLocationsAgentsWebhooksGetCall) doRequest(alt string) (*http.Response, error) {
32540	reqHeaders := make(http.Header)
32541	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32542	for k, v := range c.header_ {
32543		reqHeaders[k] = v
32544	}
32545	reqHeaders.Set("User-Agent", c.s.userAgent())
32546	if c.ifNoneMatch_ != "" {
32547		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32548	}
32549	var body io.Reader = nil
32550	c.urlParams_.Set("alt", alt)
32551	c.urlParams_.Set("prettyPrint", "false")
32552	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
32553	urls += "?" + c.urlParams_.Encode()
32554	req, err := http.NewRequest("GET", urls, body)
32555	if err != nil {
32556		return nil, err
32557	}
32558	req.Header = reqHeaders
32559	googleapi.Expand(req.URL, map[string]string{
32560		"name": c.name,
32561	})
32562	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32563}
32564
32565// Do executes the "dialogflow.projects.locations.agents.webhooks.get" call.
32566// Exactly one of *GoogleCloudDialogflowCxV3beta1Webhook or error will
32567// be non-nil. Any non-2xx status code is an error. Response headers are
32568// in either
32569// *GoogleCloudDialogflowCxV3beta1Webhook.ServerResponse.Header or (if a
32570// response was returned at all) in error.(*googleapi.Error).Header. Use
32571// googleapi.IsNotModified to check whether the returned error was
32572// because http.StatusNotModified was returned.
32573func (c *ProjectsLocationsAgentsWebhooksGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Webhook, error) {
32574	gensupport.SetOptions(c.urlParams_, opts...)
32575	res, err := c.doRequest("json")
32576	if res != nil && res.StatusCode == http.StatusNotModified {
32577		if res.Body != nil {
32578			res.Body.Close()
32579		}
32580		return nil, &googleapi.Error{
32581			Code:   res.StatusCode,
32582			Header: res.Header,
32583		}
32584	}
32585	if err != nil {
32586		return nil, err
32587	}
32588	defer googleapi.CloseBody(res)
32589	if err := googleapi.CheckResponse(res); err != nil {
32590		return nil, err
32591	}
32592	ret := &GoogleCloudDialogflowCxV3beta1Webhook{
32593		ServerResponse: googleapi.ServerResponse{
32594			Header:         res.Header,
32595			HTTPStatusCode: res.StatusCode,
32596		},
32597	}
32598	target := &ret
32599	if err := gensupport.DecodeResponse(target, res); err != nil {
32600		return nil, err
32601	}
32602	return ret, nil
32603	// {
32604	//   "description": "Retrieves the specified webhook.",
32605	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32606	//   "httpMethod": "GET",
32607	//   "id": "dialogflow.projects.locations.agents.webhooks.get",
32608	//   "parameterOrder": [
32609	//     "name"
32610	//   ],
32611	//   "parameters": {
32612	//     "name": {
32613	//       "description": "Required. The name of the webhook. Format: `projects//locations//agents//webhooks/`.",
32614	//       "location": "path",
32615	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32616	//       "required": true,
32617	//       "type": "string"
32618	//     }
32619	//   },
32620	//   "path": "v3beta1/{+name}",
32621	//   "response": {
32622	//     "$ref": "GoogleCloudDialogflowCxV3beta1Webhook"
32623	//   },
32624	//   "scopes": [
32625	//     "https://www.googleapis.com/auth/cloud-platform",
32626	//     "https://www.googleapis.com/auth/dialogflow"
32627	//   ]
32628	// }
32629
32630}
32631
32632// method id "dialogflow.projects.locations.agents.webhooks.list":
32633
32634type ProjectsLocationsAgentsWebhooksListCall struct {
32635	s            *Service
32636	parent       string
32637	urlParams_   gensupport.URLParams
32638	ifNoneMatch_ string
32639	ctx_         context.Context
32640	header_      http.Header
32641}
32642
32643// List: Returns the list of all webhooks in the specified agent.
32644//
32645// - parent: The agent to list all webhooks for. Format:
32646//   `projects//locations//agents/`.
32647func (r *ProjectsLocationsAgentsWebhooksService) List(parent string) *ProjectsLocationsAgentsWebhooksListCall {
32648	c := &ProjectsLocationsAgentsWebhooksListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32649	c.parent = parent
32650	return c
32651}
32652
32653// PageSize sets the optional parameter "pageSize": The maximum number
32654// of items to return in a single page. By default 100 and at most 1000.
32655func (c *ProjectsLocationsAgentsWebhooksListCall) PageSize(pageSize int64) *ProjectsLocationsAgentsWebhooksListCall {
32656	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
32657	return c
32658}
32659
32660// PageToken sets the optional parameter "pageToken": The
32661// next_page_token value returned from a previous list request.
32662func (c *ProjectsLocationsAgentsWebhooksListCall) PageToken(pageToken string) *ProjectsLocationsAgentsWebhooksListCall {
32663	c.urlParams_.Set("pageToken", pageToken)
32664	return c
32665}
32666
32667// Fields allows partial responses to be retrieved. See
32668// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32669// for more information.
32670func (c *ProjectsLocationsAgentsWebhooksListCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksListCall {
32671	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32672	return c
32673}
32674
32675// IfNoneMatch sets the optional parameter which makes the operation
32676// fail if the object's ETag matches the given value. This is useful for
32677// getting updates only after the object has changed since the last
32678// request. Use googleapi.IsNotModified to check whether the response
32679// error from Do is the result of In-None-Match.
32680func (c *ProjectsLocationsAgentsWebhooksListCall) IfNoneMatch(entityTag string) *ProjectsLocationsAgentsWebhooksListCall {
32681	c.ifNoneMatch_ = entityTag
32682	return c
32683}
32684
32685// Context sets the context to be used in this call's Do method. Any
32686// pending HTTP request will be aborted if the provided context is
32687// canceled.
32688func (c *ProjectsLocationsAgentsWebhooksListCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksListCall {
32689	c.ctx_ = ctx
32690	return c
32691}
32692
32693// Header returns an http.Header that can be modified by the caller to
32694// add HTTP headers to the request.
32695func (c *ProjectsLocationsAgentsWebhooksListCall) Header() http.Header {
32696	if c.header_ == nil {
32697		c.header_ = make(http.Header)
32698	}
32699	return c.header_
32700}
32701
32702func (c *ProjectsLocationsAgentsWebhooksListCall) doRequest(alt string) (*http.Response, error) {
32703	reqHeaders := make(http.Header)
32704	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32705	for k, v := range c.header_ {
32706		reqHeaders[k] = v
32707	}
32708	reqHeaders.Set("User-Agent", c.s.userAgent())
32709	if c.ifNoneMatch_ != "" {
32710		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
32711	}
32712	var body io.Reader = nil
32713	c.urlParams_.Set("alt", alt)
32714	c.urlParams_.Set("prettyPrint", "false")
32715	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/webhooks")
32716	urls += "?" + c.urlParams_.Encode()
32717	req, err := http.NewRequest("GET", urls, body)
32718	if err != nil {
32719		return nil, err
32720	}
32721	req.Header = reqHeaders
32722	googleapi.Expand(req.URL, map[string]string{
32723		"parent": c.parent,
32724	})
32725	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32726}
32727
32728// Do executes the "dialogflow.projects.locations.agents.webhooks.list" call.
32729// Exactly one of *GoogleCloudDialogflowCxV3beta1ListWebhooksResponse or
32730// error will be non-nil. Any non-2xx status code is an error. Response
32731// headers are in either
32732// *GoogleCloudDialogflowCxV3beta1ListWebhooksResponse.ServerResponse.Hea
32733// der or (if a response was returned at all) in
32734// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
32735// whether the returned error was because http.StatusNotModified was
32736// returned.
32737func (c *ProjectsLocationsAgentsWebhooksListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListWebhooksResponse, error) {
32738	gensupport.SetOptions(c.urlParams_, opts...)
32739	res, err := c.doRequest("json")
32740	if res != nil && res.StatusCode == http.StatusNotModified {
32741		if res.Body != nil {
32742			res.Body.Close()
32743		}
32744		return nil, &googleapi.Error{
32745			Code:   res.StatusCode,
32746			Header: res.Header,
32747		}
32748	}
32749	if err != nil {
32750		return nil, err
32751	}
32752	defer googleapi.CloseBody(res)
32753	if err := googleapi.CheckResponse(res); err != nil {
32754		return nil, err
32755	}
32756	ret := &GoogleCloudDialogflowCxV3beta1ListWebhooksResponse{
32757		ServerResponse: googleapi.ServerResponse{
32758			Header:         res.Header,
32759			HTTPStatusCode: res.StatusCode,
32760		},
32761	}
32762	target := &ret
32763	if err := gensupport.DecodeResponse(target, res); err != nil {
32764		return nil, err
32765	}
32766	return ret, nil
32767	// {
32768	//   "description": "Returns the list of all webhooks in the specified agent.",
32769	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks",
32770	//   "httpMethod": "GET",
32771	//   "id": "dialogflow.projects.locations.agents.webhooks.list",
32772	//   "parameterOrder": [
32773	//     "parent"
32774	//   ],
32775	//   "parameters": {
32776	//     "pageSize": {
32777	//       "description": "The maximum number of items to return in a single page. By default 100 and at most 1000.",
32778	//       "format": "int32",
32779	//       "location": "query",
32780	//       "type": "integer"
32781	//     },
32782	//     "pageToken": {
32783	//       "description": "The next_page_token value returned from a previous list request.",
32784	//       "location": "query",
32785	//       "type": "string"
32786	//     },
32787	//     "parent": {
32788	//       "description": "Required. The agent to list all webhooks for. Format: `projects//locations//agents/`.",
32789	//       "location": "path",
32790	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+$",
32791	//       "required": true,
32792	//       "type": "string"
32793	//     }
32794	//   },
32795	//   "path": "v3beta1/{+parent}/webhooks",
32796	//   "response": {
32797	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListWebhooksResponse"
32798	//   },
32799	//   "scopes": [
32800	//     "https://www.googleapis.com/auth/cloud-platform",
32801	//     "https://www.googleapis.com/auth/dialogflow"
32802	//   ]
32803	// }
32804
32805}
32806
32807// Pages invokes f for each page of results.
32808// A non-nil error returned from f will halt the iteration.
32809// The provided context supersedes any context provided to the Context method.
32810func (c *ProjectsLocationsAgentsWebhooksListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListWebhooksResponse) error) error {
32811	c.ctx_ = ctx
32812	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
32813	for {
32814		x, err := c.Do()
32815		if err != nil {
32816			return err
32817		}
32818		if err := f(x); err != nil {
32819			return err
32820		}
32821		if x.NextPageToken == "" {
32822			return nil
32823		}
32824		c.PageToken(x.NextPageToken)
32825	}
32826}
32827
32828// method id "dialogflow.projects.locations.agents.webhooks.patch":
32829
32830type ProjectsLocationsAgentsWebhooksPatchCall struct {
32831	s                                     *Service
32832	nameid                                string
32833	googleclouddialogflowcxv3beta1webhook *GoogleCloudDialogflowCxV3beta1Webhook
32834	urlParams_                            gensupport.URLParams
32835	ctx_                                  context.Context
32836	header_                               http.Header
32837}
32838
32839// Patch: Updates the specified webhook.
32840//
32841// - name: The unique identifier of the webhook. Required for the
32842//   Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the
32843//   name automatically. Format:
32844//   `projects//locations//agents//webhooks/`.
32845func (r *ProjectsLocationsAgentsWebhooksService) Patch(nameid string, googleclouddialogflowcxv3beta1webhook *GoogleCloudDialogflowCxV3beta1Webhook) *ProjectsLocationsAgentsWebhooksPatchCall {
32846	c := &ProjectsLocationsAgentsWebhooksPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
32847	c.nameid = nameid
32848	c.googleclouddialogflowcxv3beta1webhook = googleclouddialogflowcxv3beta1webhook
32849	return c
32850}
32851
32852// UpdateMask sets the optional parameter "updateMask": The mask to
32853// control which fields get updated. If the mask is not present, all
32854// fields will be updated.
32855func (c *ProjectsLocationsAgentsWebhooksPatchCall) UpdateMask(updateMask string) *ProjectsLocationsAgentsWebhooksPatchCall {
32856	c.urlParams_.Set("updateMask", updateMask)
32857	return c
32858}
32859
32860// Fields allows partial responses to be retrieved. See
32861// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
32862// for more information.
32863func (c *ProjectsLocationsAgentsWebhooksPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsAgentsWebhooksPatchCall {
32864	c.urlParams_.Set("fields", googleapi.CombineFields(s))
32865	return c
32866}
32867
32868// Context sets the context to be used in this call's Do method. Any
32869// pending HTTP request will be aborted if the provided context is
32870// canceled.
32871func (c *ProjectsLocationsAgentsWebhooksPatchCall) Context(ctx context.Context) *ProjectsLocationsAgentsWebhooksPatchCall {
32872	c.ctx_ = ctx
32873	return c
32874}
32875
32876// Header returns an http.Header that can be modified by the caller to
32877// add HTTP headers to the request.
32878func (c *ProjectsLocationsAgentsWebhooksPatchCall) Header() http.Header {
32879	if c.header_ == nil {
32880		c.header_ = make(http.Header)
32881	}
32882	return c.header_
32883}
32884
32885func (c *ProjectsLocationsAgentsWebhooksPatchCall) doRequest(alt string) (*http.Response, error) {
32886	reqHeaders := make(http.Header)
32887	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
32888	for k, v := range c.header_ {
32889		reqHeaders[k] = v
32890	}
32891	reqHeaders.Set("User-Agent", c.s.userAgent())
32892	var body io.Reader = nil
32893	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1webhook)
32894	if err != nil {
32895		return nil, err
32896	}
32897	reqHeaders.Set("Content-Type", "application/json")
32898	c.urlParams_.Set("alt", alt)
32899	c.urlParams_.Set("prettyPrint", "false")
32900	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
32901	urls += "?" + c.urlParams_.Encode()
32902	req, err := http.NewRequest("PATCH", urls, body)
32903	if err != nil {
32904		return nil, err
32905	}
32906	req.Header = reqHeaders
32907	googleapi.Expand(req.URL, map[string]string{
32908		"name": c.nameid,
32909	})
32910	return gensupport.SendRequest(c.ctx_, c.s.client, req)
32911}
32912
32913// Do executes the "dialogflow.projects.locations.agents.webhooks.patch" call.
32914// Exactly one of *GoogleCloudDialogflowCxV3beta1Webhook or error will
32915// be non-nil. Any non-2xx status code is an error. Response headers are
32916// in either
32917// *GoogleCloudDialogflowCxV3beta1Webhook.ServerResponse.Header or (if a
32918// response was returned at all) in error.(*googleapi.Error).Header. Use
32919// googleapi.IsNotModified to check whether the returned error was
32920// because http.StatusNotModified was returned.
32921func (c *ProjectsLocationsAgentsWebhooksPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1Webhook, error) {
32922	gensupport.SetOptions(c.urlParams_, opts...)
32923	res, err := c.doRequest("json")
32924	if res != nil && res.StatusCode == http.StatusNotModified {
32925		if res.Body != nil {
32926			res.Body.Close()
32927		}
32928		return nil, &googleapi.Error{
32929			Code:   res.StatusCode,
32930			Header: res.Header,
32931		}
32932	}
32933	if err != nil {
32934		return nil, err
32935	}
32936	defer googleapi.CloseBody(res)
32937	if err := googleapi.CheckResponse(res); err != nil {
32938		return nil, err
32939	}
32940	ret := &GoogleCloudDialogflowCxV3beta1Webhook{
32941		ServerResponse: googleapi.ServerResponse{
32942			Header:         res.Header,
32943			HTTPStatusCode: res.StatusCode,
32944		},
32945	}
32946	target := &ret
32947	if err := gensupport.DecodeResponse(target, res); err != nil {
32948		return nil, err
32949	}
32950	return ret, nil
32951	// {
32952	//   "description": "Updates the specified webhook.",
32953	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/agents/{agentsId}/webhooks/{webhooksId}",
32954	//   "httpMethod": "PATCH",
32955	//   "id": "dialogflow.projects.locations.agents.webhooks.patch",
32956	//   "parameterOrder": [
32957	//     "name"
32958	//   ],
32959	//   "parameters": {
32960	//     "name": {
32961	//       "description": "The unique identifier of the webhook. Required for the Webhooks.UpdateWebhook method. Webhooks.CreateWebhook populates the name automatically. Format: `projects//locations//agents//webhooks/`.",
32962	//       "location": "path",
32963	//       "pattern": "^projects/[^/]+/locations/[^/]+/agents/[^/]+/webhooks/[^/]+$",
32964	//       "required": true,
32965	//       "type": "string"
32966	//     },
32967	//     "updateMask": {
32968	//       "description": "The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
32969	//       "format": "google-fieldmask",
32970	//       "location": "query",
32971	//       "type": "string"
32972	//     }
32973	//   },
32974	//   "path": "v3beta1/{+name}",
32975	//   "request": {
32976	//     "$ref": "GoogleCloudDialogflowCxV3beta1Webhook"
32977	//   },
32978	//   "response": {
32979	//     "$ref": "GoogleCloudDialogflowCxV3beta1Webhook"
32980	//   },
32981	//   "scopes": [
32982	//     "https://www.googleapis.com/auth/cloud-platform",
32983	//     "https://www.googleapis.com/auth/dialogflow"
32984	//   ]
32985	// }
32986
32987}
32988
32989// method id "dialogflow.projects.locations.operations.cancel":
32990
32991type ProjectsLocationsOperationsCancelCall struct {
32992	s          *Service
32993	name       string
32994	urlParams_ gensupport.URLParams
32995	ctx_       context.Context
32996	header_    http.Header
32997}
32998
32999// Cancel: Starts asynchronous cancellation on a long-running operation.
33000// The server makes a best effort to cancel the operation, but success
33001// is not guaranteed. If the server doesn't support this method, it
33002// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
33003// Operations.GetOperation or other methods to check whether the
33004// cancellation succeeded or whether the operation completed despite
33005// cancellation. On successful cancellation, the operation is not
33006// deleted; instead, it becomes an operation with an Operation.error
33007// value with a google.rpc.Status.code of 1, corresponding to
33008// `Code.CANCELLED`.
33009//
33010// - name: The name of the operation resource to be cancelled.
33011func (r *ProjectsLocationsOperationsService) Cancel(name string) *ProjectsLocationsOperationsCancelCall {
33012	c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33013	c.name = name
33014	return c
33015}
33016
33017// Fields allows partial responses to be retrieved. See
33018// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33019// for more information.
33020func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall {
33021	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33022	return c
33023}
33024
33025// Context sets the context to be used in this call's Do method. Any
33026// pending HTTP request will be aborted if the provided context is
33027// canceled.
33028func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall {
33029	c.ctx_ = ctx
33030	return c
33031}
33032
33033// Header returns an http.Header that can be modified by the caller to
33034// add HTTP headers to the request.
33035func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header {
33036	if c.header_ == nil {
33037		c.header_ = make(http.Header)
33038	}
33039	return c.header_
33040}
33041
33042func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
33043	reqHeaders := make(http.Header)
33044	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33045	for k, v := range c.header_ {
33046		reqHeaders[k] = v
33047	}
33048	reqHeaders.Set("User-Agent", c.s.userAgent())
33049	var body io.Reader = nil
33050	c.urlParams_.Set("alt", alt)
33051	c.urlParams_.Set("prettyPrint", "false")
33052	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:cancel")
33053	urls += "?" + c.urlParams_.Encode()
33054	req, err := http.NewRequest("POST", urls, body)
33055	if err != nil {
33056		return nil, err
33057	}
33058	req.Header = reqHeaders
33059	googleapi.Expand(req.URL, map[string]string{
33060		"name": c.name,
33061	})
33062	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33063}
33064
33065// Do executes the "dialogflow.projects.locations.operations.cancel" call.
33066// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
33067// non-2xx status code is an error. Response headers are in either
33068// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
33069// returned at all) in error.(*googleapi.Error).Header. Use
33070// googleapi.IsNotModified to check whether the returned error was
33071// because http.StatusNotModified was returned.
33072func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
33073	gensupport.SetOptions(c.urlParams_, opts...)
33074	res, err := c.doRequest("json")
33075	if res != nil && res.StatusCode == http.StatusNotModified {
33076		if res.Body != nil {
33077			res.Body.Close()
33078		}
33079		return nil, &googleapi.Error{
33080			Code:   res.StatusCode,
33081			Header: res.Header,
33082		}
33083	}
33084	if err != nil {
33085		return nil, err
33086	}
33087	defer googleapi.CloseBody(res)
33088	if err := googleapi.CheckResponse(res); err != nil {
33089		return nil, err
33090	}
33091	ret := &GoogleProtobufEmpty{
33092		ServerResponse: googleapi.ServerResponse{
33093			Header:         res.Header,
33094			HTTPStatusCode: res.StatusCode,
33095		},
33096	}
33097	target := &ret
33098	if err := gensupport.DecodeResponse(target, res); err != nil {
33099		return nil, err
33100	}
33101	return ret, nil
33102	// {
33103	//   "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`.",
33104	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
33105	//   "httpMethod": "POST",
33106	//   "id": "dialogflow.projects.locations.operations.cancel",
33107	//   "parameterOrder": [
33108	//     "name"
33109	//   ],
33110	//   "parameters": {
33111	//     "name": {
33112	//       "description": "The name of the operation resource to be cancelled.",
33113	//       "location": "path",
33114	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
33115	//       "required": true,
33116	//       "type": "string"
33117	//     }
33118	//   },
33119	//   "path": "v3beta1/{+name}:cancel",
33120	//   "response": {
33121	//     "$ref": "GoogleProtobufEmpty"
33122	//   },
33123	//   "scopes": [
33124	//     "https://www.googleapis.com/auth/cloud-platform",
33125	//     "https://www.googleapis.com/auth/dialogflow"
33126	//   ]
33127	// }
33128
33129}
33130
33131// method id "dialogflow.projects.locations.operations.get":
33132
33133type ProjectsLocationsOperationsGetCall struct {
33134	s            *Service
33135	name         string
33136	urlParams_   gensupport.URLParams
33137	ifNoneMatch_ string
33138	ctx_         context.Context
33139	header_      http.Header
33140}
33141
33142// Get: Gets the latest state of a long-running operation. Clients can
33143// use this method to poll the operation result at intervals as
33144// recommended by the API service.
33145//
33146// - name: The name of the operation resource.
33147func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall {
33148	c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33149	c.name = name
33150	return c
33151}
33152
33153// Fields allows partial responses to be retrieved. See
33154// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33155// for more information.
33156func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall {
33157	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33158	return c
33159}
33160
33161// IfNoneMatch sets the optional parameter which makes the operation
33162// fail if the object's ETag matches the given value. This is useful for
33163// getting updates only after the object has changed since the last
33164// request. Use googleapi.IsNotModified to check whether the response
33165// error from Do is the result of In-None-Match.
33166func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall {
33167	c.ifNoneMatch_ = entityTag
33168	return c
33169}
33170
33171// Context sets the context to be used in this call's Do method. Any
33172// pending HTTP request will be aborted if the provided context is
33173// canceled.
33174func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall {
33175	c.ctx_ = ctx
33176	return c
33177}
33178
33179// Header returns an http.Header that can be modified by the caller to
33180// add HTTP headers to the request.
33181func (c *ProjectsLocationsOperationsGetCall) Header() http.Header {
33182	if c.header_ == nil {
33183		c.header_ = make(http.Header)
33184	}
33185	return c.header_
33186}
33187
33188func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
33189	reqHeaders := make(http.Header)
33190	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33191	for k, v := range c.header_ {
33192		reqHeaders[k] = v
33193	}
33194	reqHeaders.Set("User-Agent", c.s.userAgent())
33195	if c.ifNoneMatch_ != "" {
33196		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33197	}
33198	var body io.Reader = nil
33199	c.urlParams_.Set("alt", alt)
33200	c.urlParams_.Set("prettyPrint", "false")
33201	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
33202	urls += "?" + c.urlParams_.Encode()
33203	req, err := http.NewRequest("GET", urls, body)
33204	if err != nil {
33205		return nil, err
33206	}
33207	req.Header = reqHeaders
33208	googleapi.Expand(req.URL, map[string]string{
33209		"name": c.name,
33210	})
33211	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33212}
33213
33214// Do executes the "dialogflow.projects.locations.operations.get" call.
33215// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
33216// Any non-2xx status code is an error. Response headers are in either
33217// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
33218// was returned at all) in error.(*googleapi.Error).Header. Use
33219// googleapi.IsNotModified to check whether the returned error was
33220// because http.StatusNotModified was returned.
33221func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
33222	gensupport.SetOptions(c.urlParams_, opts...)
33223	res, err := c.doRequest("json")
33224	if res != nil && res.StatusCode == http.StatusNotModified {
33225		if res.Body != nil {
33226			res.Body.Close()
33227		}
33228		return nil, &googleapi.Error{
33229			Code:   res.StatusCode,
33230			Header: res.Header,
33231		}
33232	}
33233	if err != nil {
33234		return nil, err
33235	}
33236	defer googleapi.CloseBody(res)
33237	if err := googleapi.CheckResponse(res); err != nil {
33238		return nil, err
33239	}
33240	ret := &GoogleLongrunningOperation{
33241		ServerResponse: googleapi.ServerResponse{
33242			Header:         res.Header,
33243			HTTPStatusCode: res.StatusCode,
33244		},
33245	}
33246	target := &ret
33247	if err := gensupport.DecodeResponse(target, res); err != nil {
33248		return nil, err
33249	}
33250	return ret, nil
33251	// {
33252	//   "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.",
33253	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
33254	//   "httpMethod": "GET",
33255	//   "id": "dialogflow.projects.locations.operations.get",
33256	//   "parameterOrder": [
33257	//     "name"
33258	//   ],
33259	//   "parameters": {
33260	//     "name": {
33261	//       "description": "The name of the operation resource.",
33262	//       "location": "path",
33263	//       "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
33264	//       "required": true,
33265	//       "type": "string"
33266	//     }
33267	//   },
33268	//   "path": "v3beta1/{+name}",
33269	//   "response": {
33270	//     "$ref": "GoogleLongrunningOperation"
33271	//   },
33272	//   "scopes": [
33273	//     "https://www.googleapis.com/auth/cloud-platform",
33274	//     "https://www.googleapis.com/auth/dialogflow"
33275	//   ]
33276	// }
33277
33278}
33279
33280// method id "dialogflow.projects.locations.operations.list":
33281
33282type ProjectsLocationsOperationsListCall struct {
33283	s            *Service
33284	name         string
33285	urlParams_   gensupport.URLParams
33286	ifNoneMatch_ string
33287	ctx_         context.Context
33288	header_      http.Header
33289}
33290
33291// List: Lists operations that match the specified filter in the
33292// request. If the server doesn't support this method, it returns
33293// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
33294// override the binding to use different resource name schemes, such as
33295// `users/*/operations`. To override the binding, API services can add a
33296// binding such as "/v1/{name=users/*}/operations" to their service
33297// configuration. For backwards compatibility, the default name includes
33298// the operations collection id, however overriding users must ensure
33299// the name binding is the parent resource, without the operations
33300// collection id.
33301//
33302// - name: The name of the operation's parent resource.
33303func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall {
33304	c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33305	c.name = name
33306	return c
33307}
33308
33309// Filter sets the optional parameter "filter": The standard list
33310// filter.
33311func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall {
33312	c.urlParams_.Set("filter", filter)
33313	return c
33314}
33315
33316// PageSize sets the optional parameter "pageSize": The standard list
33317// page size.
33318func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall {
33319	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33320	return c
33321}
33322
33323// PageToken sets the optional parameter "pageToken": The standard list
33324// page token.
33325func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall {
33326	c.urlParams_.Set("pageToken", pageToken)
33327	return c
33328}
33329
33330// Fields allows partial responses to be retrieved. See
33331// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33332// for more information.
33333func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall {
33334	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33335	return c
33336}
33337
33338// IfNoneMatch sets the optional parameter which makes the operation
33339// fail if the object's ETag matches the given value. This is useful for
33340// getting updates only after the object has changed since the last
33341// request. Use googleapi.IsNotModified to check whether the response
33342// error from Do is the result of In-None-Match.
33343func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall {
33344	c.ifNoneMatch_ = entityTag
33345	return c
33346}
33347
33348// Context sets the context to be used in this call's Do method. Any
33349// pending HTTP request will be aborted if the provided context is
33350// canceled.
33351func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall {
33352	c.ctx_ = ctx
33353	return c
33354}
33355
33356// Header returns an http.Header that can be modified by the caller to
33357// add HTTP headers to the request.
33358func (c *ProjectsLocationsOperationsListCall) Header() http.Header {
33359	if c.header_ == nil {
33360		c.header_ = make(http.Header)
33361	}
33362	return c.header_
33363}
33364
33365func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) {
33366	reqHeaders := make(http.Header)
33367	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33368	for k, v := range c.header_ {
33369		reqHeaders[k] = v
33370	}
33371	reqHeaders.Set("User-Agent", c.s.userAgent())
33372	if c.ifNoneMatch_ != "" {
33373		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33374	}
33375	var body io.Reader = nil
33376	c.urlParams_.Set("alt", alt)
33377	c.urlParams_.Set("prettyPrint", "false")
33378	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}/operations")
33379	urls += "?" + c.urlParams_.Encode()
33380	req, err := http.NewRequest("GET", urls, body)
33381	if err != nil {
33382		return nil, err
33383	}
33384	req.Header = reqHeaders
33385	googleapi.Expand(req.URL, map[string]string{
33386		"name": c.name,
33387	})
33388	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33389}
33390
33391// Do executes the "dialogflow.projects.locations.operations.list" call.
33392// Exactly one of *GoogleLongrunningListOperationsResponse or error will
33393// be non-nil. Any non-2xx status code is an error. Response headers are
33394// in either
33395// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
33396// a response was returned at all) in error.(*googleapi.Error).Header.
33397// Use googleapi.IsNotModified to check whether the returned error was
33398// because http.StatusNotModified was returned.
33399func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
33400	gensupport.SetOptions(c.urlParams_, opts...)
33401	res, err := c.doRequest("json")
33402	if res != nil && res.StatusCode == http.StatusNotModified {
33403		if res.Body != nil {
33404			res.Body.Close()
33405		}
33406		return nil, &googleapi.Error{
33407			Code:   res.StatusCode,
33408			Header: res.Header,
33409		}
33410	}
33411	if err != nil {
33412		return nil, err
33413	}
33414	defer googleapi.CloseBody(res)
33415	if err := googleapi.CheckResponse(res); err != nil {
33416		return nil, err
33417	}
33418	ret := &GoogleLongrunningListOperationsResponse{
33419		ServerResponse: googleapi.ServerResponse{
33420			Header:         res.Header,
33421			HTTPStatusCode: res.StatusCode,
33422		},
33423	}
33424	target := &ret
33425	if err := gensupport.DecodeResponse(target, res); err != nil {
33426		return nil, err
33427	}
33428	return ret, nil
33429	// {
33430	//   "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.",
33431	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/operations",
33432	//   "httpMethod": "GET",
33433	//   "id": "dialogflow.projects.locations.operations.list",
33434	//   "parameterOrder": [
33435	//     "name"
33436	//   ],
33437	//   "parameters": {
33438	//     "filter": {
33439	//       "description": "The standard list filter.",
33440	//       "location": "query",
33441	//       "type": "string"
33442	//     },
33443	//     "name": {
33444	//       "description": "The name of the operation's parent resource.",
33445	//       "location": "path",
33446	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33447	//       "required": true,
33448	//       "type": "string"
33449	//     },
33450	//     "pageSize": {
33451	//       "description": "The standard list page size.",
33452	//       "format": "int32",
33453	//       "location": "query",
33454	//       "type": "integer"
33455	//     },
33456	//     "pageToken": {
33457	//       "description": "The standard list page token.",
33458	//       "location": "query",
33459	//       "type": "string"
33460	//     }
33461	//   },
33462	//   "path": "v3beta1/{+name}/operations",
33463	//   "response": {
33464	//     "$ref": "GoogleLongrunningListOperationsResponse"
33465	//   },
33466	//   "scopes": [
33467	//     "https://www.googleapis.com/auth/cloud-platform",
33468	//     "https://www.googleapis.com/auth/dialogflow"
33469	//   ]
33470	// }
33471
33472}
33473
33474// Pages invokes f for each page of results.
33475// A non-nil error returned from f will halt the iteration.
33476// The provided context supersedes any context provided to the Context method.
33477func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
33478	c.ctx_ = ctx
33479	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
33480	for {
33481		x, err := c.Do()
33482		if err != nil {
33483			return err
33484		}
33485		if err := f(x); err != nil {
33486			return err
33487		}
33488		if x.NextPageToken == "" {
33489			return nil
33490		}
33491		c.PageToken(x.NextPageToken)
33492	}
33493}
33494
33495// method id "dialogflow.projects.locations.securitySettings.create":
33496
33497type ProjectsLocationsSecuritySettingsCreateCall struct {
33498	s                                              *Service
33499	parent                                         string
33500	googleclouddialogflowcxv3beta1securitysettings *GoogleCloudDialogflowCxV3beta1SecuritySettings
33501	urlParams_                                     gensupport.URLParams
33502	ctx_                                           context.Context
33503	header_                                        http.Header
33504}
33505
33506// Create: Create security settings in the specified location.
33507//
33508// - parent: The location to create an SecuritySettings for. Format:
33509//   `projects//locations/`.
33510func (r *ProjectsLocationsSecuritySettingsService) Create(parent string, googleclouddialogflowcxv3beta1securitysettings *GoogleCloudDialogflowCxV3beta1SecuritySettings) *ProjectsLocationsSecuritySettingsCreateCall {
33511	c := &ProjectsLocationsSecuritySettingsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33512	c.parent = parent
33513	c.googleclouddialogflowcxv3beta1securitysettings = googleclouddialogflowcxv3beta1securitysettings
33514	return c
33515}
33516
33517// Fields allows partial responses to be retrieved. See
33518// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33519// for more information.
33520func (c *ProjectsLocationsSecuritySettingsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsCreateCall {
33521	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33522	return c
33523}
33524
33525// Context sets the context to be used in this call's Do method. Any
33526// pending HTTP request will be aborted if the provided context is
33527// canceled.
33528func (c *ProjectsLocationsSecuritySettingsCreateCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsCreateCall {
33529	c.ctx_ = ctx
33530	return c
33531}
33532
33533// Header returns an http.Header that can be modified by the caller to
33534// add HTTP headers to the request.
33535func (c *ProjectsLocationsSecuritySettingsCreateCall) Header() http.Header {
33536	if c.header_ == nil {
33537		c.header_ = make(http.Header)
33538	}
33539	return c.header_
33540}
33541
33542func (c *ProjectsLocationsSecuritySettingsCreateCall) doRequest(alt string) (*http.Response, error) {
33543	reqHeaders := make(http.Header)
33544	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33545	for k, v := range c.header_ {
33546		reqHeaders[k] = v
33547	}
33548	reqHeaders.Set("User-Agent", c.s.userAgent())
33549	var body io.Reader = nil
33550	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1securitysettings)
33551	if err != nil {
33552		return nil, err
33553	}
33554	reqHeaders.Set("Content-Type", "application/json")
33555	c.urlParams_.Set("alt", alt)
33556	c.urlParams_.Set("prettyPrint", "false")
33557	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/securitySettings")
33558	urls += "?" + c.urlParams_.Encode()
33559	req, err := http.NewRequest("POST", urls, body)
33560	if err != nil {
33561		return nil, err
33562	}
33563	req.Header = reqHeaders
33564	googleapi.Expand(req.URL, map[string]string{
33565		"parent": c.parent,
33566	})
33567	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33568}
33569
33570// Do executes the "dialogflow.projects.locations.securitySettings.create" call.
33571// Exactly one of *GoogleCloudDialogflowCxV3beta1SecuritySettings or
33572// error will be non-nil. Any non-2xx status code is an error. Response
33573// headers are in either
33574// *GoogleCloudDialogflowCxV3beta1SecuritySettings.ServerResponse.Header
33575// or (if a response was returned at all) in
33576// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33577// whether the returned error was because http.StatusNotModified was
33578// returned.
33579func (c *ProjectsLocationsSecuritySettingsCreateCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SecuritySettings, error) {
33580	gensupport.SetOptions(c.urlParams_, opts...)
33581	res, err := c.doRequest("json")
33582	if res != nil && res.StatusCode == http.StatusNotModified {
33583		if res.Body != nil {
33584			res.Body.Close()
33585		}
33586		return nil, &googleapi.Error{
33587			Code:   res.StatusCode,
33588			Header: res.Header,
33589		}
33590	}
33591	if err != nil {
33592		return nil, err
33593	}
33594	defer googleapi.CloseBody(res)
33595	if err := googleapi.CheckResponse(res); err != nil {
33596		return nil, err
33597	}
33598	ret := &GoogleCloudDialogflowCxV3beta1SecuritySettings{
33599		ServerResponse: googleapi.ServerResponse{
33600			Header:         res.Header,
33601			HTTPStatusCode: res.StatusCode,
33602		},
33603	}
33604	target := &ret
33605	if err := gensupport.DecodeResponse(target, res); err != nil {
33606		return nil, err
33607	}
33608	return ret, nil
33609	// {
33610	//   "description": "Create security settings in the specified location.",
33611	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/securitySettings",
33612	//   "httpMethod": "POST",
33613	//   "id": "dialogflow.projects.locations.securitySettings.create",
33614	//   "parameterOrder": [
33615	//     "parent"
33616	//   ],
33617	//   "parameters": {
33618	//     "parent": {
33619	//       "description": "Required. The location to create an SecuritySettings for. Format: `projects//locations/`.",
33620	//       "location": "path",
33621	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
33622	//       "required": true,
33623	//       "type": "string"
33624	//     }
33625	//   },
33626	//   "path": "v3beta1/{+parent}/securitySettings",
33627	//   "request": {
33628	//     "$ref": "GoogleCloudDialogflowCxV3beta1SecuritySettings"
33629	//   },
33630	//   "response": {
33631	//     "$ref": "GoogleCloudDialogflowCxV3beta1SecuritySettings"
33632	//   },
33633	//   "scopes": [
33634	//     "https://www.googleapis.com/auth/cloud-platform",
33635	//     "https://www.googleapis.com/auth/dialogflow"
33636	//   ]
33637	// }
33638
33639}
33640
33641// method id "dialogflow.projects.locations.securitySettings.delete":
33642
33643type ProjectsLocationsSecuritySettingsDeleteCall struct {
33644	s          *Service
33645	name       string
33646	urlParams_ gensupport.URLParams
33647	ctx_       context.Context
33648	header_    http.Header
33649}
33650
33651// Delete: Deletes the specified SecuritySettings.
33652//
33653// - name: The name of the SecuritySettings to delete. Format:
33654//   `projects//locations//securitySettings/`.
33655func (r *ProjectsLocationsSecuritySettingsService) Delete(name string) *ProjectsLocationsSecuritySettingsDeleteCall {
33656	c := &ProjectsLocationsSecuritySettingsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33657	c.name = name
33658	return c
33659}
33660
33661// Fields allows partial responses to be retrieved. See
33662// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33663// for more information.
33664func (c *ProjectsLocationsSecuritySettingsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsDeleteCall {
33665	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33666	return c
33667}
33668
33669// Context sets the context to be used in this call's Do method. Any
33670// pending HTTP request will be aborted if the provided context is
33671// canceled.
33672func (c *ProjectsLocationsSecuritySettingsDeleteCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsDeleteCall {
33673	c.ctx_ = ctx
33674	return c
33675}
33676
33677// Header returns an http.Header that can be modified by the caller to
33678// add HTTP headers to the request.
33679func (c *ProjectsLocationsSecuritySettingsDeleteCall) Header() http.Header {
33680	if c.header_ == nil {
33681		c.header_ = make(http.Header)
33682	}
33683	return c.header_
33684}
33685
33686func (c *ProjectsLocationsSecuritySettingsDeleteCall) doRequest(alt string) (*http.Response, error) {
33687	reqHeaders := make(http.Header)
33688	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33689	for k, v := range c.header_ {
33690		reqHeaders[k] = v
33691	}
33692	reqHeaders.Set("User-Agent", c.s.userAgent())
33693	var body io.Reader = nil
33694	c.urlParams_.Set("alt", alt)
33695	c.urlParams_.Set("prettyPrint", "false")
33696	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
33697	urls += "?" + c.urlParams_.Encode()
33698	req, err := http.NewRequest("DELETE", urls, body)
33699	if err != nil {
33700		return nil, err
33701	}
33702	req.Header = reqHeaders
33703	googleapi.Expand(req.URL, map[string]string{
33704		"name": c.name,
33705	})
33706	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33707}
33708
33709// Do executes the "dialogflow.projects.locations.securitySettings.delete" call.
33710// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
33711// non-2xx status code is an error. Response headers are in either
33712// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
33713// returned at all) in error.(*googleapi.Error).Header. Use
33714// googleapi.IsNotModified to check whether the returned error was
33715// because http.StatusNotModified was returned.
33716func (c *ProjectsLocationsSecuritySettingsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
33717	gensupport.SetOptions(c.urlParams_, opts...)
33718	res, err := c.doRequest("json")
33719	if res != nil && res.StatusCode == http.StatusNotModified {
33720		if res.Body != nil {
33721			res.Body.Close()
33722		}
33723		return nil, &googleapi.Error{
33724			Code:   res.StatusCode,
33725			Header: res.Header,
33726		}
33727	}
33728	if err != nil {
33729		return nil, err
33730	}
33731	defer googleapi.CloseBody(res)
33732	if err := googleapi.CheckResponse(res); err != nil {
33733		return nil, err
33734	}
33735	ret := &GoogleProtobufEmpty{
33736		ServerResponse: googleapi.ServerResponse{
33737			Header:         res.Header,
33738			HTTPStatusCode: res.StatusCode,
33739		},
33740	}
33741	target := &ret
33742	if err := gensupport.DecodeResponse(target, res); err != nil {
33743		return nil, err
33744	}
33745	return ret, nil
33746	// {
33747	//   "description": "Deletes the specified SecuritySettings.",
33748	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33749	//   "httpMethod": "DELETE",
33750	//   "id": "dialogflow.projects.locations.securitySettings.delete",
33751	//   "parameterOrder": [
33752	//     "name"
33753	//   ],
33754	//   "parameters": {
33755	//     "name": {
33756	//       "description": "Required. The name of the SecuritySettings to delete. Format: `projects//locations//securitySettings/`.",
33757	//       "location": "path",
33758	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33759	//       "required": true,
33760	//       "type": "string"
33761	//     }
33762	//   },
33763	//   "path": "v3beta1/{+name}",
33764	//   "response": {
33765	//     "$ref": "GoogleProtobufEmpty"
33766	//   },
33767	//   "scopes": [
33768	//     "https://www.googleapis.com/auth/cloud-platform",
33769	//     "https://www.googleapis.com/auth/dialogflow"
33770	//   ]
33771	// }
33772
33773}
33774
33775// method id "dialogflow.projects.locations.securitySettings.get":
33776
33777type ProjectsLocationsSecuritySettingsGetCall struct {
33778	s            *Service
33779	name         string
33780	urlParams_   gensupport.URLParams
33781	ifNoneMatch_ string
33782	ctx_         context.Context
33783	header_      http.Header
33784}
33785
33786// Get: Retrieves the specified SecuritySettings. The returned settings
33787// may be stale by up to 1 minute.
33788//
33789// - name: Resource name of the settings. Format:
33790//   `projects//locations//securitySettings/`.
33791func (r *ProjectsLocationsSecuritySettingsService) Get(name string) *ProjectsLocationsSecuritySettingsGetCall {
33792	c := &ProjectsLocationsSecuritySettingsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33793	c.name = name
33794	return c
33795}
33796
33797// Fields allows partial responses to be retrieved. See
33798// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33799// for more information.
33800func (c *ProjectsLocationsSecuritySettingsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsGetCall {
33801	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33802	return c
33803}
33804
33805// IfNoneMatch sets the optional parameter which makes the operation
33806// fail if the object's ETag matches the given value. This is useful for
33807// getting updates only after the object has changed since the last
33808// request. Use googleapi.IsNotModified to check whether the response
33809// error from Do is the result of In-None-Match.
33810func (c *ProjectsLocationsSecuritySettingsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsGetCall {
33811	c.ifNoneMatch_ = entityTag
33812	return c
33813}
33814
33815// Context sets the context to be used in this call's Do method. Any
33816// pending HTTP request will be aborted if the provided context is
33817// canceled.
33818func (c *ProjectsLocationsSecuritySettingsGetCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsGetCall {
33819	c.ctx_ = ctx
33820	return c
33821}
33822
33823// Header returns an http.Header that can be modified by the caller to
33824// add HTTP headers to the request.
33825func (c *ProjectsLocationsSecuritySettingsGetCall) Header() http.Header {
33826	if c.header_ == nil {
33827		c.header_ = make(http.Header)
33828	}
33829	return c.header_
33830}
33831
33832func (c *ProjectsLocationsSecuritySettingsGetCall) doRequest(alt string) (*http.Response, error) {
33833	reqHeaders := make(http.Header)
33834	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
33835	for k, v := range c.header_ {
33836		reqHeaders[k] = v
33837	}
33838	reqHeaders.Set("User-Agent", c.s.userAgent())
33839	if c.ifNoneMatch_ != "" {
33840		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
33841	}
33842	var body io.Reader = nil
33843	c.urlParams_.Set("alt", alt)
33844	c.urlParams_.Set("prettyPrint", "false")
33845	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
33846	urls += "?" + c.urlParams_.Encode()
33847	req, err := http.NewRequest("GET", urls, body)
33848	if err != nil {
33849		return nil, err
33850	}
33851	req.Header = reqHeaders
33852	googleapi.Expand(req.URL, map[string]string{
33853		"name": c.name,
33854	})
33855	return gensupport.SendRequest(c.ctx_, c.s.client, req)
33856}
33857
33858// Do executes the "dialogflow.projects.locations.securitySettings.get" call.
33859// Exactly one of *GoogleCloudDialogflowCxV3beta1SecuritySettings or
33860// error will be non-nil. Any non-2xx status code is an error. Response
33861// headers are in either
33862// *GoogleCloudDialogflowCxV3beta1SecuritySettings.ServerResponse.Header
33863// or (if a response was returned at all) in
33864// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
33865// whether the returned error was because http.StatusNotModified was
33866// returned.
33867func (c *ProjectsLocationsSecuritySettingsGetCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SecuritySettings, error) {
33868	gensupport.SetOptions(c.urlParams_, opts...)
33869	res, err := c.doRequest("json")
33870	if res != nil && res.StatusCode == http.StatusNotModified {
33871		if res.Body != nil {
33872			res.Body.Close()
33873		}
33874		return nil, &googleapi.Error{
33875			Code:   res.StatusCode,
33876			Header: res.Header,
33877		}
33878	}
33879	if err != nil {
33880		return nil, err
33881	}
33882	defer googleapi.CloseBody(res)
33883	if err := googleapi.CheckResponse(res); err != nil {
33884		return nil, err
33885	}
33886	ret := &GoogleCloudDialogflowCxV3beta1SecuritySettings{
33887		ServerResponse: googleapi.ServerResponse{
33888			Header:         res.Header,
33889			HTTPStatusCode: res.StatusCode,
33890		},
33891	}
33892	target := &ret
33893	if err := gensupport.DecodeResponse(target, res); err != nil {
33894		return nil, err
33895	}
33896	return ret, nil
33897	// {
33898	//   "description": "Retrieves the specified SecuritySettings. The returned settings may be stale by up to 1 minute.",
33899	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
33900	//   "httpMethod": "GET",
33901	//   "id": "dialogflow.projects.locations.securitySettings.get",
33902	//   "parameterOrder": [
33903	//     "name"
33904	//   ],
33905	//   "parameters": {
33906	//     "name": {
33907	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
33908	//       "location": "path",
33909	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
33910	//       "required": true,
33911	//       "type": "string"
33912	//     }
33913	//   },
33914	//   "path": "v3beta1/{+name}",
33915	//   "response": {
33916	//     "$ref": "GoogleCloudDialogflowCxV3beta1SecuritySettings"
33917	//   },
33918	//   "scopes": [
33919	//     "https://www.googleapis.com/auth/cloud-platform",
33920	//     "https://www.googleapis.com/auth/dialogflow"
33921	//   ]
33922	// }
33923
33924}
33925
33926// method id "dialogflow.projects.locations.securitySettings.list":
33927
33928type ProjectsLocationsSecuritySettingsListCall struct {
33929	s            *Service
33930	parent       string
33931	urlParams_   gensupport.URLParams
33932	ifNoneMatch_ string
33933	ctx_         context.Context
33934	header_      http.Header
33935}
33936
33937// List: Returns the list of all security settings in the specified
33938// location.
33939//
33940// - parent: The location to list all security settings for. Format:
33941//   `projects//locations/`.
33942func (r *ProjectsLocationsSecuritySettingsService) List(parent string) *ProjectsLocationsSecuritySettingsListCall {
33943	c := &ProjectsLocationsSecuritySettingsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
33944	c.parent = parent
33945	return c
33946}
33947
33948// PageSize sets the optional parameter "pageSize": The maximum number
33949// of items to return in a single page. By default 20 and at most 100.
33950func (c *ProjectsLocationsSecuritySettingsListCall) PageSize(pageSize int64) *ProjectsLocationsSecuritySettingsListCall {
33951	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
33952	return c
33953}
33954
33955// PageToken sets the optional parameter "pageToken": The
33956// next_page_token value returned from a previous list request.
33957func (c *ProjectsLocationsSecuritySettingsListCall) PageToken(pageToken string) *ProjectsLocationsSecuritySettingsListCall {
33958	c.urlParams_.Set("pageToken", pageToken)
33959	return c
33960}
33961
33962// Fields allows partial responses to be retrieved. See
33963// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
33964// for more information.
33965func (c *ProjectsLocationsSecuritySettingsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsListCall {
33966	c.urlParams_.Set("fields", googleapi.CombineFields(s))
33967	return c
33968}
33969
33970// IfNoneMatch sets the optional parameter which makes the operation
33971// fail if the object's ETag matches the given value. This is useful for
33972// getting updates only after the object has changed since the last
33973// request. Use googleapi.IsNotModified to check whether the response
33974// error from Do is the result of In-None-Match.
33975func (c *ProjectsLocationsSecuritySettingsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsSecuritySettingsListCall {
33976	c.ifNoneMatch_ = entityTag
33977	return c
33978}
33979
33980// Context sets the context to be used in this call's Do method. Any
33981// pending HTTP request will be aborted if the provided context is
33982// canceled.
33983func (c *ProjectsLocationsSecuritySettingsListCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsListCall {
33984	c.ctx_ = ctx
33985	return c
33986}
33987
33988// Header returns an http.Header that can be modified by the caller to
33989// add HTTP headers to the request.
33990func (c *ProjectsLocationsSecuritySettingsListCall) Header() http.Header {
33991	if c.header_ == nil {
33992		c.header_ = make(http.Header)
33993	}
33994	return c.header_
33995}
33996
33997func (c *ProjectsLocationsSecuritySettingsListCall) doRequest(alt string) (*http.Response, error) {
33998	reqHeaders := make(http.Header)
33999	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34000	for k, v := range c.header_ {
34001		reqHeaders[k] = v
34002	}
34003	reqHeaders.Set("User-Agent", c.s.userAgent())
34004	if c.ifNoneMatch_ != "" {
34005		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34006	}
34007	var body io.Reader = nil
34008	c.urlParams_.Set("alt", alt)
34009	c.urlParams_.Set("prettyPrint", "false")
34010	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+parent}/securitySettings")
34011	urls += "?" + c.urlParams_.Encode()
34012	req, err := http.NewRequest("GET", urls, body)
34013	if err != nil {
34014		return nil, err
34015	}
34016	req.Header = reqHeaders
34017	googleapi.Expand(req.URL, map[string]string{
34018		"parent": c.parent,
34019	})
34020	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34021}
34022
34023// Do executes the "dialogflow.projects.locations.securitySettings.list" call.
34024// Exactly one of
34025// *GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse or error
34026// will be non-nil. Any non-2xx status code is an error. Response
34027// headers are in either
34028// *GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse.ServerResp
34029// onse.Header or (if a response was returned at all) in
34030// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
34031// whether the returned error was because http.StatusNotModified was
34032// returned.
34033func (c *ProjectsLocationsSecuritySettingsListCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse, error) {
34034	gensupport.SetOptions(c.urlParams_, opts...)
34035	res, err := c.doRequest("json")
34036	if res != nil && res.StatusCode == http.StatusNotModified {
34037		if res.Body != nil {
34038			res.Body.Close()
34039		}
34040		return nil, &googleapi.Error{
34041			Code:   res.StatusCode,
34042			Header: res.Header,
34043		}
34044	}
34045	if err != nil {
34046		return nil, err
34047	}
34048	defer googleapi.CloseBody(res)
34049	if err := googleapi.CheckResponse(res); err != nil {
34050		return nil, err
34051	}
34052	ret := &GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse{
34053		ServerResponse: googleapi.ServerResponse{
34054			Header:         res.Header,
34055			HTTPStatusCode: res.StatusCode,
34056		},
34057	}
34058	target := &ret
34059	if err := gensupport.DecodeResponse(target, res); err != nil {
34060		return nil, err
34061	}
34062	return ret, nil
34063	// {
34064	//   "description": "Returns the list of all security settings in the specified location.",
34065	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/securitySettings",
34066	//   "httpMethod": "GET",
34067	//   "id": "dialogflow.projects.locations.securitySettings.list",
34068	//   "parameterOrder": [
34069	//     "parent"
34070	//   ],
34071	//   "parameters": {
34072	//     "pageSize": {
34073	//       "description": "The maximum number of items to return in a single page. By default 20 and at most 100.",
34074	//       "format": "int32",
34075	//       "location": "query",
34076	//       "type": "integer"
34077	//     },
34078	//     "pageToken": {
34079	//       "description": "The next_page_token value returned from a previous list request.",
34080	//       "location": "query",
34081	//       "type": "string"
34082	//     },
34083	//     "parent": {
34084	//       "description": "Required. The location to list all security settings for. Format: `projects//locations/`.",
34085	//       "location": "path",
34086	//       "pattern": "^projects/[^/]+/locations/[^/]+$",
34087	//       "required": true,
34088	//       "type": "string"
34089	//     }
34090	//   },
34091	//   "path": "v3beta1/{+parent}/securitySettings",
34092	//   "response": {
34093	//     "$ref": "GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse"
34094	//   },
34095	//   "scopes": [
34096	//     "https://www.googleapis.com/auth/cloud-platform",
34097	//     "https://www.googleapis.com/auth/dialogflow"
34098	//   ]
34099	// }
34100
34101}
34102
34103// Pages invokes f for each page of results.
34104// A non-nil error returned from f will halt the iteration.
34105// The provided context supersedes any context provided to the Context method.
34106func (c *ProjectsLocationsSecuritySettingsListCall) Pages(ctx context.Context, f func(*GoogleCloudDialogflowCxV3beta1ListSecuritySettingsResponse) error) error {
34107	c.ctx_ = ctx
34108	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34109	for {
34110		x, err := c.Do()
34111		if err != nil {
34112			return err
34113		}
34114		if err := f(x); err != nil {
34115			return err
34116		}
34117		if x.NextPageToken == "" {
34118			return nil
34119		}
34120		c.PageToken(x.NextPageToken)
34121	}
34122}
34123
34124// method id "dialogflow.projects.locations.securitySettings.patch":
34125
34126type ProjectsLocationsSecuritySettingsPatchCall struct {
34127	s                                              *Service
34128	name                                           string
34129	googleclouddialogflowcxv3beta1securitysettings *GoogleCloudDialogflowCxV3beta1SecuritySettings
34130	urlParams_                                     gensupport.URLParams
34131	ctx_                                           context.Context
34132	header_                                        http.Header
34133}
34134
34135// Patch: Updates the specified SecuritySettings.
34136//
34137// - name: Resource name of the settings. Format:
34138//   `projects//locations//securitySettings/`.
34139func (r *ProjectsLocationsSecuritySettingsService) Patch(name string, googleclouddialogflowcxv3beta1securitysettings *GoogleCloudDialogflowCxV3beta1SecuritySettings) *ProjectsLocationsSecuritySettingsPatchCall {
34140	c := &ProjectsLocationsSecuritySettingsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34141	c.name = name
34142	c.googleclouddialogflowcxv3beta1securitysettings = googleclouddialogflowcxv3beta1securitysettings
34143	return c
34144}
34145
34146// UpdateMask sets the optional parameter "updateMask": Required. The
34147// mask to control which fields get updated. If the mask is not present,
34148// all fields will be updated.
34149func (c *ProjectsLocationsSecuritySettingsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsSecuritySettingsPatchCall {
34150	c.urlParams_.Set("updateMask", updateMask)
34151	return c
34152}
34153
34154// Fields allows partial responses to be retrieved. See
34155// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34156// for more information.
34157func (c *ProjectsLocationsSecuritySettingsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsSecuritySettingsPatchCall {
34158	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34159	return c
34160}
34161
34162// Context sets the context to be used in this call's Do method. Any
34163// pending HTTP request will be aborted if the provided context is
34164// canceled.
34165func (c *ProjectsLocationsSecuritySettingsPatchCall) Context(ctx context.Context) *ProjectsLocationsSecuritySettingsPatchCall {
34166	c.ctx_ = ctx
34167	return c
34168}
34169
34170// Header returns an http.Header that can be modified by the caller to
34171// add HTTP headers to the request.
34172func (c *ProjectsLocationsSecuritySettingsPatchCall) Header() http.Header {
34173	if c.header_ == nil {
34174		c.header_ = make(http.Header)
34175	}
34176	return c.header_
34177}
34178
34179func (c *ProjectsLocationsSecuritySettingsPatchCall) doRequest(alt string) (*http.Response, error) {
34180	reqHeaders := make(http.Header)
34181	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34182	for k, v := range c.header_ {
34183		reqHeaders[k] = v
34184	}
34185	reqHeaders.Set("User-Agent", c.s.userAgent())
34186	var body io.Reader = nil
34187	body, err := googleapi.WithoutDataWrapper.JSONReader(c.googleclouddialogflowcxv3beta1securitysettings)
34188	if err != nil {
34189		return nil, err
34190	}
34191	reqHeaders.Set("Content-Type", "application/json")
34192	c.urlParams_.Set("alt", alt)
34193	c.urlParams_.Set("prettyPrint", "false")
34194	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
34195	urls += "?" + c.urlParams_.Encode()
34196	req, err := http.NewRequest("PATCH", urls, body)
34197	if err != nil {
34198		return nil, err
34199	}
34200	req.Header = reqHeaders
34201	googleapi.Expand(req.URL, map[string]string{
34202		"name": c.name,
34203	})
34204	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34205}
34206
34207// Do executes the "dialogflow.projects.locations.securitySettings.patch" call.
34208// Exactly one of *GoogleCloudDialogflowCxV3beta1SecuritySettings or
34209// error will be non-nil. Any non-2xx status code is an error. Response
34210// headers are in either
34211// *GoogleCloudDialogflowCxV3beta1SecuritySettings.ServerResponse.Header
34212// or (if a response was returned at all) in
34213// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
34214// whether the returned error was because http.StatusNotModified was
34215// returned.
34216func (c *ProjectsLocationsSecuritySettingsPatchCall) Do(opts ...googleapi.CallOption) (*GoogleCloudDialogflowCxV3beta1SecuritySettings, error) {
34217	gensupport.SetOptions(c.urlParams_, opts...)
34218	res, err := c.doRequest("json")
34219	if res != nil && res.StatusCode == http.StatusNotModified {
34220		if res.Body != nil {
34221			res.Body.Close()
34222		}
34223		return nil, &googleapi.Error{
34224			Code:   res.StatusCode,
34225			Header: res.Header,
34226		}
34227	}
34228	if err != nil {
34229		return nil, err
34230	}
34231	defer googleapi.CloseBody(res)
34232	if err := googleapi.CheckResponse(res); err != nil {
34233		return nil, err
34234	}
34235	ret := &GoogleCloudDialogflowCxV3beta1SecuritySettings{
34236		ServerResponse: googleapi.ServerResponse{
34237			Header:         res.Header,
34238			HTTPStatusCode: res.StatusCode,
34239		},
34240	}
34241	target := &ret
34242	if err := gensupport.DecodeResponse(target, res); err != nil {
34243		return nil, err
34244	}
34245	return ret, nil
34246	// {
34247	//   "description": "Updates the specified SecuritySettings.",
34248	//   "flatPath": "v3beta1/projects/{projectsId}/locations/{locationsId}/securitySettings/{securitySettingsId}",
34249	//   "httpMethod": "PATCH",
34250	//   "id": "dialogflow.projects.locations.securitySettings.patch",
34251	//   "parameterOrder": [
34252	//     "name"
34253	//   ],
34254	//   "parameters": {
34255	//     "name": {
34256	//       "description": "Required. Resource name of the settings. Format: `projects//locations//securitySettings/`.",
34257	//       "location": "path",
34258	//       "pattern": "^projects/[^/]+/locations/[^/]+/securitySettings/[^/]+$",
34259	//       "required": true,
34260	//       "type": "string"
34261	//     },
34262	//     "updateMask": {
34263	//       "description": "Required. The mask to control which fields get updated. If the mask is not present, all fields will be updated.",
34264	//       "format": "google-fieldmask",
34265	//       "location": "query",
34266	//       "type": "string"
34267	//     }
34268	//   },
34269	//   "path": "v3beta1/{+name}",
34270	//   "request": {
34271	//     "$ref": "GoogleCloudDialogflowCxV3beta1SecuritySettings"
34272	//   },
34273	//   "response": {
34274	//     "$ref": "GoogleCloudDialogflowCxV3beta1SecuritySettings"
34275	//   },
34276	//   "scopes": [
34277	//     "https://www.googleapis.com/auth/cloud-platform",
34278	//     "https://www.googleapis.com/auth/dialogflow"
34279	//   ]
34280	// }
34281
34282}
34283
34284// method id "dialogflow.projects.operations.cancel":
34285
34286type ProjectsOperationsCancelCall struct {
34287	s          *Service
34288	name       string
34289	urlParams_ gensupport.URLParams
34290	ctx_       context.Context
34291	header_    http.Header
34292}
34293
34294// Cancel: Starts asynchronous cancellation on a long-running operation.
34295// The server makes a best effort to cancel the operation, but success
34296// is not guaranteed. If the server doesn't support this method, it
34297// returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use
34298// Operations.GetOperation or other methods to check whether the
34299// cancellation succeeded or whether the operation completed despite
34300// cancellation. On successful cancellation, the operation is not
34301// deleted; instead, it becomes an operation with an Operation.error
34302// value with a google.rpc.Status.code of 1, corresponding to
34303// `Code.CANCELLED`.
34304//
34305// - name: The name of the operation resource to be cancelled.
34306func (r *ProjectsOperationsService) Cancel(name string) *ProjectsOperationsCancelCall {
34307	c := &ProjectsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34308	c.name = name
34309	return c
34310}
34311
34312// Fields allows partial responses to be retrieved. See
34313// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34314// for more information.
34315func (c *ProjectsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsOperationsCancelCall {
34316	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34317	return c
34318}
34319
34320// Context sets the context to be used in this call's Do method. Any
34321// pending HTTP request will be aborted if the provided context is
34322// canceled.
34323func (c *ProjectsOperationsCancelCall) Context(ctx context.Context) *ProjectsOperationsCancelCall {
34324	c.ctx_ = ctx
34325	return c
34326}
34327
34328// Header returns an http.Header that can be modified by the caller to
34329// add HTTP headers to the request.
34330func (c *ProjectsOperationsCancelCall) Header() http.Header {
34331	if c.header_ == nil {
34332		c.header_ = make(http.Header)
34333	}
34334	return c.header_
34335}
34336
34337func (c *ProjectsOperationsCancelCall) doRequest(alt string) (*http.Response, error) {
34338	reqHeaders := make(http.Header)
34339	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34340	for k, v := range c.header_ {
34341		reqHeaders[k] = v
34342	}
34343	reqHeaders.Set("User-Agent", c.s.userAgent())
34344	var body io.Reader = nil
34345	c.urlParams_.Set("alt", alt)
34346	c.urlParams_.Set("prettyPrint", "false")
34347	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}:cancel")
34348	urls += "?" + c.urlParams_.Encode()
34349	req, err := http.NewRequest("POST", urls, body)
34350	if err != nil {
34351		return nil, err
34352	}
34353	req.Header = reqHeaders
34354	googleapi.Expand(req.URL, map[string]string{
34355		"name": c.name,
34356	})
34357	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34358}
34359
34360// Do executes the "dialogflow.projects.operations.cancel" call.
34361// Exactly one of *GoogleProtobufEmpty or error will be non-nil. Any
34362// non-2xx status code is an error. Response headers are in either
34363// *GoogleProtobufEmpty.ServerResponse.Header or (if a response was
34364// returned at all) in error.(*googleapi.Error).Header. Use
34365// googleapi.IsNotModified to check whether the returned error was
34366// because http.StatusNotModified was returned.
34367func (c *ProjectsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) {
34368	gensupport.SetOptions(c.urlParams_, opts...)
34369	res, err := c.doRequest("json")
34370	if res != nil && res.StatusCode == http.StatusNotModified {
34371		if res.Body != nil {
34372			res.Body.Close()
34373		}
34374		return nil, &googleapi.Error{
34375			Code:   res.StatusCode,
34376			Header: res.Header,
34377		}
34378	}
34379	if err != nil {
34380		return nil, err
34381	}
34382	defer googleapi.CloseBody(res)
34383	if err := googleapi.CheckResponse(res); err != nil {
34384		return nil, err
34385	}
34386	ret := &GoogleProtobufEmpty{
34387		ServerResponse: googleapi.ServerResponse{
34388			Header:         res.Header,
34389			HTTPStatusCode: res.StatusCode,
34390		},
34391	}
34392	target := &ret
34393	if err := gensupport.DecodeResponse(target, res); err != nil {
34394		return nil, err
34395	}
34396	return ret, nil
34397	// {
34398	//   "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`.",
34399	//   "flatPath": "v3beta1/projects/{projectsId}/operations/{operationsId}:cancel",
34400	//   "httpMethod": "POST",
34401	//   "id": "dialogflow.projects.operations.cancel",
34402	//   "parameterOrder": [
34403	//     "name"
34404	//   ],
34405	//   "parameters": {
34406	//     "name": {
34407	//       "description": "The name of the operation resource to be cancelled.",
34408	//       "location": "path",
34409	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
34410	//       "required": true,
34411	//       "type": "string"
34412	//     }
34413	//   },
34414	//   "path": "v3beta1/{+name}:cancel",
34415	//   "response": {
34416	//     "$ref": "GoogleProtobufEmpty"
34417	//   },
34418	//   "scopes": [
34419	//     "https://www.googleapis.com/auth/cloud-platform",
34420	//     "https://www.googleapis.com/auth/dialogflow"
34421	//   ]
34422	// }
34423
34424}
34425
34426// method id "dialogflow.projects.operations.get":
34427
34428type ProjectsOperationsGetCall struct {
34429	s            *Service
34430	name         string
34431	urlParams_   gensupport.URLParams
34432	ifNoneMatch_ string
34433	ctx_         context.Context
34434	header_      http.Header
34435}
34436
34437// Get: Gets the latest state of a long-running operation. Clients can
34438// use this method to poll the operation result at intervals as
34439// recommended by the API service.
34440//
34441// - name: The name of the operation resource.
34442func (r *ProjectsOperationsService) Get(name string) *ProjectsOperationsGetCall {
34443	c := &ProjectsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34444	c.name = name
34445	return c
34446}
34447
34448// Fields allows partial responses to be retrieved. See
34449// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34450// for more information.
34451func (c *ProjectsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsOperationsGetCall {
34452	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34453	return c
34454}
34455
34456// IfNoneMatch sets the optional parameter which makes the operation
34457// fail if the object's ETag matches the given value. This is useful for
34458// getting updates only after the object has changed since the last
34459// request. Use googleapi.IsNotModified to check whether the response
34460// error from Do is the result of In-None-Match.
34461func (c *ProjectsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsOperationsGetCall {
34462	c.ifNoneMatch_ = entityTag
34463	return c
34464}
34465
34466// Context sets the context to be used in this call's Do method. Any
34467// pending HTTP request will be aborted if the provided context is
34468// canceled.
34469func (c *ProjectsOperationsGetCall) Context(ctx context.Context) *ProjectsOperationsGetCall {
34470	c.ctx_ = ctx
34471	return c
34472}
34473
34474// Header returns an http.Header that can be modified by the caller to
34475// add HTTP headers to the request.
34476func (c *ProjectsOperationsGetCall) Header() http.Header {
34477	if c.header_ == nil {
34478		c.header_ = make(http.Header)
34479	}
34480	return c.header_
34481}
34482
34483func (c *ProjectsOperationsGetCall) doRequest(alt string) (*http.Response, error) {
34484	reqHeaders := make(http.Header)
34485	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34486	for k, v := range c.header_ {
34487		reqHeaders[k] = v
34488	}
34489	reqHeaders.Set("User-Agent", c.s.userAgent())
34490	if c.ifNoneMatch_ != "" {
34491		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34492	}
34493	var body io.Reader = nil
34494	c.urlParams_.Set("alt", alt)
34495	c.urlParams_.Set("prettyPrint", "false")
34496	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}")
34497	urls += "?" + c.urlParams_.Encode()
34498	req, err := http.NewRequest("GET", urls, body)
34499	if err != nil {
34500		return nil, err
34501	}
34502	req.Header = reqHeaders
34503	googleapi.Expand(req.URL, map[string]string{
34504		"name": c.name,
34505	})
34506	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34507}
34508
34509// Do executes the "dialogflow.projects.operations.get" call.
34510// Exactly one of *GoogleLongrunningOperation or error will be non-nil.
34511// Any non-2xx status code is an error. Response headers are in either
34512// *GoogleLongrunningOperation.ServerResponse.Header or (if a response
34513// was returned at all) in error.(*googleapi.Error).Header. Use
34514// googleapi.IsNotModified to check whether the returned error was
34515// because http.StatusNotModified was returned.
34516func (c *ProjectsOperationsGetCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningOperation, error) {
34517	gensupport.SetOptions(c.urlParams_, opts...)
34518	res, err := c.doRequest("json")
34519	if res != nil && res.StatusCode == http.StatusNotModified {
34520		if res.Body != nil {
34521			res.Body.Close()
34522		}
34523		return nil, &googleapi.Error{
34524			Code:   res.StatusCode,
34525			Header: res.Header,
34526		}
34527	}
34528	if err != nil {
34529		return nil, err
34530	}
34531	defer googleapi.CloseBody(res)
34532	if err := googleapi.CheckResponse(res); err != nil {
34533		return nil, err
34534	}
34535	ret := &GoogleLongrunningOperation{
34536		ServerResponse: googleapi.ServerResponse{
34537			Header:         res.Header,
34538			HTTPStatusCode: res.StatusCode,
34539		},
34540	}
34541	target := &ret
34542	if err := gensupport.DecodeResponse(target, res); err != nil {
34543		return nil, err
34544	}
34545	return ret, nil
34546	// {
34547	//   "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.",
34548	//   "flatPath": "v3beta1/projects/{projectsId}/operations/{operationsId}",
34549	//   "httpMethod": "GET",
34550	//   "id": "dialogflow.projects.operations.get",
34551	//   "parameterOrder": [
34552	//     "name"
34553	//   ],
34554	//   "parameters": {
34555	//     "name": {
34556	//       "description": "The name of the operation resource.",
34557	//       "location": "path",
34558	//       "pattern": "^projects/[^/]+/operations/[^/]+$",
34559	//       "required": true,
34560	//       "type": "string"
34561	//     }
34562	//   },
34563	//   "path": "v3beta1/{+name}",
34564	//   "response": {
34565	//     "$ref": "GoogleLongrunningOperation"
34566	//   },
34567	//   "scopes": [
34568	//     "https://www.googleapis.com/auth/cloud-platform",
34569	//     "https://www.googleapis.com/auth/dialogflow"
34570	//   ]
34571	// }
34572
34573}
34574
34575// method id "dialogflow.projects.operations.list":
34576
34577type ProjectsOperationsListCall struct {
34578	s            *Service
34579	name         string
34580	urlParams_   gensupport.URLParams
34581	ifNoneMatch_ string
34582	ctx_         context.Context
34583	header_      http.Header
34584}
34585
34586// List: Lists operations that match the specified filter in the
34587// request. If the server doesn't support this method, it returns
34588// `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to
34589// override the binding to use different resource name schemes, such as
34590// `users/*/operations`. To override the binding, API services can add a
34591// binding such as "/v1/{name=users/*}/operations" to their service
34592// configuration. For backwards compatibility, the default name includes
34593// the operations collection id, however overriding users must ensure
34594// the name binding is the parent resource, without the operations
34595// collection id.
34596//
34597// - name: The name of the operation's parent resource.
34598func (r *ProjectsOperationsService) List(name string) *ProjectsOperationsListCall {
34599	c := &ProjectsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
34600	c.name = name
34601	return c
34602}
34603
34604// Filter sets the optional parameter "filter": The standard list
34605// filter.
34606func (c *ProjectsOperationsListCall) Filter(filter string) *ProjectsOperationsListCall {
34607	c.urlParams_.Set("filter", filter)
34608	return c
34609}
34610
34611// PageSize sets the optional parameter "pageSize": The standard list
34612// page size.
34613func (c *ProjectsOperationsListCall) PageSize(pageSize int64) *ProjectsOperationsListCall {
34614	c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
34615	return c
34616}
34617
34618// PageToken sets the optional parameter "pageToken": The standard list
34619// page token.
34620func (c *ProjectsOperationsListCall) PageToken(pageToken string) *ProjectsOperationsListCall {
34621	c.urlParams_.Set("pageToken", pageToken)
34622	return c
34623}
34624
34625// Fields allows partial responses to be retrieved. See
34626// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse
34627// for more information.
34628func (c *ProjectsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsOperationsListCall {
34629	c.urlParams_.Set("fields", googleapi.CombineFields(s))
34630	return c
34631}
34632
34633// IfNoneMatch sets the optional parameter which makes the operation
34634// fail if the object's ETag matches the given value. This is useful for
34635// getting updates only after the object has changed since the last
34636// request. Use googleapi.IsNotModified to check whether the response
34637// error from Do is the result of In-None-Match.
34638func (c *ProjectsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsOperationsListCall {
34639	c.ifNoneMatch_ = entityTag
34640	return c
34641}
34642
34643// Context sets the context to be used in this call's Do method. Any
34644// pending HTTP request will be aborted if the provided context is
34645// canceled.
34646func (c *ProjectsOperationsListCall) Context(ctx context.Context) *ProjectsOperationsListCall {
34647	c.ctx_ = ctx
34648	return c
34649}
34650
34651// Header returns an http.Header that can be modified by the caller to
34652// add HTTP headers to the request.
34653func (c *ProjectsOperationsListCall) Header() http.Header {
34654	if c.header_ == nil {
34655		c.header_ = make(http.Header)
34656	}
34657	return c.header_
34658}
34659
34660func (c *ProjectsOperationsListCall) doRequest(alt string) (*http.Response, error) {
34661	reqHeaders := make(http.Header)
34662	reqHeaders.Set("x-goog-api-client", "gl-go/"+gensupport.GoVersion()+" gdcl/20210915")
34663	for k, v := range c.header_ {
34664		reqHeaders[k] = v
34665	}
34666	reqHeaders.Set("User-Agent", c.s.userAgent())
34667	if c.ifNoneMatch_ != "" {
34668		reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
34669	}
34670	var body io.Reader = nil
34671	c.urlParams_.Set("alt", alt)
34672	c.urlParams_.Set("prettyPrint", "false")
34673	urls := googleapi.ResolveRelative(c.s.BasePath, "v3beta1/{+name}/operations")
34674	urls += "?" + c.urlParams_.Encode()
34675	req, err := http.NewRequest("GET", urls, body)
34676	if err != nil {
34677		return nil, err
34678	}
34679	req.Header = reqHeaders
34680	googleapi.Expand(req.URL, map[string]string{
34681		"name": c.name,
34682	})
34683	return gensupport.SendRequest(c.ctx_, c.s.client, req)
34684}
34685
34686// Do executes the "dialogflow.projects.operations.list" call.
34687// Exactly one of *GoogleLongrunningListOperationsResponse or error will
34688// be non-nil. Any non-2xx status code is an error. Response headers are
34689// in either
34690// *GoogleLongrunningListOperationsResponse.ServerResponse.Header or (if
34691// a response was returned at all) in error.(*googleapi.Error).Header.
34692// Use googleapi.IsNotModified to check whether the returned error was
34693// because http.StatusNotModified was returned.
34694func (c *ProjectsOperationsListCall) Do(opts ...googleapi.CallOption) (*GoogleLongrunningListOperationsResponse, error) {
34695	gensupport.SetOptions(c.urlParams_, opts...)
34696	res, err := c.doRequest("json")
34697	if res != nil && res.StatusCode == http.StatusNotModified {
34698		if res.Body != nil {
34699			res.Body.Close()
34700		}
34701		return nil, &googleapi.Error{
34702			Code:   res.StatusCode,
34703			Header: res.Header,
34704		}
34705	}
34706	if err != nil {
34707		return nil, err
34708	}
34709	defer googleapi.CloseBody(res)
34710	if err := googleapi.CheckResponse(res); err != nil {
34711		return nil, err
34712	}
34713	ret := &GoogleLongrunningListOperationsResponse{
34714		ServerResponse: googleapi.ServerResponse{
34715			Header:         res.Header,
34716			HTTPStatusCode: res.StatusCode,
34717		},
34718	}
34719	target := &ret
34720	if err := gensupport.DecodeResponse(target, res); err != nil {
34721		return nil, err
34722	}
34723	return ret, nil
34724	// {
34725	//   "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.",
34726	//   "flatPath": "v3beta1/projects/{projectsId}/operations",
34727	//   "httpMethod": "GET",
34728	//   "id": "dialogflow.projects.operations.list",
34729	//   "parameterOrder": [
34730	//     "name"
34731	//   ],
34732	//   "parameters": {
34733	//     "filter": {
34734	//       "description": "The standard list filter.",
34735	//       "location": "query",
34736	//       "type": "string"
34737	//     },
34738	//     "name": {
34739	//       "description": "The name of the operation's parent resource.",
34740	//       "location": "path",
34741	//       "pattern": "^projects/[^/]+$",
34742	//       "required": true,
34743	//       "type": "string"
34744	//     },
34745	//     "pageSize": {
34746	//       "description": "The standard list page size.",
34747	//       "format": "int32",
34748	//       "location": "query",
34749	//       "type": "integer"
34750	//     },
34751	//     "pageToken": {
34752	//       "description": "The standard list page token.",
34753	//       "location": "query",
34754	//       "type": "string"
34755	//     }
34756	//   },
34757	//   "path": "v3beta1/{+name}/operations",
34758	//   "response": {
34759	//     "$ref": "GoogleLongrunningListOperationsResponse"
34760	//   },
34761	//   "scopes": [
34762	//     "https://www.googleapis.com/auth/cloud-platform",
34763	//     "https://www.googleapis.com/auth/dialogflow"
34764	//   ]
34765	// }
34766
34767}
34768
34769// Pages invokes f for each page of results.
34770// A non-nil error returned from f will halt the iteration.
34771// The provided context supersedes any context provided to the Context method.
34772func (c *ProjectsOperationsListCall) Pages(ctx context.Context, f func(*GoogleLongrunningListOperationsResponse) error) error {
34773	c.ctx_ = ctx
34774	defer c.PageToken(c.urlParams_.Get("pageToken")) // reset paging to original point
34775	for {
34776		x, err := c.Do()
34777		if err != nil {
34778			return err
34779		}
34780		if err := f(x); err != nil {
34781			return err
34782		}
34783		if x.NextPageToken == "" {
34784			return nil
34785		}
34786		c.PageToken(x.NextPageToken)
34787	}
34788}
34789