1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package worklink
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/restjson"
14)
15
16const opAssociateDomain = "AssociateDomain"
17
18// AssociateDomainRequest generates a "aws/request.Request" representing the
19// client's request for the AssociateDomain operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AssociateDomain for more information on using the AssociateDomain
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AssociateDomainRequest method.
34//    req, resp := client.AssociateDomainRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateDomain
42func (c *WorkLink) AssociateDomainRequest(input *AssociateDomainInput) (req *request.Request, output *AssociateDomainOutput) {
43	op := &request.Operation{
44		Name:       opAssociateDomain,
45		HTTPMethod: "POST",
46		HTTPPath:   "/associateDomain",
47	}
48
49	if input == nil {
50		input = &AssociateDomainInput{}
51	}
52
53	output = &AssociateDomainOutput{}
54	req = c.newRequest(op, input, output)
55	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
56	return
57}
58
59// AssociateDomain API operation for Amazon WorkLink.
60//
61// Specifies a domain to be associated to Amazon WorkLink.
62//
63// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
64// with awserr.Error's Code and Message methods to get detailed information about
65// the error.
66//
67// See the AWS API reference guide for Amazon WorkLink's
68// API operation AssociateDomain for usage and error information.
69//
70// Returned Error Types:
71//   * UnauthorizedException
72//   You are not authorized to perform this action.
73//
74//   * InternalServerErrorException
75//   The service is temporarily unavailable.
76//
77//   * InvalidRequestException
78//   The request is not valid.
79//
80//   * ResourceNotFoundException
81//   The requested resource was not found.
82//
83//   * ResourceAlreadyExistsException
84//   The resource already exists.
85//
86//   * TooManyRequestsException
87//   The number of requests exceeds the limit.
88//
89// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateDomain
90func (c *WorkLink) AssociateDomain(input *AssociateDomainInput) (*AssociateDomainOutput, error) {
91	req, out := c.AssociateDomainRequest(input)
92	return out, req.Send()
93}
94
95// AssociateDomainWithContext is the same as AssociateDomain with the addition of
96// the ability to pass a context and additional request options.
97//
98// See AssociateDomain for details on how to use this API operation.
99//
100// The context must be non-nil and will be used for request cancellation. If
101// the context is nil a panic will occur. In the future the SDK may create
102// sub-contexts for http.Requests. See https://golang.org/pkg/context/
103// for more information on using Contexts.
104func (c *WorkLink) AssociateDomainWithContext(ctx aws.Context, input *AssociateDomainInput, opts ...request.Option) (*AssociateDomainOutput, error) {
105	req, out := c.AssociateDomainRequest(input)
106	req.SetContext(ctx)
107	req.ApplyOptions(opts...)
108	return out, req.Send()
109}
110
111const opAssociateWebsiteAuthorizationProvider = "AssociateWebsiteAuthorizationProvider"
112
113// AssociateWebsiteAuthorizationProviderRequest generates a "aws/request.Request" representing the
114// client's request for the AssociateWebsiteAuthorizationProvider operation. The "output" return
115// value will be populated with the request's response once the request completes
116// successfully.
117//
118// Use "Send" method on the returned Request to send the API call to the service.
119// the "output" return value is not valid until after Send returns without error.
120//
121// See AssociateWebsiteAuthorizationProvider for more information on using the AssociateWebsiteAuthorizationProvider
122// API call, and error handling.
123//
124// This method is useful when you want to inject custom logic or configuration
125// into the SDK's request lifecycle. Such as custom headers, or retry logic.
126//
127//
128//    // Example sending a request using the AssociateWebsiteAuthorizationProviderRequest method.
129//    req, resp := client.AssociateWebsiteAuthorizationProviderRequest(params)
130//
131//    err := req.Send()
132//    if err == nil { // resp is now filled
133//        fmt.Println(resp)
134//    }
135//
136// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateWebsiteAuthorizationProvider
137func (c *WorkLink) AssociateWebsiteAuthorizationProviderRequest(input *AssociateWebsiteAuthorizationProviderInput) (req *request.Request, output *AssociateWebsiteAuthorizationProviderOutput) {
138	op := &request.Operation{
139		Name:       opAssociateWebsiteAuthorizationProvider,
140		HTTPMethod: "POST",
141		HTTPPath:   "/associateWebsiteAuthorizationProvider",
142	}
143
144	if input == nil {
145		input = &AssociateWebsiteAuthorizationProviderInput{}
146	}
147
148	output = &AssociateWebsiteAuthorizationProviderOutput{}
149	req = c.newRequest(op, input, output)
150	return
151}
152
153// AssociateWebsiteAuthorizationProvider API operation for Amazon WorkLink.
154//
155// Associates a website authorization provider with a specified fleet. This
156// is used to authorize users against associated websites in the company network.
157//
158// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
159// with awserr.Error's Code and Message methods to get detailed information about
160// the error.
161//
162// See the AWS API reference guide for Amazon WorkLink's
163// API operation AssociateWebsiteAuthorizationProvider for usage and error information.
164//
165// Returned Error Types:
166//   * UnauthorizedException
167//   You are not authorized to perform this action.
168//
169//   * InternalServerErrorException
170//   The service is temporarily unavailable.
171//
172//   * InvalidRequestException
173//   The request is not valid.
174//
175//   * ResourceNotFoundException
176//   The requested resource was not found.
177//
178//   * ResourceAlreadyExistsException
179//   The resource already exists.
180//
181//   * TooManyRequestsException
182//   The number of requests exceeds the limit.
183//
184// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateWebsiteAuthorizationProvider
185func (c *WorkLink) AssociateWebsiteAuthorizationProvider(input *AssociateWebsiteAuthorizationProviderInput) (*AssociateWebsiteAuthorizationProviderOutput, error) {
186	req, out := c.AssociateWebsiteAuthorizationProviderRequest(input)
187	return out, req.Send()
188}
189
190// AssociateWebsiteAuthorizationProviderWithContext is the same as AssociateWebsiteAuthorizationProvider with the addition of
191// the ability to pass a context and additional request options.
192//
193// See AssociateWebsiteAuthorizationProvider for details on how to use this API operation.
194//
195// The context must be non-nil and will be used for request cancellation. If
196// the context is nil a panic will occur. In the future the SDK may create
197// sub-contexts for http.Requests. See https://golang.org/pkg/context/
198// for more information on using Contexts.
199func (c *WorkLink) AssociateWebsiteAuthorizationProviderWithContext(ctx aws.Context, input *AssociateWebsiteAuthorizationProviderInput, opts ...request.Option) (*AssociateWebsiteAuthorizationProviderOutput, error) {
200	req, out := c.AssociateWebsiteAuthorizationProviderRequest(input)
201	req.SetContext(ctx)
202	req.ApplyOptions(opts...)
203	return out, req.Send()
204}
205
206const opAssociateWebsiteCertificateAuthority = "AssociateWebsiteCertificateAuthority"
207
208// AssociateWebsiteCertificateAuthorityRequest generates a "aws/request.Request" representing the
209// client's request for the AssociateWebsiteCertificateAuthority operation. The "output" return
210// value will be populated with the request's response once the request completes
211// successfully.
212//
213// Use "Send" method on the returned Request to send the API call to the service.
214// the "output" return value is not valid until after Send returns without error.
215//
216// See AssociateWebsiteCertificateAuthority for more information on using the AssociateWebsiteCertificateAuthority
217// API call, and error handling.
218//
219// This method is useful when you want to inject custom logic or configuration
220// into the SDK's request lifecycle. Such as custom headers, or retry logic.
221//
222//
223//    // Example sending a request using the AssociateWebsiteCertificateAuthorityRequest method.
224//    req, resp := client.AssociateWebsiteCertificateAuthorityRequest(params)
225//
226//    err := req.Send()
227//    if err == nil { // resp is now filled
228//        fmt.Println(resp)
229//    }
230//
231// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateWebsiteCertificateAuthority
232func (c *WorkLink) AssociateWebsiteCertificateAuthorityRequest(input *AssociateWebsiteCertificateAuthorityInput) (req *request.Request, output *AssociateWebsiteCertificateAuthorityOutput) {
233	op := &request.Operation{
234		Name:       opAssociateWebsiteCertificateAuthority,
235		HTTPMethod: "POST",
236		HTTPPath:   "/associateWebsiteCertificateAuthority",
237	}
238
239	if input == nil {
240		input = &AssociateWebsiteCertificateAuthorityInput{}
241	}
242
243	output = &AssociateWebsiteCertificateAuthorityOutput{}
244	req = c.newRequest(op, input, output)
245	return
246}
247
248// AssociateWebsiteCertificateAuthority API operation for Amazon WorkLink.
249//
250// Imports the root certificate of a certificate authority (CA) used to obtain
251// TLS certificates used by associated websites within the company network.
252//
253// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
254// with awserr.Error's Code and Message methods to get detailed information about
255// the error.
256//
257// See the AWS API reference guide for Amazon WorkLink's
258// API operation AssociateWebsiteCertificateAuthority for usage and error information.
259//
260// Returned Error Types:
261//   * UnauthorizedException
262//   You are not authorized to perform this action.
263//
264//   * InternalServerErrorException
265//   The service is temporarily unavailable.
266//
267//   * InvalidRequestException
268//   The request is not valid.
269//
270//   * ResourceNotFoundException
271//   The requested resource was not found.
272//
273//   * ResourceAlreadyExistsException
274//   The resource already exists.
275//
276//   * TooManyRequestsException
277//   The number of requests exceeds the limit.
278//
279// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/AssociateWebsiteCertificateAuthority
280func (c *WorkLink) AssociateWebsiteCertificateAuthority(input *AssociateWebsiteCertificateAuthorityInput) (*AssociateWebsiteCertificateAuthorityOutput, error) {
281	req, out := c.AssociateWebsiteCertificateAuthorityRequest(input)
282	return out, req.Send()
283}
284
285// AssociateWebsiteCertificateAuthorityWithContext is the same as AssociateWebsiteCertificateAuthority with the addition of
286// the ability to pass a context and additional request options.
287//
288// See AssociateWebsiteCertificateAuthority for details on how to use this API operation.
289//
290// The context must be non-nil and will be used for request cancellation. If
291// the context is nil a panic will occur. In the future the SDK may create
292// sub-contexts for http.Requests. See https://golang.org/pkg/context/
293// for more information on using Contexts.
294func (c *WorkLink) AssociateWebsiteCertificateAuthorityWithContext(ctx aws.Context, input *AssociateWebsiteCertificateAuthorityInput, opts ...request.Option) (*AssociateWebsiteCertificateAuthorityOutput, error) {
295	req, out := c.AssociateWebsiteCertificateAuthorityRequest(input)
296	req.SetContext(ctx)
297	req.ApplyOptions(opts...)
298	return out, req.Send()
299}
300
301const opCreateFleet = "CreateFleet"
302
303// CreateFleetRequest generates a "aws/request.Request" representing the
304// client's request for the CreateFleet operation. The "output" return
305// value will be populated with the request's response once the request completes
306// successfully.
307//
308// Use "Send" method on the returned Request to send the API call to the service.
309// the "output" return value is not valid until after Send returns without error.
310//
311// See CreateFleet for more information on using the CreateFleet
312// API call, and error handling.
313//
314// This method is useful when you want to inject custom logic or configuration
315// into the SDK's request lifecycle. Such as custom headers, or retry logic.
316//
317//
318//    // Example sending a request using the CreateFleetRequest method.
319//    req, resp := client.CreateFleetRequest(params)
320//
321//    err := req.Send()
322//    if err == nil { // resp is now filled
323//        fmt.Println(resp)
324//    }
325//
326// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/CreateFleet
327func (c *WorkLink) CreateFleetRequest(input *CreateFleetInput) (req *request.Request, output *CreateFleetOutput) {
328	op := &request.Operation{
329		Name:       opCreateFleet,
330		HTTPMethod: "POST",
331		HTTPPath:   "/createFleet",
332	}
333
334	if input == nil {
335		input = &CreateFleetInput{}
336	}
337
338	output = &CreateFleetOutput{}
339	req = c.newRequest(op, input, output)
340	return
341}
342
343// CreateFleet API operation for Amazon WorkLink.
344//
345// Creates a fleet. A fleet consists of resources and the configuration that
346// delivers associated websites to authorized users who download and set up
347// the Amazon WorkLink app.
348//
349// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
350// with awserr.Error's Code and Message methods to get detailed information about
351// the error.
352//
353// See the AWS API reference guide for Amazon WorkLink's
354// API operation CreateFleet for usage and error information.
355//
356// Returned Error Types:
357//   * UnauthorizedException
358//   You are not authorized to perform this action.
359//
360//   * InternalServerErrorException
361//   The service is temporarily unavailable.
362//
363//   * InvalidRequestException
364//   The request is not valid.
365//
366//   * ResourceNotFoundException
367//   The requested resource was not found.
368//
369//   * ResourceAlreadyExistsException
370//   The resource already exists.
371//
372//   * TooManyRequestsException
373//   The number of requests exceeds the limit.
374//
375// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/CreateFleet
376func (c *WorkLink) CreateFleet(input *CreateFleetInput) (*CreateFleetOutput, error) {
377	req, out := c.CreateFleetRequest(input)
378	return out, req.Send()
379}
380
381// CreateFleetWithContext is the same as CreateFleet with the addition of
382// the ability to pass a context and additional request options.
383//
384// See CreateFleet for details on how to use this API operation.
385//
386// The context must be non-nil and will be used for request cancellation. If
387// the context is nil a panic will occur. In the future the SDK may create
388// sub-contexts for http.Requests. See https://golang.org/pkg/context/
389// for more information on using Contexts.
390func (c *WorkLink) CreateFleetWithContext(ctx aws.Context, input *CreateFleetInput, opts ...request.Option) (*CreateFleetOutput, error) {
391	req, out := c.CreateFleetRequest(input)
392	req.SetContext(ctx)
393	req.ApplyOptions(opts...)
394	return out, req.Send()
395}
396
397const opDeleteFleet = "DeleteFleet"
398
399// DeleteFleetRequest generates a "aws/request.Request" representing the
400// client's request for the DeleteFleet operation. The "output" return
401// value will be populated with the request's response once the request completes
402// successfully.
403//
404// Use "Send" method on the returned Request to send the API call to the service.
405// the "output" return value is not valid until after Send returns without error.
406//
407// See DeleteFleet for more information on using the DeleteFleet
408// API call, and error handling.
409//
410// This method is useful when you want to inject custom logic or configuration
411// into the SDK's request lifecycle. Such as custom headers, or retry logic.
412//
413//
414//    // Example sending a request using the DeleteFleetRequest method.
415//    req, resp := client.DeleteFleetRequest(params)
416//
417//    err := req.Send()
418//    if err == nil { // resp is now filled
419//        fmt.Println(resp)
420//    }
421//
422// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DeleteFleet
423func (c *WorkLink) DeleteFleetRequest(input *DeleteFleetInput) (req *request.Request, output *DeleteFleetOutput) {
424	op := &request.Operation{
425		Name:       opDeleteFleet,
426		HTTPMethod: "POST",
427		HTTPPath:   "/deleteFleet",
428	}
429
430	if input == nil {
431		input = &DeleteFleetInput{}
432	}
433
434	output = &DeleteFleetOutput{}
435	req = c.newRequest(op, input, output)
436	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
437	return
438}
439
440// DeleteFleet API operation for Amazon WorkLink.
441//
442// Deletes a fleet. Prevents users from accessing previously associated websites.
443//
444// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
445// with awserr.Error's Code and Message methods to get detailed information about
446// the error.
447//
448// See the AWS API reference guide for Amazon WorkLink's
449// API operation DeleteFleet for usage and error information.
450//
451// Returned Error Types:
452//   * UnauthorizedException
453//   You are not authorized to perform this action.
454//
455//   * InternalServerErrorException
456//   The service is temporarily unavailable.
457//
458//   * InvalidRequestException
459//   The request is not valid.
460//
461//   * ResourceNotFoundException
462//   The requested resource was not found.
463//
464//   * TooManyRequestsException
465//   The number of requests exceeds the limit.
466//
467// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DeleteFleet
468func (c *WorkLink) DeleteFleet(input *DeleteFleetInput) (*DeleteFleetOutput, error) {
469	req, out := c.DeleteFleetRequest(input)
470	return out, req.Send()
471}
472
473// DeleteFleetWithContext is the same as DeleteFleet with the addition of
474// the ability to pass a context and additional request options.
475//
476// See DeleteFleet for details on how to use this API operation.
477//
478// The context must be non-nil and will be used for request cancellation. If
479// the context is nil a panic will occur. In the future the SDK may create
480// sub-contexts for http.Requests. See https://golang.org/pkg/context/
481// for more information on using Contexts.
482func (c *WorkLink) DeleteFleetWithContext(ctx aws.Context, input *DeleteFleetInput, opts ...request.Option) (*DeleteFleetOutput, error) {
483	req, out := c.DeleteFleetRequest(input)
484	req.SetContext(ctx)
485	req.ApplyOptions(opts...)
486	return out, req.Send()
487}
488
489const opDescribeAuditStreamConfiguration = "DescribeAuditStreamConfiguration"
490
491// DescribeAuditStreamConfigurationRequest generates a "aws/request.Request" representing the
492// client's request for the DescribeAuditStreamConfiguration operation. The "output" return
493// value will be populated with the request's response once the request completes
494// successfully.
495//
496// Use "Send" method on the returned Request to send the API call to the service.
497// the "output" return value is not valid until after Send returns without error.
498//
499// See DescribeAuditStreamConfiguration for more information on using the DescribeAuditStreamConfiguration
500// API call, and error handling.
501//
502// This method is useful when you want to inject custom logic or configuration
503// into the SDK's request lifecycle. Such as custom headers, or retry logic.
504//
505//
506//    // Example sending a request using the DescribeAuditStreamConfigurationRequest method.
507//    req, resp := client.DescribeAuditStreamConfigurationRequest(params)
508//
509//    err := req.Send()
510//    if err == nil { // resp is now filled
511//        fmt.Println(resp)
512//    }
513//
514// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeAuditStreamConfiguration
515func (c *WorkLink) DescribeAuditStreamConfigurationRequest(input *DescribeAuditStreamConfigurationInput) (req *request.Request, output *DescribeAuditStreamConfigurationOutput) {
516	op := &request.Operation{
517		Name:       opDescribeAuditStreamConfiguration,
518		HTTPMethod: "POST",
519		HTTPPath:   "/describeAuditStreamConfiguration",
520	}
521
522	if input == nil {
523		input = &DescribeAuditStreamConfigurationInput{}
524	}
525
526	output = &DescribeAuditStreamConfigurationOutput{}
527	req = c.newRequest(op, input, output)
528	return
529}
530
531// DescribeAuditStreamConfiguration API operation for Amazon WorkLink.
532//
533// Describes the configuration for delivering audit streams to the customer
534// account.
535//
536// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
537// with awserr.Error's Code and Message methods to get detailed information about
538// the error.
539//
540// See the AWS API reference guide for Amazon WorkLink's
541// API operation DescribeAuditStreamConfiguration for usage and error information.
542//
543// Returned Error Types:
544//   * UnauthorizedException
545//   You are not authorized to perform this action.
546//
547//   * InternalServerErrorException
548//   The service is temporarily unavailable.
549//
550//   * InvalidRequestException
551//   The request is not valid.
552//
553//   * ResourceNotFoundException
554//   The requested resource was not found.
555//
556//   * TooManyRequestsException
557//   The number of requests exceeds the limit.
558//
559// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeAuditStreamConfiguration
560func (c *WorkLink) DescribeAuditStreamConfiguration(input *DescribeAuditStreamConfigurationInput) (*DescribeAuditStreamConfigurationOutput, error) {
561	req, out := c.DescribeAuditStreamConfigurationRequest(input)
562	return out, req.Send()
563}
564
565// DescribeAuditStreamConfigurationWithContext is the same as DescribeAuditStreamConfiguration with the addition of
566// the ability to pass a context and additional request options.
567//
568// See DescribeAuditStreamConfiguration for details on how to use this API operation.
569//
570// The context must be non-nil and will be used for request cancellation. If
571// the context is nil a panic will occur. In the future the SDK may create
572// sub-contexts for http.Requests. See https://golang.org/pkg/context/
573// for more information on using Contexts.
574func (c *WorkLink) DescribeAuditStreamConfigurationWithContext(ctx aws.Context, input *DescribeAuditStreamConfigurationInput, opts ...request.Option) (*DescribeAuditStreamConfigurationOutput, error) {
575	req, out := c.DescribeAuditStreamConfigurationRequest(input)
576	req.SetContext(ctx)
577	req.ApplyOptions(opts...)
578	return out, req.Send()
579}
580
581const opDescribeCompanyNetworkConfiguration = "DescribeCompanyNetworkConfiguration"
582
583// DescribeCompanyNetworkConfigurationRequest generates a "aws/request.Request" representing the
584// client's request for the DescribeCompanyNetworkConfiguration operation. The "output" return
585// value will be populated with the request's response once the request completes
586// successfully.
587//
588// Use "Send" method on the returned Request to send the API call to the service.
589// the "output" return value is not valid until after Send returns without error.
590//
591// See DescribeCompanyNetworkConfiguration for more information on using the DescribeCompanyNetworkConfiguration
592// API call, and error handling.
593//
594// This method is useful when you want to inject custom logic or configuration
595// into the SDK's request lifecycle. Such as custom headers, or retry logic.
596//
597//
598//    // Example sending a request using the DescribeCompanyNetworkConfigurationRequest method.
599//    req, resp := client.DescribeCompanyNetworkConfigurationRequest(params)
600//
601//    err := req.Send()
602//    if err == nil { // resp is now filled
603//        fmt.Println(resp)
604//    }
605//
606// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeCompanyNetworkConfiguration
607func (c *WorkLink) DescribeCompanyNetworkConfigurationRequest(input *DescribeCompanyNetworkConfigurationInput) (req *request.Request, output *DescribeCompanyNetworkConfigurationOutput) {
608	op := &request.Operation{
609		Name:       opDescribeCompanyNetworkConfiguration,
610		HTTPMethod: "POST",
611		HTTPPath:   "/describeCompanyNetworkConfiguration",
612	}
613
614	if input == nil {
615		input = &DescribeCompanyNetworkConfigurationInput{}
616	}
617
618	output = &DescribeCompanyNetworkConfigurationOutput{}
619	req = c.newRequest(op, input, output)
620	return
621}
622
623// DescribeCompanyNetworkConfiguration API operation for Amazon WorkLink.
624//
625// Describes the networking configuration to access the internal websites associated
626// with the specified fleet.
627//
628// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
629// with awserr.Error's Code and Message methods to get detailed information about
630// the error.
631//
632// See the AWS API reference guide for Amazon WorkLink's
633// API operation DescribeCompanyNetworkConfiguration for usage and error information.
634//
635// Returned Error Types:
636//   * UnauthorizedException
637//   You are not authorized to perform this action.
638//
639//   * InternalServerErrorException
640//   The service is temporarily unavailable.
641//
642//   * InvalidRequestException
643//   The request is not valid.
644//
645//   * ResourceNotFoundException
646//   The requested resource was not found.
647//
648//   * TooManyRequestsException
649//   The number of requests exceeds the limit.
650//
651// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeCompanyNetworkConfiguration
652func (c *WorkLink) DescribeCompanyNetworkConfiguration(input *DescribeCompanyNetworkConfigurationInput) (*DescribeCompanyNetworkConfigurationOutput, error) {
653	req, out := c.DescribeCompanyNetworkConfigurationRequest(input)
654	return out, req.Send()
655}
656
657// DescribeCompanyNetworkConfigurationWithContext is the same as DescribeCompanyNetworkConfiguration with the addition of
658// the ability to pass a context and additional request options.
659//
660// See DescribeCompanyNetworkConfiguration for details on how to use this API operation.
661//
662// The context must be non-nil and will be used for request cancellation. If
663// the context is nil a panic will occur. In the future the SDK may create
664// sub-contexts for http.Requests. See https://golang.org/pkg/context/
665// for more information on using Contexts.
666func (c *WorkLink) DescribeCompanyNetworkConfigurationWithContext(ctx aws.Context, input *DescribeCompanyNetworkConfigurationInput, opts ...request.Option) (*DescribeCompanyNetworkConfigurationOutput, error) {
667	req, out := c.DescribeCompanyNetworkConfigurationRequest(input)
668	req.SetContext(ctx)
669	req.ApplyOptions(opts...)
670	return out, req.Send()
671}
672
673const opDescribeDevice = "DescribeDevice"
674
675// DescribeDeviceRequest generates a "aws/request.Request" representing the
676// client's request for the DescribeDevice operation. The "output" return
677// value will be populated with the request's response once the request completes
678// successfully.
679//
680// Use "Send" method on the returned Request to send the API call to the service.
681// the "output" return value is not valid until after Send returns without error.
682//
683// See DescribeDevice for more information on using the DescribeDevice
684// API call, and error handling.
685//
686// This method is useful when you want to inject custom logic or configuration
687// into the SDK's request lifecycle. Such as custom headers, or retry logic.
688//
689//
690//    // Example sending a request using the DescribeDeviceRequest method.
691//    req, resp := client.DescribeDeviceRequest(params)
692//
693//    err := req.Send()
694//    if err == nil { // resp is now filled
695//        fmt.Println(resp)
696//    }
697//
698// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDevice
699func (c *WorkLink) DescribeDeviceRequest(input *DescribeDeviceInput) (req *request.Request, output *DescribeDeviceOutput) {
700	op := &request.Operation{
701		Name:       opDescribeDevice,
702		HTTPMethod: "POST",
703		HTTPPath:   "/describeDevice",
704	}
705
706	if input == nil {
707		input = &DescribeDeviceInput{}
708	}
709
710	output = &DescribeDeviceOutput{}
711	req = c.newRequest(op, input, output)
712	return
713}
714
715// DescribeDevice API operation for Amazon WorkLink.
716//
717// Provides information about a user's device.
718//
719// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
720// with awserr.Error's Code and Message methods to get detailed information about
721// the error.
722//
723// See the AWS API reference guide for Amazon WorkLink's
724// API operation DescribeDevice for usage and error information.
725//
726// Returned Error Types:
727//   * UnauthorizedException
728//   You are not authorized to perform this action.
729//
730//   * InternalServerErrorException
731//   The service is temporarily unavailable.
732//
733//   * InvalidRequestException
734//   The request is not valid.
735//
736//   * ResourceNotFoundException
737//   The requested resource was not found.
738//
739//   * TooManyRequestsException
740//   The number of requests exceeds the limit.
741//
742// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDevice
743func (c *WorkLink) DescribeDevice(input *DescribeDeviceInput) (*DescribeDeviceOutput, error) {
744	req, out := c.DescribeDeviceRequest(input)
745	return out, req.Send()
746}
747
748// DescribeDeviceWithContext is the same as DescribeDevice with the addition of
749// the ability to pass a context and additional request options.
750//
751// See DescribeDevice for details on how to use this API operation.
752//
753// The context must be non-nil and will be used for request cancellation. If
754// the context is nil a panic will occur. In the future the SDK may create
755// sub-contexts for http.Requests. See https://golang.org/pkg/context/
756// for more information on using Contexts.
757func (c *WorkLink) DescribeDeviceWithContext(ctx aws.Context, input *DescribeDeviceInput, opts ...request.Option) (*DescribeDeviceOutput, error) {
758	req, out := c.DescribeDeviceRequest(input)
759	req.SetContext(ctx)
760	req.ApplyOptions(opts...)
761	return out, req.Send()
762}
763
764const opDescribeDevicePolicyConfiguration = "DescribeDevicePolicyConfiguration"
765
766// DescribeDevicePolicyConfigurationRequest generates a "aws/request.Request" representing the
767// client's request for the DescribeDevicePolicyConfiguration operation. The "output" return
768// value will be populated with the request's response once the request completes
769// successfully.
770//
771// Use "Send" method on the returned Request to send the API call to the service.
772// the "output" return value is not valid until after Send returns without error.
773//
774// See DescribeDevicePolicyConfiguration for more information on using the DescribeDevicePolicyConfiguration
775// API call, and error handling.
776//
777// This method is useful when you want to inject custom logic or configuration
778// into the SDK's request lifecycle. Such as custom headers, or retry logic.
779//
780//
781//    // Example sending a request using the DescribeDevicePolicyConfigurationRequest method.
782//    req, resp := client.DescribeDevicePolicyConfigurationRequest(params)
783//
784//    err := req.Send()
785//    if err == nil { // resp is now filled
786//        fmt.Println(resp)
787//    }
788//
789// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDevicePolicyConfiguration
790func (c *WorkLink) DescribeDevicePolicyConfigurationRequest(input *DescribeDevicePolicyConfigurationInput) (req *request.Request, output *DescribeDevicePolicyConfigurationOutput) {
791	op := &request.Operation{
792		Name:       opDescribeDevicePolicyConfiguration,
793		HTTPMethod: "POST",
794		HTTPPath:   "/describeDevicePolicyConfiguration",
795	}
796
797	if input == nil {
798		input = &DescribeDevicePolicyConfigurationInput{}
799	}
800
801	output = &DescribeDevicePolicyConfigurationOutput{}
802	req = c.newRequest(op, input, output)
803	return
804}
805
806// DescribeDevicePolicyConfiguration API operation for Amazon WorkLink.
807//
808// Describes the device policy configuration for the specified fleet.
809//
810// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
811// with awserr.Error's Code and Message methods to get detailed information about
812// the error.
813//
814// See the AWS API reference guide for Amazon WorkLink's
815// API operation DescribeDevicePolicyConfiguration for usage and error information.
816//
817// Returned Error Types:
818//   * UnauthorizedException
819//   You are not authorized to perform this action.
820//
821//   * InternalServerErrorException
822//   The service is temporarily unavailable.
823//
824//   * InvalidRequestException
825//   The request is not valid.
826//
827//   * ResourceNotFoundException
828//   The requested resource was not found.
829//
830//   * TooManyRequestsException
831//   The number of requests exceeds the limit.
832//
833// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDevicePolicyConfiguration
834func (c *WorkLink) DescribeDevicePolicyConfiguration(input *DescribeDevicePolicyConfigurationInput) (*DescribeDevicePolicyConfigurationOutput, error) {
835	req, out := c.DescribeDevicePolicyConfigurationRequest(input)
836	return out, req.Send()
837}
838
839// DescribeDevicePolicyConfigurationWithContext is the same as DescribeDevicePolicyConfiguration with the addition of
840// the ability to pass a context and additional request options.
841//
842// See DescribeDevicePolicyConfiguration for details on how to use this API operation.
843//
844// The context must be non-nil and will be used for request cancellation. If
845// the context is nil a panic will occur. In the future the SDK may create
846// sub-contexts for http.Requests. See https://golang.org/pkg/context/
847// for more information on using Contexts.
848func (c *WorkLink) DescribeDevicePolicyConfigurationWithContext(ctx aws.Context, input *DescribeDevicePolicyConfigurationInput, opts ...request.Option) (*DescribeDevicePolicyConfigurationOutput, error) {
849	req, out := c.DescribeDevicePolicyConfigurationRequest(input)
850	req.SetContext(ctx)
851	req.ApplyOptions(opts...)
852	return out, req.Send()
853}
854
855const opDescribeDomain = "DescribeDomain"
856
857// DescribeDomainRequest generates a "aws/request.Request" representing the
858// client's request for the DescribeDomain operation. The "output" return
859// value will be populated with the request's response once the request completes
860// successfully.
861//
862// Use "Send" method on the returned Request to send the API call to the service.
863// the "output" return value is not valid until after Send returns without error.
864//
865// See DescribeDomain for more information on using the DescribeDomain
866// API call, and error handling.
867//
868// This method is useful when you want to inject custom logic or configuration
869// into the SDK's request lifecycle. Such as custom headers, or retry logic.
870//
871//
872//    // Example sending a request using the DescribeDomainRequest method.
873//    req, resp := client.DescribeDomainRequest(params)
874//
875//    err := req.Send()
876//    if err == nil { // resp is now filled
877//        fmt.Println(resp)
878//    }
879//
880// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDomain
881func (c *WorkLink) DescribeDomainRequest(input *DescribeDomainInput) (req *request.Request, output *DescribeDomainOutput) {
882	op := &request.Operation{
883		Name:       opDescribeDomain,
884		HTTPMethod: "POST",
885		HTTPPath:   "/describeDomain",
886	}
887
888	if input == nil {
889		input = &DescribeDomainInput{}
890	}
891
892	output = &DescribeDomainOutput{}
893	req = c.newRequest(op, input, output)
894	return
895}
896
897// DescribeDomain API operation for Amazon WorkLink.
898//
899// Provides information about the domain.
900//
901// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
902// with awserr.Error's Code and Message methods to get detailed information about
903// the error.
904//
905// See the AWS API reference guide for Amazon WorkLink's
906// API operation DescribeDomain for usage and error information.
907//
908// Returned Error Types:
909//   * UnauthorizedException
910//   You are not authorized to perform this action.
911//
912//   * InternalServerErrorException
913//   The service is temporarily unavailable.
914//
915//   * InvalidRequestException
916//   The request is not valid.
917//
918//   * ResourceNotFoundException
919//   The requested resource was not found.
920//
921//   * TooManyRequestsException
922//   The number of requests exceeds the limit.
923//
924// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeDomain
925func (c *WorkLink) DescribeDomain(input *DescribeDomainInput) (*DescribeDomainOutput, error) {
926	req, out := c.DescribeDomainRequest(input)
927	return out, req.Send()
928}
929
930// DescribeDomainWithContext is the same as DescribeDomain with the addition of
931// the ability to pass a context and additional request options.
932//
933// See DescribeDomain for details on how to use this API operation.
934//
935// The context must be non-nil and will be used for request cancellation. If
936// the context is nil a panic will occur. In the future the SDK may create
937// sub-contexts for http.Requests. See https://golang.org/pkg/context/
938// for more information on using Contexts.
939func (c *WorkLink) DescribeDomainWithContext(ctx aws.Context, input *DescribeDomainInput, opts ...request.Option) (*DescribeDomainOutput, error) {
940	req, out := c.DescribeDomainRequest(input)
941	req.SetContext(ctx)
942	req.ApplyOptions(opts...)
943	return out, req.Send()
944}
945
946const opDescribeFleetMetadata = "DescribeFleetMetadata"
947
948// DescribeFleetMetadataRequest generates a "aws/request.Request" representing the
949// client's request for the DescribeFleetMetadata operation. The "output" return
950// value will be populated with the request's response once the request completes
951// successfully.
952//
953// Use "Send" method on the returned Request to send the API call to the service.
954// the "output" return value is not valid until after Send returns without error.
955//
956// See DescribeFleetMetadata for more information on using the DescribeFleetMetadata
957// API call, and error handling.
958//
959// This method is useful when you want to inject custom logic or configuration
960// into the SDK's request lifecycle. Such as custom headers, or retry logic.
961//
962//
963//    // Example sending a request using the DescribeFleetMetadataRequest method.
964//    req, resp := client.DescribeFleetMetadataRequest(params)
965//
966//    err := req.Send()
967//    if err == nil { // resp is now filled
968//        fmt.Println(resp)
969//    }
970//
971// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeFleetMetadata
972func (c *WorkLink) DescribeFleetMetadataRequest(input *DescribeFleetMetadataInput) (req *request.Request, output *DescribeFleetMetadataOutput) {
973	op := &request.Operation{
974		Name:       opDescribeFleetMetadata,
975		HTTPMethod: "POST",
976		HTTPPath:   "/describeFleetMetadata",
977	}
978
979	if input == nil {
980		input = &DescribeFleetMetadataInput{}
981	}
982
983	output = &DescribeFleetMetadataOutput{}
984	req = c.newRequest(op, input, output)
985	return
986}
987
988// DescribeFleetMetadata API operation for Amazon WorkLink.
989//
990// Provides basic information for the specified fleet, excluding identity provider,
991// networking, and device configuration details.
992//
993// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
994// with awserr.Error's Code and Message methods to get detailed information about
995// the error.
996//
997// See the AWS API reference guide for Amazon WorkLink's
998// API operation DescribeFleetMetadata for usage and error information.
999//
1000// Returned Error Types:
1001//   * UnauthorizedException
1002//   You are not authorized to perform this action.
1003//
1004//   * InternalServerErrorException
1005//   The service is temporarily unavailable.
1006//
1007//   * InvalidRequestException
1008//   The request is not valid.
1009//
1010//   * ResourceNotFoundException
1011//   The requested resource was not found.
1012//
1013//   * TooManyRequestsException
1014//   The number of requests exceeds the limit.
1015//
1016// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeFleetMetadata
1017func (c *WorkLink) DescribeFleetMetadata(input *DescribeFleetMetadataInput) (*DescribeFleetMetadataOutput, error) {
1018	req, out := c.DescribeFleetMetadataRequest(input)
1019	return out, req.Send()
1020}
1021
1022// DescribeFleetMetadataWithContext is the same as DescribeFleetMetadata with the addition of
1023// the ability to pass a context and additional request options.
1024//
1025// See DescribeFleetMetadata for details on how to use this API operation.
1026//
1027// The context must be non-nil and will be used for request cancellation. If
1028// the context is nil a panic will occur. In the future the SDK may create
1029// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1030// for more information on using Contexts.
1031func (c *WorkLink) DescribeFleetMetadataWithContext(ctx aws.Context, input *DescribeFleetMetadataInput, opts ...request.Option) (*DescribeFleetMetadataOutput, error) {
1032	req, out := c.DescribeFleetMetadataRequest(input)
1033	req.SetContext(ctx)
1034	req.ApplyOptions(opts...)
1035	return out, req.Send()
1036}
1037
1038const opDescribeIdentityProviderConfiguration = "DescribeIdentityProviderConfiguration"
1039
1040// DescribeIdentityProviderConfigurationRequest generates a "aws/request.Request" representing the
1041// client's request for the DescribeIdentityProviderConfiguration operation. The "output" return
1042// value will be populated with the request's response once the request completes
1043// successfully.
1044//
1045// Use "Send" method on the returned Request to send the API call to the service.
1046// the "output" return value is not valid until after Send returns without error.
1047//
1048// See DescribeIdentityProviderConfiguration for more information on using the DescribeIdentityProviderConfiguration
1049// API call, and error handling.
1050//
1051// This method is useful when you want to inject custom logic or configuration
1052// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1053//
1054//
1055//    // Example sending a request using the DescribeIdentityProviderConfigurationRequest method.
1056//    req, resp := client.DescribeIdentityProviderConfigurationRequest(params)
1057//
1058//    err := req.Send()
1059//    if err == nil { // resp is now filled
1060//        fmt.Println(resp)
1061//    }
1062//
1063// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeIdentityProviderConfiguration
1064func (c *WorkLink) DescribeIdentityProviderConfigurationRequest(input *DescribeIdentityProviderConfigurationInput) (req *request.Request, output *DescribeIdentityProviderConfigurationOutput) {
1065	op := &request.Operation{
1066		Name:       opDescribeIdentityProviderConfiguration,
1067		HTTPMethod: "POST",
1068		HTTPPath:   "/describeIdentityProviderConfiguration",
1069	}
1070
1071	if input == nil {
1072		input = &DescribeIdentityProviderConfigurationInput{}
1073	}
1074
1075	output = &DescribeIdentityProviderConfigurationOutput{}
1076	req = c.newRequest(op, input, output)
1077	return
1078}
1079
1080// DescribeIdentityProviderConfiguration API operation for Amazon WorkLink.
1081//
1082// Describes the identity provider configuration of the specified fleet.
1083//
1084// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1085// with awserr.Error's Code and Message methods to get detailed information about
1086// the error.
1087//
1088// See the AWS API reference guide for Amazon WorkLink's
1089// API operation DescribeIdentityProviderConfiguration for usage and error information.
1090//
1091// Returned Error Types:
1092//   * UnauthorizedException
1093//   You are not authorized to perform this action.
1094//
1095//   * InternalServerErrorException
1096//   The service is temporarily unavailable.
1097//
1098//   * InvalidRequestException
1099//   The request is not valid.
1100//
1101//   * ResourceNotFoundException
1102//   The requested resource was not found.
1103//
1104//   * TooManyRequestsException
1105//   The number of requests exceeds the limit.
1106//
1107// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeIdentityProviderConfiguration
1108func (c *WorkLink) DescribeIdentityProviderConfiguration(input *DescribeIdentityProviderConfigurationInput) (*DescribeIdentityProviderConfigurationOutput, error) {
1109	req, out := c.DescribeIdentityProviderConfigurationRequest(input)
1110	return out, req.Send()
1111}
1112
1113// DescribeIdentityProviderConfigurationWithContext is the same as DescribeIdentityProviderConfiguration with the addition of
1114// the ability to pass a context and additional request options.
1115//
1116// See DescribeIdentityProviderConfiguration for details on how to use this API operation.
1117//
1118// The context must be non-nil and will be used for request cancellation. If
1119// the context is nil a panic will occur. In the future the SDK may create
1120// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1121// for more information on using Contexts.
1122func (c *WorkLink) DescribeIdentityProviderConfigurationWithContext(ctx aws.Context, input *DescribeIdentityProviderConfigurationInput, opts ...request.Option) (*DescribeIdentityProviderConfigurationOutput, error) {
1123	req, out := c.DescribeIdentityProviderConfigurationRequest(input)
1124	req.SetContext(ctx)
1125	req.ApplyOptions(opts...)
1126	return out, req.Send()
1127}
1128
1129const opDescribeWebsiteCertificateAuthority = "DescribeWebsiteCertificateAuthority"
1130
1131// DescribeWebsiteCertificateAuthorityRequest generates a "aws/request.Request" representing the
1132// client's request for the DescribeWebsiteCertificateAuthority operation. The "output" return
1133// value will be populated with the request's response once the request completes
1134// successfully.
1135//
1136// Use "Send" method on the returned Request to send the API call to the service.
1137// the "output" return value is not valid until after Send returns without error.
1138//
1139// See DescribeWebsiteCertificateAuthority for more information on using the DescribeWebsiteCertificateAuthority
1140// API call, and error handling.
1141//
1142// This method is useful when you want to inject custom logic or configuration
1143// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1144//
1145//
1146//    // Example sending a request using the DescribeWebsiteCertificateAuthorityRequest method.
1147//    req, resp := client.DescribeWebsiteCertificateAuthorityRequest(params)
1148//
1149//    err := req.Send()
1150//    if err == nil { // resp is now filled
1151//        fmt.Println(resp)
1152//    }
1153//
1154// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeWebsiteCertificateAuthority
1155func (c *WorkLink) DescribeWebsiteCertificateAuthorityRequest(input *DescribeWebsiteCertificateAuthorityInput) (req *request.Request, output *DescribeWebsiteCertificateAuthorityOutput) {
1156	op := &request.Operation{
1157		Name:       opDescribeWebsiteCertificateAuthority,
1158		HTTPMethod: "POST",
1159		HTTPPath:   "/describeWebsiteCertificateAuthority",
1160	}
1161
1162	if input == nil {
1163		input = &DescribeWebsiteCertificateAuthorityInput{}
1164	}
1165
1166	output = &DescribeWebsiteCertificateAuthorityOutput{}
1167	req = c.newRequest(op, input, output)
1168	return
1169}
1170
1171// DescribeWebsiteCertificateAuthority API operation for Amazon WorkLink.
1172//
1173// Provides information about the certificate authority.
1174//
1175// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1176// with awserr.Error's Code and Message methods to get detailed information about
1177// the error.
1178//
1179// See the AWS API reference guide for Amazon WorkLink's
1180// API operation DescribeWebsiteCertificateAuthority for usage and error information.
1181//
1182// Returned Error Types:
1183//   * UnauthorizedException
1184//   You are not authorized to perform this action.
1185//
1186//   * InternalServerErrorException
1187//   The service is temporarily unavailable.
1188//
1189//   * InvalidRequestException
1190//   The request is not valid.
1191//
1192//   * ResourceNotFoundException
1193//   The requested resource was not found.
1194//
1195//   * TooManyRequestsException
1196//   The number of requests exceeds the limit.
1197//
1198// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DescribeWebsiteCertificateAuthority
1199func (c *WorkLink) DescribeWebsiteCertificateAuthority(input *DescribeWebsiteCertificateAuthorityInput) (*DescribeWebsiteCertificateAuthorityOutput, error) {
1200	req, out := c.DescribeWebsiteCertificateAuthorityRequest(input)
1201	return out, req.Send()
1202}
1203
1204// DescribeWebsiteCertificateAuthorityWithContext is the same as DescribeWebsiteCertificateAuthority with the addition of
1205// the ability to pass a context and additional request options.
1206//
1207// See DescribeWebsiteCertificateAuthority for details on how to use this API operation.
1208//
1209// The context must be non-nil and will be used for request cancellation. If
1210// the context is nil a panic will occur. In the future the SDK may create
1211// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1212// for more information on using Contexts.
1213func (c *WorkLink) DescribeWebsiteCertificateAuthorityWithContext(ctx aws.Context, input *DescribeWebsiteCertificateAuthorityInput, opts ...request.Option) (*DescribeWebsiteCertificateAuthorityOutput, error) {
1214	req, out := c.DescribeWebsiteCertificateAuthorityRequest(input)
1215	req.SetContext(ctx)
1216	req.ApplyOptions(opts...)
1217	return out, req.Send()
1218}
1219
1220const opDisassociateDomain = "DisassociateDomain"
1221
1222// DisassociateDomainRequest generates a "aws/request.Request" representing the
1223// client's request for the DisassociateDomain operation. The "output" return
1224// value will be populated with the request's response once the request completes
1225// successfully.
1226//
1227// Use "Send" method on the returned Request to send the API call to the service.
1228// the "output" return value is not valid until after Send returns without error.
1229//
1230// See DisassociateDomain for more information on using the DisassociateDomain
1231// API call, and error handling.
1232//
1233// This method is useful when you want to inject custom logic or configuration
1234// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1235//
1236//
1237//    // Example sending a request using the DisassociateDomainRequest method.
1238//    req, resp := client.DisassociateDomainRequest(params)
1239//
1240//    err := req.Send()
1241//    if err == nil { // resp is now filled
1242//        fmt.Println(resp)
1243//    }
1244//
1245// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateDomain
1246func (c *WorkLink) DisassociateDomainRequest(input *DisassociateDomainInput) (req *request.Request, output *DisassociateDomainOutput) {
1247	op := &request.Operation{
1248		Name:       opDisassociateDomain,
1249		HTTPMethod: "POST",
1250		HTTPPath:   "/disassociateDomain",
1251	}
1252
1253	if input == nil {
1254		input = &DisassociateDomainInput{}
1255	}
1256
1257	output = &DisassociateDomainOutput{}
1258	req = c.newRequest(op, input, output)
1259	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1260	return
1261}
1262
1263// DisassociateDomain API operation for Amazon WorkLink.
1264//
1265// Disassociates a domain from Amazon WorkLink. End users lose the ability to
1266// access the domain with Amazon WorkLink.
1267//
1268// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1269// with awserr.Error's Code and Message methods to get detailed information about
1270// the error.
1271//
1272// See the AWS API reference guide for Amazon WorkLink's
1273// API operation DisassociateDomain for usage and error information.
1274//
1275// Returned Error Types:
1276//   * UnauthorizedException
1277//   You are not authorized to perform this action.
1278//
1279//   * InternalServerErrorException
1280//   The service is temporarily unavailable.
1281//
1282//   * InvalidRequestException
1283//   The request is not valid.
1284//
1285//   * ResourceNotFoundException
1286//   The requested resource was not found.
1287//
1288//   * TooManyRequestsException
1289//   The number of requests exceeds the limit.
1290//
1291// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateDomain
1292func (c *WorkLink) DisassociateDomain(input *DisassociateDomainInput) (*DisassociateDomainOutput, error) {
1293	req, out := c.DisassociateDomainRequest(input)
1294	return out, req.Send()
1295}
1296
1297// DisassociateDomainWithContext is the same as DisassociateDomain with the addition of
1298// the ability to pass a context and additional request options.
1299//
1300// See DisassociateDomain for details on how to use this API operation.
1301//
1302// The context must be non-nil and will be used for request cancellation. If
1303// the context is nil a panic will occur. In the future the SDK may create
1304// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1305// for more information on using Contexts.
1306func (c *WorkLink) DisassociateDomainWithContext(ctx aws.Context, input *DisassociateDomainInput, opts ...request.Option) (*DisassociateDomainOutput, error) {
1307	req, out := c.DisassociateDomainRequest(input)
1308	req.SetContext(ctx)
1309	req.ApplyOptions(opts...)
1310	return out, req.Send()
1311}
1312
1313const opDisassociateWebsiteAuthorizationProvider = "DisassociateWebsiteAuthorizationProvider"
1314
1315// DisassociateWebsiteAuthorizationProviderRequest generates a "aws/request.Request" representing the
1316// client's request for the DisassociateWebsiteAuthorizationProvider operation. The "output" return
1317// value will be populated with the request's response once the request completes
1318// successfully.
1319//
1320// Use "Send" method on the returned Request to send the API call to the service.
1321// the "output" return value is not valid until after Send returns without error.
1322//
1323// See DisassociateWebsiteAuthorizationProvider for more information on using the DisassociateWebsiteAuthorizationProvider
1324// API call, and error handling.
1325//
1326// This method is useful when you want to inject custom logic or configuration
1327// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1328//
1329//
1330//    // Example sending a request using the DisassociateWebsiteAuthorizationProviderRequest method.
1331//    req, resp := client.DisassociateWebsiteAuthorizationProviderRequest(params)
1332//
1333//    err := req.Send()
1334//    if err == nil { // resp is now filled
1335//        fmt.Println(resp)
1336//    }
1337//
1338// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateWebsiteAuthorizationProvider
1339func (c *WorkLink) DisassociateWebsiteAuthorizationProviderRequest(input *DisassociateWebsiteAuthorizationProviderInput) (req *request.Request, output *DisassociateWebsiteAuthorizationProviderOutput) {
1340	op := &request.Operation{
1341		Name:       opDisassociateWebsiteAuthorizationProvider,
1342		HTTPMethod: "POST",
1343		HTTPPath:   "/disassociateWebsiteAuthorizationProvider",
1344	}
1345
1346	if input == nil {
1347		input = &DisassociateWebsiteAuthorizationProviderInput{}
1348	}
1349
1350	output = &DisassociateWebsiteAuthorizationProviderOutput{}
1351	req = c.newRequest(op, input, output)
1352	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1353	return
1354}
1355
1356// DisassociateWebsiteAuthorizationProvider API operation for Amazon WorkLink.
1357//
1358// Disassociates a website authorization provider from a specified fleet. After
1359// the disassociation, users can't load any associated websites that require
1360// this authorization provider.
1361//
1362// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1363// with awserr.Error's Code and Message methods to get detailed information about
1364// the error.
1365//
1366// See the AWS API reference guide for Amazon WorkLink's
1367// API operation DisassociateWebsiteAuthorizationProvider for usage and error information.
1368//
1369// Returned Error Types:
1370//   * UnauthorizedException
1371//   You are not authorized to perform this action.
1372//
1373//   * InternalServerErrorException
1374//   The service is temporarily unavailable.
1375//
1376//   * InvalidRequestException
1377//   The request is not valid.
1378//
1379//   * ResourceNotFoundException
1380//   The requested resource was not found.
1381//
1382//   * ResourceAlreadyExistsException
1383//   The resource already exists.
1384//
1385//   * TooManyRequestsException
1386//   The number of requests exceeds the limit.
1387//
1388// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateWebsiteAuthorizationProvider
1389func (c *WorkLink) DisassociateWebsiteAuthorizationProvider(input *DisassociateWebsiteAuthorizationProviderInput) (*DisassociateWebsiteAuthorizationProviderOutput, error) {
1390	req, out := c.DisassociateWebsiteAuthorizationProviderRequest(input)
1391	return out, req.Send()
1392}
1393
1394// DisassociateWebsiteAuthorizationProviderWithContext is the same as DisassociateWebsiteAuthorizationProvider with the addition of
1395// the ability to pass a context and additional request options.
1396//
1397// See DisassociateWebsiteAuthorizationProvider for details on how to use this API operation.
1398//
1399// The context must be non-nil and will be used for request cancellation. If
1400// the context is nil a panic will occur. In the future the SDK may create
1401// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1402// for more information on using Contexts.
1403func (c *WorkLink) DisassociateWebsiteAuthorizationProviderWithContext(ctx aws.Context, input *DisassociateWebsiteAuthorizationProviderInput, opts ...request.Option) (*DisassociateWebsiteAuthorizationProviderOutput, error) {
1404	req, out := c.DisassociateWebsiteAuthorizationProviderRequest(input)
1405	req.SetContext(ctx)
1406	req.ApplyOptions(opts...)
1407	return out, req.Send()
1408}
1409
1410const opDisassociateWebsiteCertificateAuthority = "DisassociateWebsiteCertificateAuthority"
1411
1412// DisassociateWebsiteCertificateAuthorityRequest generates a "aws/request.Request" representing the
1413// client's request for the DisassociateWebsiteCertificateAuthority operation. The "output" return
1414// value will be populated with the request's response once the request completes
1415// successfully.
1416//
1417// Use "Send" method on the returned Request to send the API call to the service.
1418// the "output" return value is not valid until after Send returns without error.
1419//
1420// See DisassociateWebsiteCertificateAuthority for more information on using the DisassociateWebsiteCertificateAuthority
1421// API call, and error handling.
1422//
1423// This method is useful when you want to inject custom logic or configuration
1424// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1425//
1426//
1427//    // Example sending a request using the DisassociateWebsiteCertificateAuthorityRequest method.
1428//    req, resp := client.DisassociateWebsiteCertificateAuthorityRequest(params)
1429//
1430//    err := req.Send()
1431//    if err == nil { // resp is now filled
1432//        fmt.Println(resp)
1433//    }
1434//
1435// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateWebsiteCertificateAuthority
1436func (c *WorkLink) DisassociateWebsiteCertificateAuthorityRequest(input *DisassociateWebsiteCertificateAuthorityInput) (req *request.Request, output *DisassociateWebsiteCertificateAuthorityOutput) {
1437	op := &request.Operation{
1438		Name:       opDisassociateWebsiteCertificateAuthority,
1439		HTTPMethod: "POST",
1440		HTTPPath:   "/disassociateWebsiteCertificateAuthority",
1441	}
1442
1443	if input == nil {
1444		input = &DisassociateWebsiteCertificateAuthorityInput{}
1445	}
1446
1447	output = &DisassociateWebsiteCertificateAuthorityOutput{}
1448	req = c.newRequest(op, input, output)
1449	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1450	return
1451}
1452
1453// DisassociateWebsiteCertificateAuthority API operation for Amazon WorkLink.
1454//
1455// Removes a certificate authority (CA).
1456//
1457// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1458// with awserr.Error's Code and Message methods to get detailed information about
1459// the error.
1460//
1461// See the AWS API reference guide for Amazon WorkLink's
1462// API operation DisassociateWebsiteCertificateAuthority for usage and error information.
1463//
1464// Returned Error Types:
1465//   * UnauthorizedException
1466//   You are not authorized to perform this action.
1467//
1468//   * InternalServerErrorException
1469//   The service is temporarily unavailable.
1470//
1471//   * InvalidRequestException
1472//   The request is not valid.
1473//
1474//   * ResourceNotFoundException
1475//   The requested resource was not found.
1476//
1477//   * TooManyRequestsException
1478//   The number of requests exceeds the limit.
1479//
1480// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/DisassociateWebsiteCertificateAuthority
1481func (c *WorkLink) DisassociateWebsiteCertificateAuthority(input *DisassociateWebsiteCertificateAuthorityInput) (*DisassociateWebsiteCertificateAuthorityOutput, error) {
1482	req, out := c.DisassociateWebsiteCertificateAuthorityRequest(input)
1483	return out, req.Send()
1484}
1485
1486// DisassociateWebsiteCertificateAuthorityWithContext is the same as DisassociateWebsiteCertificateAuthority with the addition of
1487// the ability to pass a context and additional request options.
1488//
1489// See DisassociateWebsiteCertificateAuthority for details on how to use this API operation.
1490//
1491// The context must be non-nil and will be used for request cancellation. If
1492// the context is nil a panic will occur. In the future the SDK may create
1493// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1494// for more information on using Contexts.
1495func (c *WorkLink) DisassociateWebsiteCertificateAuthorityWithContext(ctx aws.Context, input *DisassociateWebsiteCertificateAuthorityInput, opts ...request.Option) (*DisassociateWebsiteCertificateAuthorityOutput, error) {
1496	req, out := c.DisassociateWebsiteCertificateAuthorityRequest(input)
1497	req.SetContext(ctx)
1498	req.ApplyOptions(opts...)
1499	return out, req.Send()
1500}
1501
1502const opListDevices = "ListDevices"
1503
1504// ListDevicesRequest generates a "aws/request.Request" representing the
1505// client's request for the ListDevices operation. The "output" return
1506// value will be populated with the request's response once the request completes
1507// successfully.
1508//
1509// Use "Send" method on the returned Request to send the API call to the service.
1510// the "output" return value is not valid until after Send returns without error.
1511//
1512// See ListDevices for more information on using the ListDevices
1513// API call, and error handling.
1514//
1515// This method is useful when you want to inject custom logic or configuration
1516// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1517//
1518//
1519//    // Example sending a request using the ListDevicesRequest method.
1520//    req, resp := client.ListDevicesRequest(params)
1521//
1522//    err := req.Send()
1523//    if err == nil { // resp is now filled
1524//        fmt.Println(resp)
1525//    }
1526//
1527// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListDevices
1528func (c *WorkLink) ListDevicesRequest(input *ListDevicesInput) (req *request.Request, output *ListDevicesOutput) {
1529	op := &request.Operation{
1530		Name:       opListDevices,
1531		HTTPMethod: "POST",
1532		HTTPPath:   "/listDevices",
1533		Paginator: &request.Paginator{
1534			InputTokens:     []string{"NextToken"},
1535			OutputTokens:    []string{"NextToken"},
1536			LimitToken:      "MaxResults",
1537			TruncationToken: "",
1538		},
1539	}
1540
1541	if input == nil {
1542		input = &ListDevicesInput{}
1543	}
1544
1545	output = &ListDevicesOutput{}
1546	req = c.newRequest(op, input, output)
1547	return
1548}
1549
1550// ListDevices API operation for Amazon WorkLink.
1551//
1552// Retrieves a list of devices registered with the specified fleet.
1553//
1554// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1555// with awserr.Error's Code and Message methods to get detailed information about
1556// the error.
1557//
1558// See the AWS API reference guide for Amazon WorkLink's
1559// API operation ListDevices for usage and error information.
1560//
1561// Returned Error Types:
1562//   * UnauthorizedException
1563//   You are not authorized to perform this action.
1564//
1565//   * InternalServerErrorException
1566//   The service is temporarily unavailable.
1567//
1568//   * InvalidRequestException
1569//   The request is not valid.
1570//
1571//   * ResourceNotFoundException
1572//   The requested resource was not found.
1573//
1574//   * TooManyRequestsException
1575//   The number of requests exceeds the limit.
1576//
1577// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListDevices
1578func (c *WorkLink) ListDevices(input *ListDevicesInput) (*ListDevicesOutput, error) {
1579	req, out := c.ListDevicesRequest(input)
1580	return out, req.Send()
1581}
1582
1583// ListDevicesWithContext is the same as ListDevices with the addition of
1584// the ability to pass a context and additional request options.
1585//
1586// See ListDevices for details on how to use this API operation.
1587//
1588// The context must be non-nil and will be used for request cancellation. If
1589// the context is nil a panic will occur. In the future the SDK may create
1590// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1591// for more information on using Contexts.
1592func (c *WorkLink) ListDevicesWithContext(ctx aws.Context, input *ListDevicesInput, opts ...request.Option) (*ListDevicesOutput, error) {
1593	req, out := c.ListDevicesRequest(input)
1594	req.SetContext(ctx)
1595	req.ApplyOptions(opts...)
1596	return out, req.Send()
1597}
1598
1599// ListDevicesPages iterates over the pages of a ListDevices operation,
1600// calling the "fn" function with the response data for each page. To stop
1601// iterating, return false from the fn function.
1602//
1603// See ListDevices method for more information on how to use this operation.
1604//
1605// Note: This operation can generate multiple requests to a service.
1606//
1607//    // Example iterating over at most 3 pages of a ListDevices operation.
1608//    pageNum := 0
1609//    err := client.ListDevicesPages(params,
1610//        func(page *worklink.ListDevicesOutput, lastPage bool) bool {
1611//            pageNum++
1612//            fmt.Println(page)
1613//            return pageNum <= 3
1614//        })
1615//
1616func (c *WorkLink) ListDevicesPages(input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool) error {
1617	return c.ListDevicesPagesWithContext(aws.BackgroundContext(), input, fn)
1618}
1619
1620// ListDevicesPagesWithContext same as ListDevicesPages except
1621// it takes a Context and allows setting request options on the pages.
1622//
1623// The context must be non-nil and will be used for request cancellation. If
1624// the context is nil a panic will occur. In the future the SDK may create
1625// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1626// for more information on using Contexts.
1627func (c *WorkLink) ListDevicesPagesWithContext(ctx aws.Context, input *ListDevicesInput, fn func(*ListDevicesOutput, bool) bool, opts ...request.Option) error {
1628	p := request.Pagination{
1629		NewRequest: func() (*request.Request, error) {
1630			var inCpy *ListDevicesInput
1631			if input != nil {
1632				tmp := *input
1633				inCpy = &tmp
1634			}
1635			req, _ := c.ListDevicesRequest(inCpy)
1636			req.SetContext(ctx)
1637			req.ApplyOptions(opts...)
1638			return req, nil
1639		},
1640	}
1641
1642	for p.Next() {
1643		if !fn(p.Page().(*ListDevicesOutput), !p.HasNextPage()) {
1644			break
1645		}
1646	}
1647
1648	return p.Err()
1649}
1650
1651const opListDomains = "ListDomains"
1652
1653// ListDomainsRequest generates a "aws/request.Request" representing the
1654// client's request for the ListDomains operation. The "output" return
1655// value will be populated with the request's response once the request completes
1656// successfully.
1657//
1658// Use "Send" method on the returned Request to send the API call to the service.
1659// the "output" return value is not valid until after Send returns without error.
1660//
1661// See ListDomains for more information on using the ListDomains
1662// API call, and error handling.
1663//
1664// This method is useful when you want to inject custom logic or configuration
1665// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1666//
1667//
1668//    // Example sending a request using the ListDomainsRequest method.
1669//    req, resp := client.ListDomainsRequest(params)
1670//
1671//    err := req.Send()
1672//    if err == nil { // resp is now filled
1673//        fmt.Println(resp)
1674//    }
1675//
1676// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListDomains
1677func (c *WorkLink) ListDomainsRequest(input *ListDomainsInput) (req *request.Request, output *ListDomainsOutput) {
1678	op := &request.Operation{
1679		Name:       opListDomains,
1680		HTTPMethod: "POST",
1681		HTTPPath:   "/listDomains",
1682		Paginator: &request.Paginator{
1683			InputTokens:     []string{"NextToken"},
1684			OutputTokens:    []string{"NextToken"},
1685			LimitToken:      "MaxResults",
1686			TruncationToken: "",
1687		},
1688	}
1689
1690	if input == nil {
1691		input = &ListDomainsInput{}
1692	}
1693
1694	output = &ListDomainsOutput{}
1695	req = c.newRequest(op, input, output)
1696	return
1697}
1698
1699// ListDomains API operation for Amazon WorkLink.
1700//
1701// Retrieves a list of domains associated to a specified fleet.
1702//
1703// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1704// with awserr.Error's Code and Message methods to get detailed information about
1705// the error.
1706//
1707// See the AWS API reference guide for Amazon WorkLink's
1708// API operation ListDomains for usage and error information.
1709//
1710// Returned Error Types:
1711//   * UnauthorizedException
1712//   You are not authorized to perform this action.
1713//
1714//   * InternalServerErrorException
1715//   The service is temporarily unavailable.
1716//
1717//   * InvalidRequestException
1718//   The request is not valid.
1719//
1720//   * ResourceNotFoundException
1721//   The requested resource was not found.
1722//
1723//   * TooManyRequestsException
1724//   The number of requests exceeds the limit.
1725//
1726// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListDomains
1727func (c *WorkLink) ListDomains(input *ListDomainsInput) (*ListDomainsOutput, error) {
1728	req, out := c.ListDomainsRequest(input)
1729	return out, req.Send()
1730}
1731
1732// ListDomainsWithContext is the same as ListDomains with the addition of
1733// the ability to pass a context and additional request options.
1734//
1735// See ListDomains for details on how to use this API operation.
1736//
1737// The context must be non-nil and will be used for request cancellation. If
1738// the context is nil a panic will occur. In the future the SDK may create
1739// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1740// for more information on using Contexts.
1741func (c *WorkLink) ListDomainsWithContext(ctx aws.Context, input *ListDomainsInput, opts ...request.Option) (*ListDomainsOutput, error) {
1742	req, out := c.ListDomainsRequest(input)
1743	req.SetContext(ctx)
1744	req.ApplyOptions(opts...)
1745	return out, req.Send()
1746}
1747
1748// ListDomainsPages iterates over the pages of a ListDomains operation,
1749// calling the "fn" function with the response data for each page. To stop
1750// iterating, return false from the fn function.
1751//
1752// See ListDomains method for more information on how to use this operation.
1753//
1754// Note: This operation can generate multiple requests to a service.
1755//
1756//    // Example iterating over at most 3 pages of a ListDomains operation.
1757//    pageNum := 0
1758//    err := client.ListDomainsPages(params,
1759//        func(page *worklink.ListDomainsOutput, lastPage bool) bool {
1760//            pageNum++
1761//            fmt.Println(page)
1762//            return pageNum <= 3
1763//        })
1764//
1765func (c *WorkLink) ListDomainsPages(input *ListDomainsInput, fn func(*ListDomainsOutput, bool) bool) error {
1766	return c.ListDomainsPagesWithContext(aws.BackgroundContext(), input, fn)
1767}
1768
1769// ListDomainsPagesWithContext same as ListDomainsPages except
1770// it takes a Context and allows setting request options on the pages.
1771//
1772// The context must be non-nil and will be used for request cancellation. If
1773// the context is nil a panic will occur. In the future the SDK may create
1774// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1775// for more information on using Contexts.
1776func (c *WorkLink) ListDomainsPagesWithContext(ctx aws.Context, input *ListDomainsInput, fn func(*ListDomainsOutput, bool) bool, opts ...request.Option) error {
1777	p := request.Pagination{
1778		NewRequest: func() (*request.Request, error) {
1779			var inCpy *ListDomainsInput
1780			if input != nil {
1781				tmp := *input
1782				inCpy = &tmp
1783			}
1784			req, _ := c.ListDomainsRequest(inCpy)
1785			req.SetContext(ctx)
1786			req.ApplyOptions(opts...)
1787			return req, nil
1788		},
1789	}
1790
1791	for p.Next() {
1792		if !fn(p.Page().(*ListDomainsOutput), !p.HasNextPage()) {
1793			break
1794		}
1795	}
1796
1797	return p.Err()
1798}
1799
1800const opListFleets = "ListFleets"
1801
1802// ListFleetsRequest generates a "aws/request.Request" representing the
1803// client's request for the ListFleets operation. The "output" return
1804// value will be populated with the request's response once the request completes
1805// successfully.
1806//
1807// Use "Send" method on the returned Request to send the API call to the service.
1808// the "output" return value is not valid until after Send returns without error.
1809//
1810// See ListFleets for more information on using the ListFleets
1811// API call, and error handling.
1812//
1813// This method is useful when you want to inject custom logic or configuration
1814// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1815//
1816//
1817//    // Example sending a request using the ListFleetsRequest method.
1818//    req, resp := client.ListFleetsRequest(params)
1819//
1820//    err := req.Send()
1821//    if err == nil { // resp is now filled
1822//        fmt.Println(resp)
1823//    }
1824//
1825// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListFleets
1826func (c *WorkLink) ListFleetsRequest(input *ListFleetsInput) (req *request.Request, output *ListFleetsOutput) {
1827	op := &request.Operation{
1828		Name:       opListFleets,
1829		HTTPMethod: "POST",
1830		HTTPPath:   "/listFleets",
1831		Paginator: &request.Paginator{
1832			InputTokens:     []string{"NextToken"},
1833			OutputTokens:    []string{"NextToken"},
1834			LimitToken:      "MaxResults",
1835			TruncationToken: "",
1836		},
1837	}
1838
1839	if input == nil {
1840		input = &ListFleetsInput{}
1841	}
1842
1843	output = &ListFleetsOutput{}
1844	req = c.newRequest(op, input, output)
1845	return
1846}
1847
1848// ListFleets API operation for Amazon WorkLink.
1849//
1850// Retrieves a list of fleets for the current account and Region.
1851//
1852// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1853// with awserr.Error's Code and Message methods to get detailed information about
1854// the error.
1855//
1856// See the AWS API reference guide for Amazon WorkLink's
1857// API operation ListFleets for usage and error information.
1858//
1859// Returned Error Types:
1860//   * UnauthorizedException
1861//   You are not authorized to perform this action.
1862//
1863//   * InternalServerErrorException
1864//   The service is temporarily unavailable.
1865//
1866//   * InvalidRequestException
1867//   The request is not valid.
1868//
1869//   * TooManyRequestsException
1870//   The number of requests exceeds the limit.
1871//
1872// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListFleets
1873func (c *WorkLink) ListFleets(input *ListFleetsInput) (*ListFleetsOutput, error) {
1874	req, out := c.ListFleetsRequest(input)
1875	return out, req.Send()
1876}
1877
1878// ListFleetsWithContext is the same as ListFleets with the addition of
1879// the ability to pass a context and additional request options.
1880//
1881// See ListFleets for details on how to use this API operation.
1882//
1883// The context must be non-nil and will be used for request cancellation. If
1884// the context is nil a panic will occur. In the future the SDK may create
1885// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1886// for more information on using Contexts.
1887func (c *WorkLink) ListFleetsWithContext(ctx aws.Context, input *ListFleetsInput, opts ...request.Option) (*ListFleetsOutput, error) {
1888	req, out := c.ListFleetsRequest(input)
1889	req.SetContext(ctx)
1890	req.ApplyOptions(opts...)
1891	return out, req.Send()
1892}
1893
1894// ListFleetsPages iterates over the pages of a ListFleets operation,
1895// calling the "fn" function with the response data for each page. To stop
1896// iterating, return false from the fn function.
1897//
1898// See ListFleets method for more information on how to use this operation.
1899//
1900// Note: This operation can generate multiple requests to a service.
1901//
1902//    // Example iterating over at most 3 pages of a ListFleets operation.
1903//    pageNum := 0
1904//    err := client.ListFleetsPages(params,
1905//        func(page *worklink.ListFleetsOutput, lastPage bool) bool {
1906//            pageNum++
1907//            fmt.Println(page)
1908//            return pageNum <= 3
1909//        })
1910//
1911func (c *WorkLink) ListFleetsPages(input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool) error {
1912	return c.ListFleetsPagesWithContext(aws.BackgroundContext(), input, fn)
1913}
1914
1915// ListFleetsPagesWithContext same as ListFleetsPages except
1916// it takes a Context and allows setting request options on the pages.
1917//
1918// The context must be non-nil and will be used for request cancellation. If
1919// the context is nil a panic will occur. In the future the SDK may create
1920// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1921// for more information on using Contexts.
1922func (c *WorkLink) ListFleetsPagesWithContext(ctx aws.Context, input *ListFleetsInput, fn func(*ListFleetsOutput, bool) bool, opts ...request.Option) error {
1923	p := request.Pagination{
1924		NewRequest: func() (*request.Request, error) {
1925			var inCpy *ListFleetsInput
1926			if input != nil {
1927				tmp := *input
1928				inCpy = &tmp
1929			}
1930			req, _ := c.ListFleetsRequest(inCpy)
1931			req.SetContext(ctx)
1932			req.ApplyOptions(opts...)
1933			return req, nil
1934		},
1935	}
1936
1937	for p.Next() {
1938		if !fn(p.Page().(*ListFleetsOutput), !p.HasNextPage()) {
1939			break
1940		}
1941	}
1942
1943	return p.Err()
1944}
1945
1946const opListTagsForResource = "ListTagsForResource"
1947
1948// ListTagsForResourceRequest generates a "aws/request.Request" representing the
1949// client's request for the ListTagsForResource operation. The "output" return
1950// value will be populated with the request's response once the request completes
1951// successfully.
1952//
1953// Use "Send" method on the returned Request to send the API call to the service.
1954// the "output" return value is not valid until after Send returns without error.
1955//
1956// See ListTagsForResource for more information on using the ListTagsForResource
1957// API call, and error handling.
1958//
1959// This method is useful when you want to inject custom logic or configuration
1960// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1961//
1962//
1963//    // Example sending a request using the ListTagsForResourceRequest method.
1964//    req, resp := client.ListTagsForResourceRequest(params)
1965//
1966//    err := req.Send()
1967//    if err == nil { // resp is now filled
1968//        fmt.Println(resp)
1969//    }
1970//
1971// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListTagsForResource
1972func (c *WorkLink) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
1973	op := &request.Operation{
1974		Name:       opListTagsForResource,
1975		HTTPMethod: "GET",
1976		HTTPPath:   "/tags/{ResourceArn}",
1977	}
1978
1979	if input == nil {
1980		input = &ListTagsForResourceInput{}
1981	}
1982
1983	output = &ListTagsForResourceOutput{}
1984	req = c.newRequest(op, input, output)
1985	return
1986}
1987
1988// ListTagsForResource API operation for Amazon WorkLink.
1989//
1990// Retrieves a list of tags for the specified resource.
1991//
1992// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1993// with awserr.Error's Code and Message methods to get detailed information about
1994// the error.
1995//
1996// See the AWS API reference guide for Amazon WorkLink's
1997// API operation ListTagsForResource for usage and error information.
1998//
1999// Returned Error Types:
2000//   * InvalidRequestException
2001//   The request is not valid.
2002//
2003// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListTagsForResource
2004func (c *WorkLink) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2005	req, out := c.ListTagsForResourceRequest(input)
2006	return out, req.Send()
2007}
2008
2009// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2010// the ability to pass a context and additional request options.
2011//
2012// See ListTagsForResource for details on how to use this API operation.
2013//
2014// The context must be non-nil and will be used for request cancellation. If
2015// the context is nil a panic will occur. In the future the SDK may create
2016// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2017// for more information on using Contexts.
2018func (c *WorkLink) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2019	req, out := c.ListTagsForResourceRequest(input)
2020	req.SetContext(ctx)
2021	req.ApplyOptions(opts...)
2022	return out, req.Send()
2023}
2024
2025const opListWebsiteAuthorizationProviders = "ListWebsiteAuthorizationProviders"
2026
2027// ListWebsiteAuthorizationProvidersRequest generates a "aws/request.Request" representing the
2028// client's request for the ListWebsiteAuthorizationProviders operation. The "output" return
2029// value will be populated with the request's response once the request completes
2030// successfully.
2031//
2032// Use "Send" method on the returned Request to send the API call to the service.
2033// the "output" return value is not valid until after Send returns without error.
2034//
2035// See ListWebsiteAuthorizationProviders for more information on using the ListWebsiteAuthorizationProviders
2036// API call, and error handling.
2037//
2038// This method is useful when you want to inject custom logic or configuration
2039// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2040//
2041//
2042//    // Example sending a request using the ListWebsiteAuthorizationProvidersRequest method.
2043//    req, resp := client.ListWebsiteAuthorizationProvidersRequest(params)
2044//
2045//    err := req.Send()
2046//    if err == nil { // resp is now filled
2047//        fmt.Println(resp)
2048//    }
2049//
2050// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListWebsiteAuthorizationProviders
2051func (c *WorkLink) ListWebsiteAuthorizationProvidersRequest(input *ListWebsiteAuthorizationProvidersInput) (req *request.Request, output *ListWebsiteAuthorizationProvidersOutput) {
2052	op := &request.Operation{
2053		Name:       opListWebsiteAuthorizationProviders,
2054		HTTPMethod: "POST",
2055		HTTPPath:   "/listWebsiteAuthorizationProviders",
2056		Paginator: &request.Paginator{
2057			InputTokens:     []string{"NextToken"},
2058			OutputTokens:    []string{"NextToken"},
2059			LimitToken:      "MaxResults",
2060			TruncationToken: "",
2061		},
2062	}
2063
2064	if input == nil {
2065		input = &ListWebsiteAuthorizationProvidersInput{}
2066	}
2067
2068	output = &ListWebsiteAuthorizationProvidersOutput{}
2069	req = c.newRequest(op, input, output)
2070	return
2071}
2072
2073// ListWebsiteAuthorizationProviders API operation for Amazon WorkLink.
2074//
2075// Retrieves a list of website authorization providers associated with a specified
2076// fleet.
2077//
2078// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2079// with awserr.Error's Code and Message methods to get detailed information about
2080// the error.
2081//
2082// See the AWS API reference guide for Amazon WorkLink's
2083// API operation ListWebsiteAuthorizationProviders for usage and error information.
2084//
2085// Returned Error Types:
2086//   * UnauthorizedException
2087//   You are not authorized to perform this action.
2088//
2089//   * InternalServerErrorException
2090//   The service is temporarily unavailable.
2091//
2092//   * InvalidRequestException
2093//   The request is not valid.
2094//
2095//   * ResourceNotFoundException
2096//   The requested resource was not found.
2097//
2098//   * TooManyRequestsException
2099//   The number of requests exceeds the limit.
2100//
2101// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListWebsiteAuthorizationProviders
2102func (c *WorkLink) ListWebsiteAuthorizationProviders(input *ListWebsiteAuthorizationProvidersInput) (*ListWebsiteAuthorizationProvidersOutput, error) {
2103	req, out := c.ListWebsiteAuthorizationProvidersRequest(input)
2104	return out, req.Send()
2105}
2106
2107// ListWebsiteAuthorizationProvidersWithContext is the same as ListWebsiteAuthorizationProviders with the addition of
2108// the ability to pass a context and additional request options.
2109//
2110// See ListWebsiteAuthorizationProviders for details on how to use this API operation.
2111//
2112// The context must be non-nil and will be used for request cancellation. If
2113// the context is nil a panic will occur. In the future the SDK may create
2114// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2115// for more information on using Contexts.
2116func (c *WorkLink) ListWebsiteAuthorizationProvidersWithContext(ctx aws.Context, input *ListWebsiteAuthorizationProvidersInput, opts ...request.Option) (*ListWebsiteAuthorizationProvidersOutput, error) {
2117	req, out := c.ListWebsiteAuthorizationProvidersRequest(input)
2118	req.SetContext(ctx)
2119	req.ApplyOptions(opts...)
2120	return out, req.Send()
2121}
2122
2123// ListWebsiteAuthorizationProvidersPages iterates over the pages of a ListWebsiteAuthorizationProviders operation,
2124// calling the "fn" function with the response data for each page. To stop
2125// iterating, return false from the fn function.
2126//
2127// See ListWebsiteAuthorizationProviders method for more information on how to use this operation.
2128//
2129// Note: This operation can generate multiple requests to a service.
2130//
2131//    // Example iterating over at most 3 pages of a ListWebsiteAuthorizationProviders operation.
2132//    pageNum := 0
2133//    err := client.ListWebsiteAuthorizationProvidersPages(params,
2134//        func(page *worklink.ListWebsiteAuthorizationProvidersOutput, lastPage bool) bool {
2135//            pageNum++
2136//            fmt.Println(page)
2137//            return pageNum <= 3
2138//        })
2139//
2140func (c *WorkLink) ListWebsiteAuthorizationProvidersPages(input *ListWebsiteAuthorizationProvidersInput, fn func(*ListWebsiteAuthorizationProvidersOutput, bool) bool) error {
2141	return c.ListWebsiteAuthorizationProvidersPagesWithContext(aws.BackgroundContext(), input, fn)
2142}
2143
2144// ListWebsiteAuthorizationProvidersPagesWithContext same as ListWebsiteAuthorizationProvidersPages except
2145// it takes a Context and allows setting request options on the pages.
2146//
2147// The context must be non-nil and will be used for request cancellation. If
2148// the context is nil a panic will occur. In the future the SDK may create
2149// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2150// for more information on using Contexts.
2151func (c *WorkLink) ListWebsiteAuthorizationProvidersPagesWithContext(ctx aws.Context, input *ListWebsiteAuthorizationProvidersInput, fn func(*ListWebsiteAuthorizationProvidersOutput, bool) bool, opts ...request.Option) error {
2152	p := request.Pagination{
2153		NewRequest: func() (*request.Request, error) {
2154			var inCpy *ListWebsiteAuthorizationProvidersInput
2155			if input != nil {
2156				tmp := *input
2157				inCpy = &tmp
2158			}
2159			req, _ := c.ListWebsiteAuthorizationProvidersRequest(inCpy)
2160			req.SetContext(ctx)
2161			req.ApplyOptions(opts...)
2162			return req, nil
2163		},
2164	}
2165
2166	for p.Next() {
2167		if !fn(p.Page().(*ListWebsiteAuthorizationProvidersOutput), !p.HasNextPage()) {
2168			break
2169		}
2170	}
2171
2172	return p.Err()
2173}
2174
2175const opListWebsiteCertificateAuthorities = "ListWebsiteCertificateAuthorities"
2176
2177// ListWebsiteCertificateAuthoritiesRequest generates a "aws/request.Request" representing the
2178// client's request for the ListWebsiteCertificateAuthorities operation. The "output" return
2179// value will be populated with the request's response once the request completes
2180// successfully.
2181//
2182// Use "Send" method on the returned Request to send the API call to the service.
2183// the "output" return value is not valid until after Send returns without error.
2184//
2185// See ListWebsiteCertificateAuthorities for more information on using the ListWebsiteCertificateAuthorities
2186// API call, and error handling.
2187//
2188// This method is useful when you want to inject custom logic or configuration
2189// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2190//
2191//
2192//    // Example sending a request using the ListWebsiteCertificateAuthoritiesRequest method.
2193//    req, resp := client.ListWebsiteCertificateAuthoritiesRequest(params)
2194//
2195//    err := req.Send()
2196//    if err == nil { // resp is now filled
2197//        fmt.Println(resp)
2198//    }
2199//
2200// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListWebsiteCertificateAuthorities
2201func (c *WorkLink) ListWebsiteCertificateAuthoritiesRequest(input *ListWebsiteCertificateAuthoritiesInput) (req *request.Request, output *ListWebsiteCertificateAuthoritiesOutput) {
2202	op := &request.Operation{
2203		Name:       opListWebsiteCertificateAuthorities,
2204		HTTPMethod: "POST",
2205		HTTPPath:   "/listWebsiteCertificateAuthorities",
2206		Paginator: &request.Paginator{
2207			InputTokens:     []string{"NextToken"},
2208			OutputTokens:    []string{"NextToken"},
2209			LimitToken:      "MaxResults",
2210			TruncationToken: "",
2211		},
2212	}
2213
2214	if input == nil {
2215		input = &ListWebsiteCertificateAuthoritiesInput{}
2216	}
2217
2218	output = &ListWebsiteCertificateAuthoritiesOutput{}
2219	req = c.newRequest(op, input, output)
2220	return
2221}
2222
2223// ListWebsiteCertificateAuthorities API operation for Amazon WorkLink.
2224//
2225// Retrieves a list of certificate authorities added for the current account
2226// and Region.
2227//
2228// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2229// with awserr.Error's Code and Message methods to get detailed information about
2230// the error.
2231//
2232// See the AWS API reference guide for Amazon WorkLink's
2233// API operation ListWebsiteCertificateAuthorities for usage and error information.
2234//
2235// Returned Error Types:
2236//   * UnauthorizedException
2237//   You are not authorized to perform this action.
2238//
2239//   * InternalServerErrorException
2240//   The service is temporarily unavailable.
2241//
2242//   * InvalidRequestException
2243//   The request is not valid.
2244//
2245//   * TooManyRequestsException
2246//   The number of requests exceeds the limit.
2247//
2248// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/ListWebsiteCertificateAuthorities
2249func (c *WorkLink) ListWebsiteCertificateAuthorities(input *ListWebsiteCertificateAuthoritiesInput) (*ListWebsiteCertificateAuthoritiesOutput, error) {
2250	req, out := c.ListWebsiteCertificateAuthoritiesRequest(input)
2251	return out, req.Send()
2252}
2253
2254// ListWebsiteCertificateAuthoritiesWithContext is the same as ListWebsiteCertificateAuthorities with the addition of
2255// the ability to pass a context and additional request options.
2256//
2257// See ListWebsiteCertificateAuthorities for details on how to use this API operation.
2258//
2259// The context must be non-nil and will be used for request cancellation. If
2260// the context is nil a panic will occur. In the future the SDK may create
2261// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2262// for more information on using Contexts.
2263func (c *WorkLink) ListWebsiteCertificateAuthoritiesWithContext(ctx aws.Context, input *ListWebsiteCertificateAuthoritiesInput, opts ...request.Option) (*ListWebsiteCertificateAuthoritiesOutput, error) {
2264	req, out := c.ListWebsiteCertificateAuthoritiesRequest(input)
2265	req.SetContext(ctx)
2266	req.ApplyOptions(opts...)
2267	return out, req.Send()
2268}
2269
2270// ListWebsiteCertificateAuthoritiesPages iterates over the pages of a ListWebsiteCertificateAuthorities operation,
2271// calling the "fn" function with the response data for each page. To stop
2272// iterating, return false from the fn function.
2273//
2274// See ListWebsiteCertificateAuthorities method for more information on how to use this operation.
2275//
2276// Note: This operation can generate multiple requests to a service.
2277//
2278//    // Example iterating over at most 3 pages of a ListWebsiteCertificateAuthorities operation.
2279//    pageNum := 0
2280//    err := client.ListWebsiteCertificateAuthoritiesPages(params,
2281//        func(page *worklink.ListWebsiteCertificateAuthoritiesOutput, lastPage bool) bool {
2282//            pageNum++
2283//            fmt.Println(page)
2284//            return pageNum <= 3
2285//        })
2286//
2287func (c *WorkLink) ListWebsiteCertificateAuthoritiesPages(input *ListWebsiteCertificateAuthoritiesInput, fn func(*ListWebsiteCertificateAuthoritiesOutput, bool) bool) error {
2288	return c.ListWebsiteCertificateAuthoritiesPagesWithContext(aws.BackgroundContext(), input, fn)
2289}
2290
2291// ListWebsiteCertificateAuthoritiesPagesWithContext same as ListWebsiteCertificateAuthoritiesPages except
2292// it takes a Context and allows setting request options on the pages.
2293//
2294// The context must be non-nil and will be used for request cancellation. If
2295// the context is nil a panic will occur. In the future the SDK may create
2296// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2297// for more information on using Contexts.
2298func (c *WorkLink) ListWebsiteCertificateAuthoritiesPagesWithContext(ctx aws.Context, input *ListWebsiteCertificateAuthoritiesInput, fn func(*ListWebsiteCertificateAuthoritiesOutput, bool) bool, opts ...request.Option) error {
2299	p := request.Pagination{
2300		NewRequest: func() (*request.Request, error) {
2301			var inCpy *ListWebsiteCertificateAuthoritiesInput
2302			if input != nil {
2303				tmp := *input
2304				inCpy = &tmp
2305			}
2306			req, _ := c.ListWebsiteCertificateAuthoritiesRequest(inCpy)
2307			req.SetContext(ctx)
2308			req.ApplyOptions(opts...)
2309			return req, nil
2310		},
2311	}
2312
2313	for p.Next() {
2314		if !fn(p.Page().(*ListWebsiteCertificateAuthoritiesOutput), !p.HasNextPage()) {
2315			break
2316		}
2317	}
2318
2319	return p.Err()
2320}
2321
2322const opRestoreDomainAccess = "RestoreDomainAccess"
2323
2324// RestoreDomainAccessRequest generates a "aws/request.Request" representing the
2325// client's request for the RestoreDomainAccess operation. The "output" return
2326// value will be populated with the request's response once the request completes
2327// successfully.
2328//
2329// Use "Send" method on the returned Request to send the API call to the service.
2330// the "output" return value is not valid until after Send returns without error.
2331//
2332// See RestoreDomainAccess for more information on using the RestoreDomainAccess
2333// API call, and error handling.
2334//
2335// This method is useful when you want to inject custom logic or configuration
2336// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2337//
2338//
2339//    // Example sending a request using the RestoreDomainAccessRequest method.
2340//    req, resp := client.RestoreDomainAccessRequest(params)
2341//
2342//    err := req.Send()
2343//    if err == nil { // resp is now filled
2344//        fmt.Println(resp)
2345//    }
2346//
2347// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/RestoreDomainAccess
2348func (c *WorkLink) RestoreDomainAccessRequest(input *RestoreDomainAccessInput) (req *request.Request, output *RestoreDomainAccessOutput) {
2349	op := &request.Operation{
2350		Name:       opRestoreDomainAccess,
2351		HTTPMethod: "POST",
2352		HTTPPath:   "/restoreDomainAccess",
2353	}
2354
2355	if input == nil {
2356		input = &RestoreDomainAccessInput{}
2357	}
2358
2359	output = &RestoreDomainAccessOutput{}
2360	req = c.newRequest(op, input, output)
2361	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2362	return
2363}
2364
2365// RestoreDomainAccess API operation for Amazon WorkLink.
2366//
2367// Moves a domain to ACTIVE status if it was in the INACTIVE status.
2368//
2369// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2370// with awserr.Error's Code and Message methods to get detailed information about
2371// the error.
2372//
2373// See the AWS API reference guide for Amazon WorkLink's
2374// API operation RestoreDomainAccess for usage and error information.
2375//
2376// Returned Error Types:
2377//   * UnauthorizedException
2378//   You are not authorized to perform this action.
2379//
2380//   * InternalServerErrorException
2381//   The service is temporarily unavailable.
2382//
2383//   * InvalidRequestException
2384//   The request is not valid.
2385//
2386//   * ResourceNotFoundException
2387//   The requested resource was not found.
2388//
2389//   * TooManyRequestsException
2390//   The number of requests exceeds the limit.
2391//
2392// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/RestoreDomainAccess
2393func (c *WorkLink) RestoreDomainAccess(input *RestoreDomainAccessInput) (*RestoreDomainAccessOutput, error) {
2394	req, out := c.RestoreDomainAccessRequest(input)
2395	return out, req.Send()
2396}
2397
2398// RestoreDomainAccessWithContext is the same as RestoreDomainAccess with the addition of
2399// the ability to pass a context and additional request options.
2400//
2401// See RestoreDomainAccess for details on how to use this API operation.
2402//
2403// The context must be non-nil and will be used for request cancellation. If
2404// the context is nil a panic will occur. In the future the SDK may create
2405// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2406// for more information on using Contexts.
2407func (c *WorkLink) RestoreDomainAccessWithContext(ctx aws.Context, input *RestoreDomainAccessInput, opts ...request.Option) (*RestoreDomainAccessOutput, error) {
2408	req, out := c.RestoreDomainAccessRequest(input)
2409	req.SetContext(ctx)
2410	req.ApplyOptions(opts...)
2411	return out, req.Send()
2412}
2413
2414const opRevokeDomainAccess = "RevokeDomainAccess"
2415
2416// RevokeDomainAccessRequest generates a "aws/request.Request" representing the
2417// client's request for the RevokeDomainAccess operation. The "output" return
2418// value will be populated with the request's response once the request completes
2419// successfully.
2420//
2421// Use "Send" method on the returned Request to send the API call to the service.
2422// the "output" return value is not valid until after Send returns without error.
2423//
2424// See RevokeDomainAccess for more information on using the RevokeDomainAccess
2425// API call, and error handling.
2426//
2427// This method is useful when you want to inject custom logic or configuration
2428// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2429//
2430//
2431//    // Example sending a request using the RevokeDomainAccessRequest method.
2432//    req, resp := client.RevokeDomainAccessRequest(params)
2433//
2434//    err := req.Send()
2435//    if err == nil { // resp is now filled
2436//        fmt.Println(resp)
2437//    }
2438//
2439// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/RevokeDomainAccess
2440func (c *WorkLink) RevokeDomainAccessRequest(input *RevokeDomainAccessInput) (req *request.Request, output *RevokeDomainAccessOutput) {
2441	op := &request.Operation{
2442		Name:       opRevokeDomainAccess,
2443		HTTPMethod: "POST",
2444		HTTPPath:   "/revokeDomainAccess",
2445	}
2446
2447	if input == nil {
2448		input = &RevokeDomainAccessInput{}
2449	}
2450
2451	output = &RevokeDomainAccessOutput{}
2452	req = c.newRequest(op, input, output)
2453	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2454	return
2455}
2456
2457// RevokeDomainAccess API operation for Amazon WorkLink.
2458//
2459// Moves a domain to INACTIVE status if it was in the ACTIVE status.
2460//
2461// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2462// with awserr.Error's Code and Message methods to get detailed information about
2463// the error.
2464//
2465// See the AWS API reference guide for Amazon WorkLink's
2466// API operation RevokeDomainAccess for usage and error information.
2467//
2468// Returned Error Types:
2469//   * UnauthorizedException
2470//   You are not authorized to perform this action.
2471//
2472//   * InternalServerErrorException
2473//   The service is temporarily unavailable.
2474//
2475//   * InvalidRequestException
2476//   The request is not valid.
2477//
2478//   * ResourceNotFoundException
2479//   The requested resource was not found.
2480//
2481//   * TooManyRequestsException
2482//   The number of requests exceeds the limit.
2483//
2484// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/RevokeDomainAccess
2485func (c *WorkLink) RevokeDomainAccess(input *RevokeDomainAccessInput) (*RevokeDomainAccessOutput, error) {
2486	req, out := c.RevokeDomainAccessRequest(input)
2487	return out, req.Send()
2488}
2489
2490// RevokeDomainAccessWithContext is the same as RevokeDomainAccess with the addition of
2491// the ability to pass a context and additional request options.
2492//
2493// See RevokeDomainAccess for details on how to use this API operation.
2494//
2495// The context must be non-nil and will be used for request cancellation. If
2496// the context is nil a panic will occur. In the future the SDK may create
2497// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2498// for more information on using Contexts.
2499func (c *WorkLink) RevokeDomainAccessWithContext(ctx aws.Context, input *RevokeDomainAccessInput, opts ...request.Option) (*RevokeDomainAccessOutput, error) {
2500	req, out := c.RevokeDomainAccessRequest(input)
2501	req.SetContext(ctx)
2502	req.ApplyOptions(opts...)
2503	return out, req.Send()
2504}
2505
2506const opSignOutUser = "SignOutUser"
2507
2508// SignOutUserRequest generates a "aws/request.Request" representing the
2509// client's request for the SignOutUser operation. The "output" return
2510// value will be populated with the request's response once the request completes
2511// successfully.
2512//
2513// Use "Send" method on the returned Request to send the API call to the service.
2514// the "output" return value is not valid until after Send returns without error.
2515//
2516// See SignOutUser for more information on using the SignOutUser
2517// API call, and error handling.
2518//
2519// This method is useful when you want to inject custom logic or configuration
2520// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2521//
2522//
2523//    // Example sending a request using the SignOutUserRequest method.
2524//    req, resp := client.SignOutUserRequest(params)
2525//
2526//    err := req.Send()
2527//    if err == nil { // resp is now filled
2528//        fmt.Println(resp)
2529//    }
2530//
2531// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/SignOutUser
2532func (c *WorkLink) SignOutUserRequest(input *SignOutUserInput) (req *request.Request, output *SignOutUserOutput) {
2533	op := &request.Operation{
2534		Name:       opSignOutUser,
2535		HTTPMethod: "POST",
2536		HTTPPath:   "/signOutUser",
2537	}
2538
2539	if input == nil {
2540		input = &SignOutUserInput{}
2541	}
2542
2543	output = &SignOutUserOutput{}
2544	req = c.newRequest(op, input, output)
2545	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2546	return
2547}
2548
2549// SignOutUser API operation for Amazon WorkLink.
2550//
2551// Signs the user out from all of their devices. The user can sign in again
2552// if they have valid credentials.
2553//
2554// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2555// with awserr.Error's Code and Message methods to get detailed information about
2556// the error.
2557//
2558// See the AWS API reference guide for Amazon WorkLink's
2559// API operation SignOutUser for usage and error information.
2560//
2561// Returned Error Types:
2562//   * UnauthorizedException
2563//   You are not authorized to perform this action.
2564//
2565//   * InternalServerErrorException
2566//   The service is temporarily unavailable.
2567//
2568//   * InvalidRequestException
2569//   The request is not valid.
2570//
2571//   * ResourceNotFoundException
2572//   The requested resource was not found.
2573//
2574//   * TooManyRequestsException
2575//   The number of requests exceeds the limit.
2576//
2577// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/SignOutUser
2578func (c *WorkLink) SignOutUser(input *SignOutUserInput) (*SignOutUserOutput, error) {
2579	req, out := c.SignOutUserRequest(input)
2580	return out, req.Send()
2581}
2582
2583// SignOutUserWithContext is the same as SignOutUser with the addition of
2584// the ability to pass a context and additional request options.
2585//
2586// See SignOutUser for details on how to use this API operation.
2587//
2588// The context must be non-nil and will be used for request cancellation. If
2589// the context is nil a panic will occur. In the future the SDK may create
2590// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2591// for more information on using Contexts.
2592func (c *WorkLink) SignOutUserWithContext(ctx aws.Context, input *SignOutUserInput, opts ...request.Option) (*SignOutUserOutput, error) {
2593	req, out := c.SignOutUserRequest(input)
2594	req.SetContext(ctx)
2595	req.ApplyOptions(opts...)
2596	return out, req.Send()
2597}
2598
2599const opTagResource = "TagResource"
2600
2601// TagResourceRequest generates a "aws/request.Request" representing the
2602// client's request for the TagResource operation. The "output" return
2603// value will be populated with the request's response once the request completes
2604// successfully.
2605//
2606// Use "Send" method on the returned Request to send the API call to the service.
2607// the "output" return value is not valid until after Send returns without error.
2608//
2609// See TagResource for more information on using the TagResource
2610// API call, and error handling.
2611//
2612// This method is useful when you want to inject custom logic or configuration
2613// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2614//
2615//
2616//    // Example sending a request using the TagResourceRequest method.
2617//    req, resp := client.TagResourceRequest(params)
2618//
2619//    err := req.Send()
2620//    if err == nil { // resp is now filled
2621//        fmt.Println(resp)
2622//    }
2623//
2624// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/TagResource
2625func (c *WorkLink) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
2626	op := &request.Operation{
2627		Name:       opTagResource,
2628		HTTPMethod: "POST",
2629		HTTPPath:   "/tags/{ResourceArn}",
2630	}
2631
2632	if input == nil {
2633		input = &TagResourceInput{}
2634	}
2635
2636	output = &TagResourceOutput{}
2637	req = c.newRequest(op, input, output)
2638	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2639	return
2640}
2641
2642// TagResource API operation for Amazon WorkLink.
2643//
2644// Adds or overwrites one or more tags for the specified resource, such as a
2645// fleet. Each tag consists of a key and an optional value. If a resource already
2646// has a tag with the same key, this operation updates its value.
2647//
2648// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2649// with awserr.Error's Code and Message methods to get detailed information about
2650// the error.
2651//
2652// See the AWS API reference guide for Amazon WorkLink's
2653// API operation TagResource for usage and error information.
2654//
2655// Returned Error Types:
2656//   * InvalidRequestException
2657//   The request is not valid.
2658//
2659// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/TagResource
2660func (c *WorkLink) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
2661	req, out := c.TagResourceRequest(input)
2662	return out, req.Send()
2663}
2664
2665// TagResourceWithContext is the same as TagResource with the addition of
2666// the ability to pass a context and additional request options.
2667//
2668// See TagResource for details on how to use this API operation.
2669//
2670// The context must be non-nil and will be used for request cancellation. If
2671// the context is nil a panic will occur. In the future the SDK may create
2672// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2673// for more information on using Contexts.
2674func (c *WorkLink) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
2675	req, out := c.TagResourceRequest(input)
2676	req.SetContext(ctx)
2677	req.ApplyOptions(opts...)
2678	return out, req.Send()
2679}
2680
2681const opUntagResource = "UntagResource"
2682
2683// UntagResourceRequest generates a "aws/request.Request" representing the
2684// client's request for the UntagResource operation. The "output" return
2685// value will be populated with the request's response once the request completes
2686// successfully.
2687//
2688// Use "Send" method on the returned Request to send the API call to the service.
2689// the "output" return value is not valid until after Send returns without error.
2690//
2691// See UntagResource for more information on using the UntagResource
2692// API call, and error handling.
2693//
2694// This method is useful when you want to inject custom logic or configuration
2695// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2696//
2697//
2698//    // Example sending a request using the UntagResourceRequest method.
2699//    req, resp := client.UntagResourceRequest(params)
2700//
2701//    err := req.Send()
2702//    if err == nil { // resp is now filled
2703//        fmt.Println(resp)
2704//    }
2705//
2706// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UntagResource
2707func (c *WorkLink) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
2708	op := &request.Operation{
2709		Name:       opUntagResource,
2710		HTTPMethod: "DELETE",
2711		HTTPPath:   "/tags/{ResourceArn}",
2712	}
2713
2714	if input == nil {
2715		input = &UntagResourceInput{}
2716	}
2717
2718	output = &UntagResourceOutput{}
2719	req = c.newRequest(op, input, output)
2720	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2721	return
2722}
2723
2724// UntagResource API operation for Amazon WorkLink.
2725//
2726// Removes one or more tags from the specified resource.
2727//
2728// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2729// with awserr.Error's Code and Message methods to get detailed information about
2730// the error.
2731//
2732// See the AWS API reference guide for Amazon WorkLink's
2733// API operation UntagResource for usage and error information.
2734//
2735// Returned Error Types:
2736//   * InvalidRequestException
2737//   The request is not valid.
2738//
2739// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UntagResource
2740func (c *WorkLink) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
2741	req, out := c.UntagResourceRequest(input)
2742	return out, req.Send()
2743}
2744
2745// UntagResourceWithContext is the same as UntagResource with the addition of
2746// the ability to pass a context and additional request options.
2747//
2748// See UntagResource for details on how to use this API operation.
2749//
2750// The context must be non-nil and will be used for request cancellation. If
2751// the context is nil a panic will occur. In the future the SDK may create
2752// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2753// for more information on using Contexts.
2754func (c *WorkLink) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
2755	req, out := c.UntagResourceRequest(input)
2756	req.SetContext(ctx)
2757	req.ApplyOptions(opts...)
2758	return out, req.Send()
2759}
2760
2761const opUpdateAuditStreamConfiguration = "UpdateAuditStreamConfiguration"
2762
2763// UpdateAuditStreamConfigurationRequest generates a "aws/request.Request" representing the
2764// client's request for the UpdateAuditStreamConfiguration operation. The "output" return
2765// value will be populated with the request's response once the request completes
2766// successfully.
2767//
2768// Use "Send" method on the returned Request to send the API call to the service.
2769// the "output" return value is not valid until after Send returns without error.
2770//
2771// See UpdateAuditStreamConfiguration for more information on using the UpdateAuditStreamConfiguration
2772// API call, and error handling.
2773//
2774// This method is useful when you want to inject custom logic or configuration
2775// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2776//
2777//
2778//    // Example sending a request using the UpdateAuditStreamConfigurationRequest method.
2779//    req, resp := client.UpdateAuditStreamConfigurationRequest(params)
2780//
2781//    err := req.Send()
2782//    if err == nil { // resp is now filled
2783//        fmt.Println(resp)
2784//    }
2785//
2786// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateAuditStreamConfiguration
2787func (c *WorkLink) UpdateAuditStreamConfigurationRequest(input *UpdateAuditStreamConfigurationInput) (req *request.Request, output *UpdateAuditStreamConfigurationOutput) {
2788	op := &request.Operation{
2789		Name:       opUpdateAuditStreamConfiguration,
2790		HTTPMethod: "POST",
2791		HTTPPath:   "/updateAuditStreamConfiguration",
2792	}
2793
2794	if input == nil {
2795		input = &UpdateAuditStreamConfigurationInput{}
2796	}
2797
2798	output = &UpdateAuditStreamConfigurationOutput{}
2799	req = c.newRequest(op, input, output)
2800	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2801	return
2802}
2803
2804// UpdateAuditStreamConfiguration API operation for Amazon WorkLink.
2805//
2806// Updates the audit stream configuration for the fleet.
2807//
2808// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2809// with awserr.Error's Code and Message methods to get detailed information about
2810// the error.
2811//
2812// See the AWS API reference guide for Amazon WorkLink's
2813// API operation UpdateAuditStreamConfiguration for usage and error information.
2814//
2815// Returned Error Types:
2816//   * UnauthorizedException
2817//   You are not authorized to perform this action.
2818//
2819//   * InternalServerErrorException
2820//   The service is temporarily unavailable.
2821//
2822//   * InvalidRequestException
2823//   The request is not valid.
2824//
2825//   * ResourceNotFoundException
2826//   The requested resource was not found.
2827//
2828//   * TooManyRequestsException
2829//   The number of requests exceeds the limit.
2830//
2831// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateAuditStreamConfiguration
2832func (c *WorkLink) UpdateAuditStreamConfiguration(input *UpdateAuditStreamConfigurationInput) (*UpdateAuditStreamConfigurationOutput, error) {
2833	req, out := c.UpdateAuditStreamConfigurationRequest(input)
2834	return out, req.Send()
2835}
2836
2837// UpdateAuditStreamConfigurationWithContext is the same as UpdateAuditStreamConfiguration with the addition of
2838// the ability to pass a context and additional request options.
2839//
2840// See UpdateAuditStreamConfiguration for details on how to use this API operation.
2841//
2842// The context must be non-nil and will be used for request cancellation. If
2843// the context is nil a panic will occur. In the future the SDK may create
2844// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2845// for more information on using Contexts.
2846func (c *WorkLink) UpdateAuditStreamConfigurationWithContext(ctx aws.Context, input *UpdateAuditStreamConfigurationInput, opts ...request.Option) (*UpdateAuditStreamConfigurationOutput, error) {
2847	req, out := c.UpdateAuditStreamConfigurationRequest(input)
2848	req.SetContext(ctx)
2849	req.ApplyOptions(opts...)
2850	return out, req.Send()
2851}
2852
2853const opUpdateCompanyNetworkConfiguration = "UpdateCompanyNetworkConfiguration"
2854
2855// UpdateCompanyNetworkConfigurationRequest generates a "aws/request.Request" representing the
2856// client's request for the UpdateCompanyNetworkConfiguration operation. The "output" return
2857// value will be populated with the request's response once the request completes
2858// successfully.
2859//
2860// Use "Send" method on the returned Request to send the API call to the service.
2861// the "output" return value is not valid until after Send returns without error.
2862//
2863// See UpdateCompanyNetworkConfiguration for more information on using the UpdateCompanyNetworkConfiguration
2864// API call, and error handling.
2865//
2866// This method is useful when you want to inject custom logic or configuration
2867// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2868//
2869//
2870//    // Example sending a request using the UpdateCompanyNetworkConfigurationRequest method.
2871//    req, resp := client.UpdateCompanyNetworkConfigurationRequest(params)
2872//
2873//    err := req.Send()
2874//    if err == nil { // resp is now filled
2875//        fmt.Println(resp)
2876//    }
2877//
2878// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateCompanyNetworkConfiguration
2879func (c *WorkLink) UpdateCompanyNetworkConfigurationRequest(input *UpdateCompanyNetworkConfigurationInput) (req *request.Request, output *UpdateCompanyNetworkConfigurationOutput) {
2880	op := &request.Operation{
2881		Name:       opUpdateCompanyNetworkConfiguration,
2882		HTTPMethod: "POST",
2883		HTTPPath:   "/updateCompanyNetworkConfiguration",
2884	}
2885
2886	if input == nil {
2887		input = &UpdateCompanyNetworkConfigurationInput{}
2888	}
2889
2890	output = &UpdateCompanyNetworkConfigurationOutput{}
2891	req = c.newRequest(op, input, output)
2892	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2893	return
2894}
2895
2896// UpdateCompanyNetworkConfiguration API operation for Amazon WorkLink.
2897//
2898// Updates the company network configuration for the fleet.
2899//
2900// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2901// with awserr.Error's Code and Message methods to get detailed information about
2902// the error.
2903//
2904// See the AWS API reference guide for Amazon WorkLink's
2905// API operation UpdateCompanyNetworkConfiguration for usage and error information.
2906//
2907// Returned Error Types:
2908//   * UnauthorizedException
2909//   You are not authorized to perform this action.
2910//
2911//   * InternalServerErrorException
2912//   The service is temporarily unavailable.
2913//
2914//   * InvalidRequestException
2915//   The request is not valid.
2916//
2917//   * ResourceNotFoundException
2918//   The requested resource was not found.
2919//
2920//   * TooManyRequestsException
2921//   The number of requests exceeds the limit.
2922//
2923// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateCompanyNetworkConfiguration
2924func (c *WorkLink) UpdateCompanyNetworkConfiguration(input *UpdateCompanyNetworkConfigurationInput) (*UpdateCompanyNetworkConfigurationOutput, error) {
2925	req, out := c.UpdateCompanyNetworkConfigurationRequest(input)
2926	return out, req.Send()
2927}
2928
2929// UpdateCompanyNetworkConfigurationWithContext is the same as UpdateCompanyNetworkConfiguration with the addition of
2930// the ability to pass a context and additional request options.
2931//
2932// See UpdateCompanyNetworkConfiguration for details on how to use this API operation.
2933//
2934// The context must be non-nil and will be used for request cancellation. If
2935// the context is nil a panic will occur. In the future the SDK may create
2936// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2937// for more information on using Contexts.
2938func (c *WorkLink) UpdateCompanyNetworkConfigurationWithContext(ctx aws.Context, input *UpdateCompanyNetworkConfigurationInput, opts ...request.Option) (*UpdateCompanyNetworkConfigurationOutput, error) {
2939	req, out := c.UpdateCompanyNetworkConfigurationRequest(input)
2940	req.SetContext(ctx)
2941	req.ApplyOptions(opts...)
2942	return out, req.Send()
2943}
2944
2945const opUpdateDevicePolicyConfiguration = "UpdateDevicePolicyConfiguration"
2946
2947// UpdateDevicePolicyConfigurationRequest generates a "aws/request.Request" representing the
2948// client's request for the UpdateDevicePolicyConfiguration operation. The "output" return
2949// value will be populated with the request's response once the request completes
2950// successfully.
2951//
2952// Use "Send" method on the returned Request to send the API call to the service.
2953// the "output" return value is not valid until after Send returns without error.
2954//
2955// See UpdateDevicePolicyConfiguration for more information on using the UpdateDevicePolicyConfiguration
2956// API call, and error handling.
2957//
2958// This method is useful when you want to inject custom logic or configuration
2959// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2960//
2961//
2962//    // Example sending a request using the UpdateDevicePolicyConfigurationRequest method.
2963//    req, resp := client.UpdateDevicePolicyConfigurationRequest(params)
2964//
2965//    err := req.Send()
2966//    if err == nil { // resp is now filled
2967//        fmt.Println(resp)
2968//    }
2969//
2970// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateDevicePolicyConfiguration
2971func (c *WorkLink) UpdateDevicePolicyConfigurationRequest(input *UpdateDevicePolicyConfigurationInput) (req *request.Request, output *UpdateDevicePolicyConfigurationOutput) {
2972	op := &request.Operation{
2973		Name:       opUpdateDevicePolicyConfiguration,
2974		HTTPMethod: "POST",
2975		HTTPPath:   "/updateDevicePolicyConfiguration",
2976	}
2977
2978	if input == nil {
2979		input = &UpdateDevicePolicyConfigurationInput{}
2980	}
2981
2982	output = &UpdateDevicePolicyConfigurationOutput{}
2983	req = c.newRequest(op, input, output)
2984	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2985	return
2986}
2987
2988// UpdateDevicePolicyConfiguration API operation for Amazon WorkLink.
2989//
2990// Updates the device policy configuration for the fleet.
2991//
2992// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2993// with awserr.Error's Code and Message methods to get detailed information about
2994// the error.
2995//
2996// See the AWS API reference guide for Amazon WorkLink's
2997// API operation UpdateDevicePolicyConfiguration for usage and error information.
2998//
2999// Returned Error Types:
3000//   * UnauthorizedException
3001//   You are not authorized to perform this action.
3002//
3003//   * InternalServerErrorException
3004//   The service is temporarily unavailable.
3005//
3006//   * InvalidRequestException
3007//   The request is not valid.
3008//
3009//   * ResourceNotFoundException
3010//   The requested resource was not found.
3011//
3012//   * TooManyRequestsException
3013//   The number of requests exceeds the limit.
3014//
3015// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateDevicePolicyConfiguration
3016func (c *WorkLink) UpdateDevicePolicyConfiguration(input *UpdateDevicePolicyConfigurationInput) (*UpdateDevicePolicyConfigurationOutput, error) {
3017	req, out := c.UpdateDevicePolicyConfigurationRequest(input)
3018	return out, req.Send()
3019}
3020
3021// UpdateDevicePolicyConfigurationWithContext is the same as UpdateDevicePolicyConfiguration with the addition of
3022// the ability to pass a context and additional request options.
3023//
3024// See UpdateDevicePolicyConfiguration for details on how to use this API operation.
3025//
3026// The context must be non-nil and will be used for request cancellation. If
3027// the context is nil a panic will occur. In the future the SDK may create
3028// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3029// for more information on using Contexts.
3030func (c *WorkLink) UpdateDevicePolicyConfigurationWithContext(ctx aws.Context, input *UpdateDevicePolicyConfigurationInput, opts ...request.Option) (*UpdateDevicePolicyConfigurationOutput, error) {
3031	req, out := c.UpdateDevicePolicyConfigurationRequest(input)
3032	req.SetContext(ctx)
3033	req.ApplyOptions(opts...)
3034	return out, req.Send()
3035}
3036
3037const opUpdateDomainMetadata = "UpdateDomainMetadata"
3038
3039// UpdateDomainMetadataRequest generates a "aws/request.Request" representing the
3040// client's request for the UpdateDomainMetadata operation. The "output" return
3041// value will be populated with the request's response once the request completes
3042// successfully.
3043//
3044// Use "Send" method on the returned Request to send the API call to the service.
3045// the "output" return value is not valid until after Send returns without error.
3046//
3047// See UpdateDomainMetadata for more information on using the UpdateDomainMetadata
3048// API call, and error handling.
3049//
3050// This method is useful when you want to inject custom logic or configuration
3051// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3052//
3053//
3054//    // Example sending a request using the UpdateDomainMetadataRequest method.
3055//    req, resp := client.UpdateDomainMetadataRequest(params)
3056//
3057//    err := req.Send()
3058//    if err == nil { // resp is now filled
3059//        fmt.Println(resp)
3060//    }
3061//
3062// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateDomainMetadata
3063func (c *WorkLink) UpdateDomainMetadataRequest(input *UpdateDomainMetadataInput) (req *request.Request, output *UpdateDomainMetadataOutput) {
3064	op := &request.Operation{
3065		Name:       opUpdateDomainMetadata,
3066		HTTPMethod: "POST",
3067		HTTPPath:   "/updateDomainMetadata",
3068	}
3069
3070	if input == nil {
3071		input = &UpdateDomainMetadataInput{}
3072	}
3073
3074	output = &UpdateDomainMetadataOutput{}
3075	req = c.newRequest(op, input, output)
3076	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3077	return
3078}
3079
3080// UpdateDomainMetadata API operation for Amazon WorkLink.
3081//
3082// Updates domain metadata, such as DisplayName.
3083//
3084// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3085// with awserr.Error's Code and Message methods to get detailed information about
3086// the error.
3087//
3088// See the AWS API reference guide for Amazon WorkLink's
3089// API operation UpdateDomainMetadata for usage and error information.
3090//
3091// Returned Error Types:
3092//   * UnauthorizedException
3093//   You are not authorized to perform this action.
3094//
3095//   * InternalServerErrorException
3096//   The service is temporarily unavailable.
3097//
3098//   * InvalidRequestException
3099//   The request is not valid.
3100//
3101//   * ResourceNotFoundException
3102//   The requested resource was not found.
3103//
3104//   * TooManyRequestsException
3105//   The number of requests exceeds the limit.
3106//
3107// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateDomainMetadata
3108func (c *WorkLink) UpdateDomainMetadata(input *UpdateDomainMetadataInput) (*UpdateDomainMetadataOutput, error) {
3109	req, out := c.UpdateDomainMetadataRequest(input)
3110	return out, req.Send()
3111}
3112
3113// UpdateDomainMetadataWithContext is the same as UpdateDomainMetadata with the addition of
3114// the ability to pass a context and additional request options.
3115//
3116// See UpdateDomainMetadata for details on how to use this API operation.
3117//
3118// The context must be non-nil and will be used for request cancellation. If
3119// the context is nil a panic will occur. In the future the SDK may create
3120// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3121// for more information on using Contexts.
3122func (c *WorkLink) UpdateDomainMetadataWithContext(ctx aws.Context, input *UpdateDomainMetadataInput, opts ...request.Option) (*UpdateDomainMetadataOutput, error) {
3123	req, out := c.UpdateDomainMetadataRequest(input)
3124	req.SetContext(ctx)
3125	req.ApplyOptions(opts...)
3126	return out, req.Send()
3127}
3128
3129const opUpdateFleetMetadata = "UpdateFleetMetadata"
3130
3131// UpdateFleetMetadataRequest generates a "aws/request.Request" representing the
3132// client's request for the UpdateFleetMetadata operation. The "output" return
3133// value will be populated with the request's response once the request completes
3134// successfully.
3135//
3136// Use "Send" method on the returned Request to send the API call to the service.
3137// the "output" return value is not valid until after Send returns without error.
3138//
3139// See UpdateFleetMetadata for more information on using the UpdateFleetMetadata
3140// API call, and error handling.
3141//
3142// This method is useful when you want to inject custom logic or configuration
3143// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3144//
3145//
3146//    // Example sending a request using the UpdateFleetMetadataRequest method.
3147//    req, resp := client.UpdateFleetMetadataRequest(params)
3148//
3149//    err := req.Send()
3150//    if err == nil { // resp is now filled
3151//        fmt.Println(resp)
3152//    }
3153//
3154// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateFleetMetadata
3155func (c *WorkLink) UpdateFleetMetadataRequest(input *UpdateFleetMetadataInput) (req *request.Request, output *UpdateFleetMetadataOutput) {
3156	op := &request.Operation{
3157		Name:       opUpdateFleetMetadata,
3158		HTTPMethod: "POST",
3159		HTTPPath:   "/UpdateFleetMetadata",
3160	}
3161
3162	if input == nil {
3163		input = &UpdateFleetMetadataInput{}
3164	}
3165
3166	output = &UpdateFleetMetadataOutput{}
3167	req = c.newRequest(op, input, output)
3168	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3169	return
3170}
3171
3172// UpdateFleetMetadata API operation for Amazon WorkLink.
3173//
3174// Updates fleet metadata, such as DisplayName.
3175//
3176// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3177// with awserr.Error's Code and Message methods to get detailed information about
3178// the error.
3179//
3180// See the AWS API reference guide for Amazon WorkLink's
3181// API operation UpdateFleetMetadata for usage and error information.
3182//
3183// Returned Error Types:
3184//   * UnauthorizedException
3185//   You are not authorized to perform this action.
3186//
3187//   * InternalServerErrorException
3188//   The service is temporarily unavailable.
3189//
3190//   * InvalidRequestException
3191//   The request is not valid.
3192//
3193//   * ResourceNotFoundException
3194//   The requested resource was not found.
3195//
3196//   * TooManyRequestsException
3197//   The number of requests exceeds the limit.
3198//
3199// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateFleetMetadata
3200func (c *WorkLink) UpdateFleetMetadata(input *UpdateFleetMetadataInput) (*UpdateFleetMetadataOutput, error) {
3201	req, out := c.UpdateFleetMetadataRequest(input)
3202	return out, req.Send()
3203}
3204
3205// UpdateFleetMetadataWithContext is the same as UpdateFleetMetadata with the addition of
3206// the ability to pass a context and additional request options.
3207//
3208// See UpdateFleetMetadata for details on how to use this API operation.
3209//
3210// The context must be non-nil and will be used for request cancellation. If
3211// the context is nil a panic will occur. In the future the SDK may create
3212// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3213// for more information on using Contexts.
3214func (c *WorkLink) UpdateFleetMetadataWithContext(ctx aws.Context, input *UpdateFleetMetadataInput, opts ...request.Option) (*UpdateFleetMetadataOutput, error) {
3215	req, out := c.UpdateFleetMetadataRequest(input)
3216	req.SetContext(ctx)
3217	req.ApplyOptions(opts...)
3218	return out, req.Send()
3219}
3220
3221const opUpdateIdentityProviderConfiguration = "UpdateIdentityProviderConfiguration"
3222
3223// UpdateIdentityProviderConfigurationRequest generates a "aws/request.Request" representing the
3224// client's request for the UpdateIdentityProviderConfiguration operation. The "output" return
3225// value will be populated with the request's response once the request completes
3226// successfully.
3227//
3228// Use "Send" method on the returned Request to send the API call to the service.
3229// the "output" return value is not valid until after Send returns without error.
3230//
3231// See UpdateIdentityProviderConfiguration for more information on using the UpdateIdentityProviderConfiguration
3232// API call, and error handling.
3233//
3234// This method is useful when you want to inject custom logic or configuration
3235// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3236//
3237//
3238//    // Example sending a request using the UpdateIdentityProviderConfigurationRequest method.
3239//    req, resp := client.UpdateIdentityProviderConfigurationRequest(params)
3240//
3241//    err := req.Send()
3242//    if err == nil { // resp is now filled
3243//        fmt.Println(resp)
3244//    }
3245//
3246// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateIdentityProviderConfiguration
3247func (c *WorkLink) UpdateIdentityProviderConfigurationRequest(input *UpdateIdentityProviderConfigurationInput) (req *request.Request, output *UpdateIdentityProviderConfigurationOutput) {
3248	op := &request.Operation{
3249		Name:       opUpdateIdentityProviderConfiguration,
3250		HTTPMethod: "POST",
3251		HTTPPath:   "/updateIdentityProviderConfiguration",
3252	}
3253
3254	if input == nil {
3255		input = &UpdateIdentityProviderConfigurationInput{}
3256	}
3257
3258	output = &UpdateIdentityProviderConfigurationOutput{}
3259	req = c.newRequest(op, input, output)
3260	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3261	return
3262}
3263
3264// UpdateIdentityProviderConfiguration API operation for Amazon WorkLink.
3265//
3266// Updates the identity provider configuration for the fleet.
3267//
3268// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3269// with awserr.Error's Code and Message methods to get detailed information about
3270// the error.
3271//
3272// See the AWS API reference guide for Amazon WorkLink's
3273// API operation UpdateIdentityProviderConfiguration for usage and error information.
3274//
3275// Returned Error Types:
3276//   * UnauthorizedException
3277//   You are not authorized to perform this action.
3278//
3279//   * InternalServerErrorException
3280//   The service is temporarily unavailable.
3281//
3282//   * InvalidRequestException
3283//   The request is not valid.
3284//
3285//   * ResourceNotFoundException
3286//   The requested resource was not found.
3287//
3288//   * TooManyRequestsException
3289//   The number of requests exceeds the limit.
3290//
3291// See also, https://docs.aws.amazon.com/goto/WebAPI/worklink-2018-09-25/UpdateIdentityProviderConfiguration
3292func (c *WorkLink) UpdateIdentityProviderConfiguration(input *UpdateIdentityProviderConfigurationInput) (*UpdateIdentityProviderConfigurationOutput, error) {
3293	req, out := c.UpdateIdentityProviderConfigurationRequest(input)
3294	return out, req.Send()
3295}
3296
3297// UpdateIdentityProviderConfigurationWithContext is the same as UpdateIdentityProviderConfiguration with the addition of
3298// the ability to pass a context and additional request options.
3299//
3300// See UpdateIdentityProviderConfiguration for details on how to use this API operation.
3301//
3302// The context must be non-nil and will be used for request cancellation. If
3303// the context is nil a panic will occur. In the future the SDK may create
3304// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3305// for more information on using Contexts.
3306func (c *WorkLink) UpdateIdentityProviderConfigurationWithContext(ctx aws.Context, input *UpdateIdentityProviderConfigurationInput, opts ...request.Option) (*UpdateIdentityProviderConfigurationOutput, error) {
3307	req, out := c.UpdateIdentityProviderConfigurationRequest(input)
3308	req.SetContext(ctx)
3309	req.ApplyOptions(opts...)
3310	return out, req.Send()
3311}
3312
3313type AssociateDomainInput struct {
3314	_ struct{} `type:"structure"`
3315
3316	// The ARN of an issued ACM certificate that is valid for the domain being associated.
3317	//
3318	// AcmCertificateArn is a required field
3319	AcmCertificateArn *string `type:"string" required:"true"`
3320
3321	// The name to display.
3322	DisplayName *string `type:"string"`
3323
3324	// The fully qualified domain name (FQDN).
3325	//
3326	// DomainName is a required field
3327	DomainName *string `min:"1" type:"string" required:"true"`
3328
3329	// The Amazon Resource Name (ARN) of the fleet.
3330	//
3331	// FleetArn is a required field
3332	FleetArn *string `min:"20" type:"string" required:"true"`
3333}
3334
3335// String returns the string representation
3336func (s AssociateDomainInput) String() string {
3337	return awsutil.Prettify(s)
3338}
3339
3340// GoString returns the string representation
3341func (s AssociateDomainInput) GoString() string {
3342	return s.String()
3343}
3344
3345// Validate inspects the fields of the type to determine if they are valid.
3346func (s *AssociateDomainInput) Validate() error {
3347	invalidParams := request.ErrInvalidParams{Context: "AssociateDomainInput"}
3348	if s.AcmCertificateArn == nil {
3349		invalidParams.Add(request.NewErrParamRequired("AcmCertificateArn"))
3350	}
3351	if s.DomainName == nil {
3352		invalidParams.Add(request.NewErrParamRequired("DomainName"))
3353	}
3354	if s.DomainName != nil && len(*s.DomainName) < 1 {
3355		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
3356	}
3357	if s.FleetArn == nil {
3358		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3359	}
3360	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3361		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3362	}
3363
3364	if invalidParams.Len() > 0 {
3365		return invalidParams
3366	}
3367	return nil
3368}
3369
3370// SetAcmCertificateArn sets the AcmCertificateArn field's value.
3371func (s *AssociateDomainInput) SetAcmCertificateArn(v string) *AssociateDomainInput {
3372	s.AcmCertificateArn = &v
3373	return s
3374}
3375
3376// SetDisplayName sets the DisplayName field's value.
3377func (s *AssociateDomainInput) SetDisplayName(v string) *AssociateDomainInput {
3378	s.DisplayName = &v
3379	return s
3380}
3381
3382// SetDomainName sets the DomainName field's value.
3383func (s *AssociateDomainInput) SetDomainName(v string) *AssociateDomainInput {
3384	s.DomainName = &v
3385	return s
3386}
3387
3388// SetFleetArn sets the FleetArn field's value.
3389func (s *AssociateDomainInput) SetFleetArn(v string) *AssociateDomainInput {
3390	s.FleetArn = &v
3391	return s
3392}
3393
3394type AssociateDomainOutput struct {
3395	_ struct{} `type:"structure"`
3396}
3397
3398// String returns the string representation
3399func (s AssociateDomainOutput) String() string {
3400	return awsutil.Prettify(s)
3401}
3402
3403// GoString returns the string representation
3404func (s AssociateDomainOutput) GoString() string {
3405	return s.String()
3406}
3407
3408type AssociateWebsiteAuthorizationProviderInput struct {
3409	_ struct{} `type:"structure"`
3410
3411	// The authorization provider type.
3412	//
3413	// AuthorizationProviderType is a required field
3414	AuthorizationProviderType *string `type:"string" required:"true" enum:"AuthorizationProviderType"`
3415
3416	// The domain name of the authorization provider. This applies only to SAML-based
3417	// authorization providers.
3418	DomainName *string `min:"1" type:"string"`
3419
3420	// The ARN of the fleet.
3421	//
3422	// FleetArn is a required field
3423	FleetArn *string `min:"20" type:"string" required:"true"`
3424}
3425
3426// String returns the string representation
3427func (s AssociateWebsiteAuthorizationProviderInput) String() string {
3428	return awsutil.Prettify(s)
3429}
3430
3431// GoString returns the string representation
3432func (s AssociateWebsiteAuthorizationProviderInput) GoString() string {
3433	return s.String()
3434}
3435
3436// Validate inspects the fields of the type to determine if they are valid.
3437func (s *AssociateWebsiteAuthorizationProviderInput) Validate() error {
3438	invalidParams := request.ErrInvalidParams{Context: "AssociateWebsiteAuthorizationProviderInput"}
3439	if s.AuthorizationProviderType == nil {
3440		invalidParams.Add(request.NewErrParamRequired("AuthorizationProviderType"))
3441	}
3442	if s.DomainName != nil && len(*s.DomainName) < 1 {
3443		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
3444	}
3445	if s.FleetArn == nil {
3446		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3447	}
3448	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3449		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3450	}
3451
3452	if invalidParams.Len() > 0 {
3453		return invalidParams
3454	}
3455	return nil
3456}
3457
3458// SetAuthorizationProviderType sets the AuthorizationProviderType field's value.
3459func (s *AssociateWebsiteAuthorizationProviderInput) SetAuthorizationProviderType(v string) *AssociateWebsiteAuthorizationProviderInput {
3460	s.AuthorizationProviderType = &v
3461	return s
3462}
3463
3464// SetDomainName sets the DomainName field's value.
3465func (s *AssociateWebsiteAuthorizationProviderInput) SetDomainName(v string) *AssociateWebsiteAuthorizationProviderInput {
3466	s.DomainName = &v
3467	return s
3468}
3469
3470// SetFleetArn sets the FleetArn field's value.
3471func (s *AssociateWebsiteAuthorizationProviderInput) SetFleetArn(v string) *AssociateWebsiteAuthorizationProviderInput {
3472	s.FleetArn = &v
3473	return s
3474}
3475
3476type AssociateWebsiteAuthorizationProviderOutput struct {
3477	_ struct{} `type:"structure"`
3478
3479	// A unique identifier for the authorization provider.
3480	AuthorizationProviderId *string `min:"1" type:"string"`
3481}
3482
3483// String returns the string representation
3484func (s AssociateWebsiteAuthorizationProviderOutput) String() string {
3485	return awsutil.Prettify(s)
3486}
3487
3488// GoString returns the string representation
3489func (s AssociateWebsiteAuthorizationProviderOutput) GoString() string {
3490	return s.String()
3491}
3492
3493// SetAuthorizationProviderId sets the AuthorizationProviderId field's value.
3494func (s *AssociateWebsiteAuthorizationProviderOutput) SetAuthorizationProviderId(v string) *AssociateWebsiteAuthorizationProviderOutput {
3495	s.AuthorizationProviderId = &v
3496	return s
3497}
3498
3499type AssociateWebsiteCertificateAuthorityInput struct {
3500	_ struct{} `type:"structure"`
3501
3502	// The root certificate of the CA.
3503	//
3504	// Certificate is a required field
3505	Certificate *string `min:"1" type:"string" required:"true"`
3506
3507	// The certificate name to display.
3508	DisplayName *string `type:"string"`
3509
3510	// The ARN of the fleet.
3511	//
3512	// FleetArn is a required field
3513	FleetArn *string `min:"20" type:"string" required:"true"`
3514}
3515
3516// String returns the string representation
3517func (s AssociateWebsiteCertificateAuthorityInput) String() string {
3518	return awsutil.Prettify(s)
3519}
3520
3521// GoString returns the string representation
3522func (s AssociateWebsiteCertificateAuthorityInput) GoString() string {
3523	return s.String()
3524}
3525
3526// Validate inspects the fields of the type to determine if they are valid.
3527func (s *AssociateWebsiteCertificateAuthorityInput) Validate() error {
3528	invalidParams := request.ErrInvalidParams{Context: "AssociateWebsiteCertificateAuthorityInput"}
3529	if s.Certificate == nil {
3530		invalidParams.Add(request.NewErrParamRequired("Certificate"))
3531	}
3532	if s.Certificate != nil && len(*s.Certificate) < 1 {
3533		invalidParams.Add(request.NewErrParamMinLen("Certificate", 1))
3534	}
3535	if s.FleetArn == nil {
3536		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3537	}
3538	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3539		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3540	}
3541
3542	if invalidParams.Len() > 0 {
3543		return invalidParams
3544	}
3545	return nil
3546}
3547
3548// SetCertificate sets the Certificate field's value.
3549func (s *AssociateWebsiteCertificateAuthorityInput) SetCertificate(v string) *AssociateWebsiteCertificateAuthorityInput {
3550	s.Certificate = &v
3551	return s
3552}
3553
3554// SetDisplayName sets the DisplayName field's value.
3555func (s *AssociateWebsiteCertificateAuthorityInput) SetDisplayName(v string) *AssociateWebsiteCertificateAuthorityInput {
3556	s.DisplayName = &v
3557	return s
3558}
3559
3560// SetFleetArn sets the FleetArn field's value.
3561func (s *AssociateWebsiteCertificateAuthorityInput) SetFleetArn(v string) *AssociateWebsiteCertificateAuthorityInput {
3562	s.FleetArn = &v
3563	return s
3564}
3565
3566type AssociateWebsiteCertificateAuthorityOutput struct {
3567	_ struct{} `type:"structure"`
3568
3569	// A unique identifier for the CA.
3570	WebsiteCaId *string `min:"1" type:"string"`
3571}
3572
3573// String returns the string representation
3574func (s AssociateWebsiteCertificateAuthorityOutput) String() string {
3575	return awsutil.Prettify(s)
3576}
3577
3578// GoString returns the string representation
3579func (s AssociateWebsiteCertificateAuthorityOutput) GoString() string {
3580	return s.String()
3581}
3582
3583// SetWebsiteCaId sets the WebsiteCaId field's value.
3584func (s *AssociateWebsiteCertificateAuthorityOutput) SetWebsiteCaId(v string) *AssociateWebsiteCertificateAuthorityOutput {
3585	s.WebsiteCaId = &v
3586	return s
3587}
3588
3589type CreateFleetInput struct {
3590	_ struct{} `type:"structure"`
3591
3592	// The fleet name to display.
3593	DisplayName *string `type:"string"`
3594
3595	// A unique name for the fleet.
3596	//
3597	// FleetName is a required field
3598	FleetName *string `min:"1" type:"string" required:"true"`
3599
3600	// The option to optimize for better performance by routing traffic through
3601	// the closest AWS Region to users, which may be outside of your home Region.
3602	OptimizeForEndUserLocation *bool `type:"boolean"`
3603
3604	// The tags to add to the resource. A tag is a key-value pair.
3605	Tags map[string]*string `min:"1" type:"map"`
3606}
3607
3608// String returns the string representation
3609func (s CreateFleetInput) String() string {
3610	return awsutil.Prettify(s)
3611}
3612
3613// GoString returns the string representation
3614func (s CreateFleetInput) GoString() string {
3615	return s.String()
3616}
3617
3618// Validate inspects the fields of the type to determine if they are valid.
3619func (s *CreateFleetInput) Validate() error {
3620	invalidParams := request.ErrInvalidParams{Context: "CreateFleetInput"}
3621	if s.FleetName == nil {
3622		invalidParams.Add(request.NewErrParamRequired("FleetName"))
3623	}
3624	if s.FleetName != nil && len(*s.FleetName) < 1 {
3625		invalidParams.Add(request.NewErrParamMinLen("FleetName", 1))
3626	}
3627	if s.Tags != nil && len(s.Tags) < 1 {
3628		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
3629	}
3630
3631	if invalidParams.Len() > 0 {
3632		return invalidParams
3633	}
3634	return nil
3635}
3636
3637// SetDisplayName sets the DisplayName field's value.
3638func (s *CreateFleetInput) SetDisplayName(v string) *CreateFleetInput {
3639	s.DisplayName = &v
3640	return s
3641}
3642
3643// SetFleetName sets the FleetName field's value.
3644func (s *CreateFleetInput) SetFleetName(v string) *CreateFleetInput {
3645	s.FleetName = &v
3646	return s
3647}
3648
3649// SetOptimizeForEndUserLocation sets the OptimizeForEndUserLocation field's value.
3650func (s *CreateFleetInput) SetOptimizeForEndUserLocation(v bool) *CreateFleetInput {
3651	s.OptimizeForEndUserLocation = &v
3652	return s
3653}
3654
3655// SetTags sets the Tags field's value.
3656func (s *CreateFleetInput) SetTags(v map[string]*string) *CreateFleetInput {
3657	s.Tags = v
3658	return s
3659}
3660
3661type CreateFleetOutput struct {
3662	_ struct{} `type:"structure"`
3663
3664	// The Amazon Resource Name (ARN) of the fleet.
3665	FleetArn *string `min:"20" type:"string"`
3666}
3667
3668// String returns the string representation
3669func (s CreateFleetOutput) String() string {
3670	return awsutil.Prettify(s)
3671}
3672
3673// GoString returns the string representation
3674func (s CreateFleetOutput) GoString() string {
3675	return s.String()
3676}
3677
3678// SetFleetArn sets the FleetArn field's value.
3679func (s *CreateFleetOutput) SetFleetArn(v string) *CreateFleetOutput {
3680	s.FleetArn = &v
3681	return s
3682}
3683
3684type DeleteFleetInput struct {
3685	_ struct{} `type:"structure"`
3686
3687	// The ARN of the fleet.
3688	//
3689	// FleetArn is a required field
3690	FleetArn *string `min:"20" type:"string" required:"true"`
3691}
3692
3693// String returns the string representation
3694func (s DeleteFleetInput) String() string {
3695	return awsutil.Prettify(s)
3696}
3697
3698// GoString returns the string representation
3699func (s DeleteFleetInput) GoString() string {
3700	return s.String()
3701}
3702
3703// Validate inspects the fields of the type to determine if they are valid.
3704func (s *DeleteFleetInput) Validate() error {
3705	invalidParams := request.ErrInvalidParams{Context: "DeleteFleetInput"}
3706	if s.FleetArn == nil {
3707		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3708	}
3709	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3710		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3711	}
3712
3713	if invalidParams.Len() > 0 {
3714		return invalidParams
3715	}
3716	return nil
3717}
3718
3719// SetFleetArn sets the FleetArn field's value.
3720func (s *DeleteFleetInput) SetFleetArn(v string) *DeleteFleetInput {
3721	s.FleetArn = &v
3722	return s
3723}
3724
3725type DeleteFleetOutput struct {
3726	_ struct{} `type:"structure"`
3727}
3728
3729// String returns the string representation
3730func (s DeleteFleetOutput) String() string {
3731	return awsutil.Prettify(s)
3732}
3733
3734// GoString returns the string representation
3735func (s DeleteFleetOutput) GoString() string {
3736	return s.String()
3737}
3738
3739type DescribeAuditStreamConfigurationInput struct {
3740	_ struct{} `type:"structure"`
3741
3742	// The ARN of the fleet.
3743	//
3744	// FleetArn is a required field
3745	FleetArn *string `min:"20" type:"string" required:"true"`
3746}
3747
3748// String returns the string representation
3749func (s DescribeAuditStreamConfigurationInput) String() string {
3750	return awsutil.Prettify(s)
3751}
3752
3753// GoString returns the string representation
3754func (s DescribeAuditStreamConfigurationInput) GoString() string {
3755	return s.String()
3756}
3757
3758// Validate inspects the fields of the type to determine if they are valid.
3759func (s *DescribeAuditStreamConfigurationInput) Validate() error {
3760	invalidParams := request.ErrInvalidParams{Context: "DescribeAuditStreamConfigurationInput"}
3761	if s.FleetArn == nil {
3762		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3763	}
3764	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3765		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3766	}
3767
3768	if invalidParams.Len() > 0 {
3769		return invalidParams
3770	}
3771	return nil
3772}
3773
3774// SetFleetArn sets the FleetArn field's value.
3775func (s *DescribeAuditStreamConfigurationInput) SetFleetArn(v string) *DescribeAuditStreamConfigurationInput {
3776	s.FleetArn = &v
3777	return s
3778}
3779
3780type DescribeAuditStreamConfigurationOutput struct {
3781	_ struct{} `type:"structure"`
3782
3783	// The ARN of the Amazon Kinesis data stream that will receive the audit events.
3784	AuditStreamArn *string `type:"string"`
3785}
3786
3787// String returns the string representation
3788func (s DescribeAuditStreamConfigurationOutput) String() string {
3789	return awsutil.Prettify(s)
3790}
3791
3792// GoString returns the string representation
3793func (s DescribeAuditStreamConfigurationOutput) GoString() string {
3794	return s.String()
3795}
3796
3797// SetAuditStreamArn sets the AuditStreamArn field's value.
3798func (s *DescribeAuditStreamConfigurationOutput) SetAuditStreamArn(v string) *DescribeAuditStreamConfigurationOutput {
3799	s.AuditStreamArn = &v
3800	return s
3801}
3802
3803type DescribeCompanyNetworkConfigurationInput struct {
3804	_ struct{} `type:"structure"`
3805
3806	// The ARN of the fleet.
3807	//
3808	// FleetArn is a required field
3809	FleetArn *string `min:"20" type:"string" required:"true"`
3810}
3811
3812// String returns the string representation
3813func (s DescribeCompanyNetworkConfigurationInput) String() string {
3814	return awsutil.Prettify(s)
3815}
3816
3817// GoString returns the string representation
3818func (s DescribeCompanyNetworkConfigurationInput) GoString() string {
3819	return s.String()
3820}
3821
3822// Validate inspects the fields of the type to determine if they are valid.
3823func (s *DescribeCompanyNetworkConfigurationInput) Validate() error {
3824	invalidParams := request.ErrInvalidParams{Context: "DescribeCompanyNetworkConfigurationInput"}
3825	if s.FleetArn == nil {
3826		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3827	}
3828	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3829		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3830	}
3831
3832	if invalidParams.Len() > 0 {
3833		return invalidParams
3834	}
3835	return nil
3836}
3837
3838// SetFleetArn sets the FleetArn field's value.
3839func (s *DescribeCompanyNetworkConfigurationInput) SetFleetArn(v string) *DescribeCompanyNetworkConfigurationInput {
3840	s.FleetArn = &v
3841	return s
3842}
3843
3844type DescribeCompanyNetworkConfigurationOutput struct {
3845	_ struct{} `type:"structure"`
3846
3847	// The security groups associated with access to the provided subnets.
3848	SecurityGroupIds []*string `type:"list"`
3849
3850	// The subnets used for X-ENI connections from Amazon WorkLink rendering containers.
3851	SubnetIds []*string `type:"list"`
3852
3853	// The VPC with connectivity to associated websites.
3854	VpcId *string `type:"string"`
3855}
3856
3857// String returns the string representation
3858func (s DescribeCompanyNetworkConfigurationOutput) String() string {
3859	return awsutil.Prettify(s)
3860}
3861
3862// GoString returns the string representation
3863func (s DescribeCompanyNetworkConfigurationOutput) GoString() string {
3864	return s.String()
3865}
3866
3867// SetSecurityGroupIds sets the SecurityGroupIds field's value.
3868func (s *DescribeCompanyNetworkConfigurationOutput) SetSecurityGroupIds(v []*string) *DescribeCompanyNetworkConfigurationOutput {
3869	s.SecurityGroupIds = v
3870	return s
3871}
3872
3873// SetSubnetIds sets the SubnetIds field's value.
3874func (s *DescribeCompanyNetworkConfigurationOutput) SetSubnetIds(v []*string) *DescribeCompanyNetworkConfigurationOutput {
3875	s.SubnetIds = v
3876	return s
3877}
3878
3879// SetVpcId sets the VpcId field's value.
3880func (s *DescribeCompanyNetworkConfigurationOutput) SetVpcId(v string) *DescribeCompanyNetworkConfigurationOutput {
3881	s.VpcId = &v
3882	return s
3883}
3884
3885type DescribeDeviceInput struct {
3886	_ struct{} `type:"structure"`
3887
3888	// A unique identifier for a registered user's device.
3889	//
3890	// DeviceId is a required field
3891	DeviceId *string `min:"1" type:"string" required:"true"`
3892
3893	// The ARN of the fleet.
3894	//
3895	// FleetArn is a required field
3896	FleetArn *string `min:"20" type:"string" required:"true"`
3897}
3898
3899// String returns the string representation
3900func (s DescribeDeviceInput) String() string {
3901	return awsutil.Prettify(s)
3902}
3903
3904// GoString returns the string representation
3905func (s DescribeDeviceInput) GoString() string {
3906	return s.String()
3907}
3908
3909// Validate inspects the fields of the type to determine if they are valid.
3910func (s *DescribeDeviceInput) Validate() error {
3911	invalidParams := request.ErrInvalidParams{Context: "DescribeDeviceInput"}
3912	if s.DeviceId == nil {
3913		invalidParams.Add(request.NewErrParamRequired("DeviceId"))
3914	}
3915	if s.DeviceId != nil && len(*s.DeviceId) < 1 {
3916		invalidParams.Add(request.NewErrParamMinLen("DeviceId", 1))
3917	}
3918	if s.FleetArn == nil {
3919		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
3920	}
3921	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
3922		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
3923	}
3924
3925	if invalidParams.Len() > 0 {
3926		return invalidParams
3927	}
3928	return nil
3929}
3930
3931// SetDeviceId sets the DeviceId field's value.
3932func (s *DescribeDeviceInput) SetDeviceId(v string) *DescribeDeviceInput {
3933	s.DeviceId = &v
3934	return s
3935}
3936
3937// SetFleetArn sets the FleetArn field's value.
3938func (s *DescribeDeviceInput) SetFleetArn(v string) *DescribeDeviceInput {
3939	s.FleetArn = &v
3940	return s
3941}
3942
3943type DescribeDeviceOutput struct {
3944	_ struct{} `type:"structure"`
3945
3946	// The date that the device first signed in to Amazon WorkLink.
3947	FirstAccessedTime *time.Time `type:"timestamp"`
3948
3949	// The date that the device last accessed Amazon WorkLink.
3950	LastAccessedTime *time.Time `type:"timestamp"`
3951
3952	// The manufacturer of the device.
3953	Manufacturer *string `min:"1" type:"string"`
3954
3955	// The model of the device.
3956	Model *string `min:"1" type:"string"`
3957
3958	// The operating system of the device.
3959	OperatingSystem *string `min:"1" type:"string"`
3960
3961	// The operating system version of the device.
3962	OperatingSystemVersion *string `min:"1" type:"string"`
3963
3964	// The operating system patch level of the device.
3965	PatchLevel *string `min:"1" type:"string"`
3966
3967	// The current state of the device.
3968	Status *string `type:"string" enum:"DeviceStatus"`
3969
3970	// The user name associated with the device.
3971	Username *string `min:"1" type:"string"`
3972}
3973
3974// String returns the string representation
3975func (s DescribeDeviceOutput) String() string {
3976	return awsutil.Prettify(s)
3977}
3978
3979// GoString returns the string representation
3980func (s DescribeDeviceOutput) GoString() string {
3981	return s.String()
3982}
3983
3984// SetFirstAccessedTime sets the FirstAccessedTime field's value.
3985func (s *DescribeDeviceOutput) SetFirstAccessedTime(v time.Time) *DescribeDeviceOutput {
3986	s.FirstAccessedTime = &v
3987	return s
3988}
3989
3990// SetLastAccessedTime sets the LastAccessedTime field's value.
3991func (s *DescribeDeviceOutput) SetLastAccessedTime(v time.Time) *DescribeDeviceOutput {
3992	s.LastAccessedTime = &v
3993	return s
3994}
3995
3996// SetManufacturer sets the Manufacturer field's value.
3997func (s *DescribeDeviceOutput) SetManufacturer(v string) *DescribeDeviceOutput {
3998	s.Manufacturer = &v
3999	return s
4000}
4001
4002// SetModel sets the Model field's value.
4003func (s *DescribeDeviceOutput) SetModel(v string) *DescribeDeviceOutput {
4004	s.Model = &v
4005	return s
4006}
4007
4008// SetOperatingSystem sets the OperatingSystem field's value.
4009func (s *DescribeDeviceOutput) SetOperatingSystem(v string) *DescribeDeviceOutput {
4010	s.OperatingSystem = &v
4011	return s
4012}
4013
4014// SetOperatingSystemVersion sets the OperatingSystemVersion field's value.
4015func (s *DescribeDeviceOutput) SetOperatingSystemVersion(v string) *DescribeDeviceOutput {
4016	s.OperatingSystemVersion = &v
4017	return s
4018}
4019
4020// SetPatchLevel sets the PatchLevel field's value.
4021func (s *DescribeDeviceOutput) SetPatchLevel(v string) *DescribeDeviceOutput {
4022	s.PatchLevel = &v
4023	return s
4024}
4025
4026// SetStatus sets the Status field's value.
4027func (s *DescribeDeviceOutput) SetStatus(v string) *DescribeDeviceOutput {
4028	s.Status = &v
4029	return s
4030}
4031
4032// SetUsername sets the Username field's value.
4033func (s *DescribeDeviceOutput) SetUsername(v string) *DescribeDeviceOutput {
4034	s.Username = &v
4035	return s
4036}
4037
4038type DescribeDevicePolicyConfigurationInput struct {
4039	_ struct{} `type:"structure"`
4040
4041	// The ARN of the fleet.
4042	//
4043	// FleetArn is a required field
4044	FleetArn *string `min:"20" type:"string" required:"true"`
4045}
4046
4047// String returns the string representation
4048func (s DescribeDevicePolicyConfigurationInput) String() string {
4049	return awsutil.Prettify(s)
4050}
4051
4052// GoString returns the string representation
4053func (s DescribeDevicePolicyConfigurationInput) GoString() string {
4054	return s.String()
4055}
4056
4057// Validate inspects the fields of the type to determine if they are valid.
4058func (s *DescribeDevicePolicyConfigurationInput) Validate() error {
4059	invalidParams := request.ErrInvalidParams{Context: "DescribeDevicePolicyConfigurationInput"}
4060	if s.FleetArn == nil {
4061		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4062	}
4063	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4064		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4065	}
4066
4067	if invalidParams.Len() > 0 {
4068		return invalidParams
4069	}
4070	return nil
4071}
4072
4073// SetFleetArn sets the FleetArn field's value.
4074func (s *DescribeDevicePolicyConfigurationInput) SetFleetArn(v string) *DescribeDevicePolicyConfigurationInput {
4075	s.FleetArn = &v
4076	return s
4077}
4078
4079type DescribeDevicePolicyConfigurationOutput struct {
4080	_ struct{} `type:"structure"`
4081
4082	// The certificate chain, including intermediate certificates and the root certificate
4083	// authority certificate used to issue device certificates.
4084	DeviceCaCertificate *string `min:"1" type:"string"`
4085}
4086
4087// String returns the string representation
4088func (s DescribeDevicePolicyConfigurationOutput) String() string {
4089	return awsutil.Prettify(s)
4090}
4091
4092// GoString returns the string representation
4093func (s DescribeDevicePolicyConfigurationOutput) GoString() string {
4094	return s.String()
4095}
4096
4097// SetDeviceCaCertificate sets the DeviceCaCertificate field's value.
4098func (s *DescribeDevicePolicyConfigurationOutput) SetDeviceCaCertificate(v string) *DescribeDevicePolicyConfigurationOutput {
4099	s.DeviceCaCertificate = &v
4100	return s
4101}
4102
4103type DescribeDomainInput struct {
4104	_ struct{} `type:"structure"`
4105
4106	// The name of the domain.
4107	//
4108	// DomainName is a required field
4109	DomainName *string `min:"1" type:"string" required:"true"`
4110
4111	// The ARN of the fleet.
4112	//
4113	// FleetArn is a required field
4114	FleetArn *string `min:"20" type:"string" required:"true"`
4115}
4116
4117// String returns the string representation
4118func (s DescribeDomainInput) String() string {
4119	return awsutil.Prettify(s)
4120}
4121
4122// GoString returns the string representation
4123func (s DescribeDomainInput) GoString() string {
4124	return s.String()
4125}
4126
4127// Validate inspects the fields of the type to determine if they are valid.
4128func (s *DescribeDomainInput) Validate() error {
4129	invalidParams := request.ErrInvalidParams{Context: "DescribeDomainInput"}
4130	if s.DomainName == nil {
4131		invalidParams.Add(request.NewErrParamRequired("DomainName"))
4132	}
4133	if s.DomainName != nil && len(*s.DomainName) < 1 {
4134		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
4135	}
4136	if s.FleetArn == nil {
4137		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4138	}
4139	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4140		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4141	}
4142
4143	if invalidParams.Len() > 0 {
4144		return invalidParams
4145	}
4146	return nil
4147}
4148
4149// SetDomainName sets the DomainName field's value.
4150func (s *DescribeDomainInput) SetDomainName(v string) *DescribeDomainInput {
4151	s.DomainName = &v
4152	return s
4153}
4154
4155// SetFleetArn sets the FleetArn field's value.
4156func (s *DescribeDomainInput) SetFleetArn(v string) *DescribeDomainInput {
4157	s.FleetArn = &v
4158	return s
4159}
4160
4161type DescribeDomainOutput struct {
4162	_ struct{} `type:"structure"`
4163
4164	// The ARN of an issued ACM certificate that is valid for the domain being associated.
4165	AcmCertificateArn *string `type:"string"`
4166
4167	// The time that the domain was added.
4168	CreatedTime *time.Time `type:"timestamp"`
4169
4170	// The name to display.
4171	DisplayName *string `type:"string"`
4172
4173	// The name of the domain.
4174	DomainName *string `min:"1" type:"string"`
4175
4176	// The current state for the domain.
4177	DomainStatus *string `type:"string" enum:"DomainStatus"`
4178}
4179
4180// String returns the string representation
4181func (s DescribeDomainOutput) String() string {
4182	return awsutil.Prettify(s)
4183}
4184
4185// GoString returns the string representation
4186func (s DescribeDomainOutput) GoString() string {
4187	return s.String()
4188}
4189
4190// SetAcmCertificateArn sets the AcmCertificateArn field's value.
4191func (s *DescribeDomainOutput) SetAcmCertificateArn(v string) *DescribeDomainOutput {
4192	s.AcmCertificateArn = &v
4193	return s
4194}
4195
4196// SetCreatedTime sets the CreatedTime field's value.
4197func (s *DescribeDomainOutput) SetCreatedTime(v time.Time) *DescribeDomainOutput {
4198	s.CreatedTime = &v
4199	return s
4200}
4201
4202// SetDisplayName sets the DisplayName field's value.
4203func (s *DescribeDomainOutput) SetDisplayName(v string) *DescribeDomainOutput {
4204	s.DisplayName = &v
4205	return s
4206}
4207
4208// SetDomainName sets the DomainName field's value.
4209func (s *DescribeDomainOutput) SetDomainName(v string) *DescribeDomainOutput {
4210	s.DomainName = &v
4211	return s
4212}
4213
4214// SetDomainStatus sets the DomainStatus field's value.
4215func (s *DescribeDomainOutput) SetDomainStatus(v string) *DescribeDomainOutput {
4216	s.DomainStatus = &v
4217	return s
4218}
4219
4220type DescribeFleetMetadataInput struct {
4221	_ struct{} `type:"structure"`
4222
4223	// The Amazon Resource Name (ARN) of the fleet.
4224	//
4225	// FleetArn is a required field
4226	FleetArn *string `min:"20" type:"string" required:"true"`
4227}
4228
4229// String returns the string representation
4230func (s DescribeFleetMetadataInput) String() string {
4231	return awsutil.Prettify(s)
4232}
4233
4234// GoString returns the string representation
4235func (s DescribeFleetMetadataInput) GoString() string {
4236	return s.String()
4237}
4238
4239// Validate inspects the fields of the type to determine if they are valid.
4240func (s *DescribeFleetMetadataInput) Validate() error {
4241	invalidParams := request.ErrInvalidParams{Context: "DescribeFleetMetadataInput"}
4242	if s.FleetArn == nil {
4243		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4244	}
4245	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4246		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4247	}
4248
4249	if invalidParams.Len() > 0 {
4250		return invalidParams
4251	}
4252	return nil
4253}
4254
4255// SetFleetArn sets the FleetArn field's value.
4256func (s *DescribeFleetMetadataInput) SetFleetArn(v string) *DescribeFleetMetadataInput {
4257	s.FleetArn = &v
4258	return s
4259}
4260
4261type DescribeFleetMetadataOutput struct {
4262	_ struct{} `type:"structure"`
4263
4264	// The identifier used by users to sign in to the Amazon WorkLink app.
4265	CompanyCode *string `min:"1" type:"string"`
4266
4267	// The time that the fleet was created.
4268	CreatedTime *time.Time `type:"timestamp"`
4269
4270	// The name to display.
4271	DisplayName *string `type:"string"`
4272
4273	// The name of the fleet.
4274	FleetName *string `min:"1" type:"string"`
4275
4276	// The current state of the fleet.
4277	FleetStatus *string `type:"string" enum:"FleetStatus"`
4278
4279	// The time that the fleet was last updated.
4280	LastUpdatedTime *time.Time `type:"timestamp"`
4281
4282	// The option to optimize for better performance by routing traffic through
4283	// the closest AWS Region to users, which may be outside of your home Region.
4284	OptimizeForEndUserLocation *bool `type:"boolean"`
4285
4286	// The tags attached to the resource. A tag is a key-value pair.
4287	Tags map[string]*string `min:"1" type:"map"`
4288}
4289
4290// String returns the string representation
4291func (s DescribeFleetMetadataOutput) String() string {
4292	return awsutil.Prettify(s)
4293}
4294
4295// GoString returns the string representation
4296func (s DescribeFleetMetadataOutput) GoString() string {
4297	return s.String()
4298}
4299
4300// SetCompanyCode sets the CompanyCode field's value.
4301func (s *DescribeFleetMetadataOutput) SetCompanyCode(v string) *DescribeFleetMetadataOutput {
4302	s.CompanyCode = &v
4303	return s
4304}
4305
4306// SetCreatedTime sets the CreatedTime field's value.
4307func (s *DescribeFleetMetadataOutput) SetCreatedTime(v time.Time) *DescribeFleetMetadataOutput {
4308	s.CreatedTime = &v
4309	return s
4310}
4311
4312// SetDisplayName sets the DisplayName field's value.
4313func (s *DescribeFleetMetadataOutput) SetDisplayName(v string) *DescribeFleetMetadataOutput {
4314	s.DisplayName = &v
4315	return s
4316}
4317
4318// SetFleetName sets the FleetName field's value.
4319func (s *DescribeFleetMetadataOutput) SetFleetName(v string) *DescribeFleetMetadataOutput {
4320	s.FleetName = &v
4321	return s
4322}
4323
4324// SetFleetStatus sets the FleetStatus field's value.
4325func (s *DescribeFleetMetadataOutput) SetFleetStatus(v string) *DescribeFleetMetadataOutput {
4326	s.FleetStatus = &v
4327	return s
4328}
4329
4330// SetLastUpdatedTime sets the LastUpdatedTime field's value.
4331func (s *DescribeFleetMetadataOutput) SetLastUpdatedTime(v time.Time) *DescribeFleetMetadataOutput {
4332	s.LastUpdatedTime = &v
4333	return s
4334}
4335
4336// SetOptimizeForEndUserLocation sets the OptimizeForEndUserLocation field's value.
4337func (s *DescribeFleetMetadataOutput) SetOptimizeForEndUserLocation(v bool) *DescribeFleetMetadataOutput {
4338	s.OptimizeForEndUserLocation = &v
4339	return s
4340}
4341
4342// SetTags sets the Tags field's value.
4343func (s *DescribeFleetMetadataOutput) SetTags(v map[string]*string) *DescribeFleetMetadataOutput {
4344	s.Tags = v
4345	return s
4346}
4347
4348type DescribeIdentityProviderConfigurationInput struct {
4349	_ struct{} `type:"structure"`
4350
4351	// The ARN of the fleet.
4352	//
4353	// FleetArn is a required field
4354	FleetArn *string `min:"20" type:"string" required:"true"`
4355}
4356
4357// String returns the string representation
4358func (s DescribeIdentityProviderConfigurationInput) String() string {
4359	return awsutil.Prettify(s)
4360}
4361
4362// GoString returns the string representation
4363func (s DescribeIdentityProviderConfigurationInput) GoString() string {
4364	return s.String()
4365}
4366
4367// Validate inspects the fields of the type to determine if they are valid.
4368func (s *DescribeIdentityProviderConfigurationInput) Validate() error {
4369	invalidParams := request.ErrInvalidParams{Context: "DescribeIdentityProviderConfigurationInput"}
4370	if s.FleetArn == nil {
4371		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4372	}
4373	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4374		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4375	}
4376
4377	if invalidParams.Len() > 0 {
4378		return invalidParams
4379	}
4380	return nil
4381}
4382
4383// SetFleetArn sets the FleetArn field's value.
4384func (s *DescribeIdentityProviderConfigurationInput) SetFleetArn(v string) *DescribeIdentityProviderConfigurationInput {
4385	s.FleetArn = &v
4386	return s
4387}
4388
4389type DescribeIdentityProviderConfigurationOutput struct {
4390	_ struct{} `type:"structure"`
4391
4392	// The SAML metadata document provided by the user’s identity provider.
4393	IdentityProviderSamlMetadata *string `min:"1" type:"string"`
4394
4395	// The type of identity provider.
4396	IdentityProviderType *string `type:"string" enum:"IdentityProviderType"`
4397
4398	// The SAML metadata document uploaded to the user’s identity provider.
4399	ServiceProviderSamlMetadata *string `min:"1" type:"string"`
4400}
4401
4402// String returns the string representation
4403func (s DescribeIdentityProviderConfigurationOutput) String() string {
4404	return awsutil.Prettify(s)
4405}
4406
4407// GoString returns the string representation
4408func (s DescribeIdentityProviderConfigurationOutput) GoString() string {
4409	return s.String()
4410}
4411
4412// SetIdentityProviderSamlMetadata sets the IdentityProviderSamlMetadata field's value.
4413func (s *DescribeIdentityProviderConfigurationOutput) SetIdentityProviderSamlMetadata(v string) *DescribeIdentityProviderConfigurationOutput {
4414	s.IdentityProviderSamlMetadata = &v
4415	return s
4416}
4417
4418// SetIdentityProviderType sets the IdentityProviderType field's value.
4419func (s *DescribeIdentityProviderConfigurationOutput) SetIdentityProviderType(v string) *DescribeIdentityProviderConfigurationOutput {
4420	s.IdentityProviderType = &v
4421	return s
4422}
4423
4424// SetServiceProviderSamlMetadata sets the ServiceProviderSamlMetadata field's value.
4425func (s *DescribeIdentityProviderConfigurationOutput) SetServiceProviderSamlMetadata(v string) *DescribeIdentityProviderConfigurationOutput {
4426	s.ServiceProviderSamlMetadata = &v
4427	return s
4428}
4429
4430type DescribeWebsiteCertificateAuthorityInput struct {
4431	_ struct{} `type:"structure"`
4432
4433	// The ARN of the fleet.
4434	//
4435	// FleetArn is a required field
4436	FleetArn *string `min:"20" type:"string" required:"true"`
4437
4438	// A unique identifier for the certificate authority.
4439	//
4440	// WebsiteCaId is a required field
4441	WebsiteCaId *string `min:"1" type:"string" required:"true"`
4442}
4443
4444// String returns the string representation
4445func (s DescribeWebsiteCertificateAuthorityInput) String() string {
4446	return awsutil.Prettify(s)
4447}
4448
4449// GoString returns the string representation
4450func (s DescribeWebsiteCertificateAuthorityInput) GoString() string {
4451	return s.String()
4452}
4453
4454// Validate inspects the fields of the type to determine if they are valid.
4455func (s *DescribeWebsiteCertificateAuthorityInput) Validate() error {
4456	invalidParams := request.ErrInvalidParams{Context: "DescribeWebsiteCertificateAuthorityInput"}
4457	if s.FleetArn == nil {
4458		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4459	}
4460	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4461		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4462	}
4463	if s.WebsiteCaId == nil {
4464		invalidParams.Add(request.NewErrParamRequired("WebsiteCaId"))
4465	}
4466	if s.WebsiteCaId != nil && len(*s.WebsiteCaId) < 1 {
4467		invalidParams.Add(request.NewErrParamMinLen("WebsiteCaId", 1))
4468	}
4469
4470	if invalidParams.Len() > 0 {
4471		return invalidParams
4472	}
4473	return nil
4474}
4475
4476// SetFleetArn sets the FleetArn field's value.
4477func (s *DescribeWebsiteCertificateAuthorityInput) SetFleetArn(v string) *DescribeWebsiteCertificateAuthorityInput {
4478	s.FleetArn = &v
4479	return s
4480}
4481
4482// SetWebsiteCaId sets the WebsiteCaId field's value.
4483func (s *DescribeWebsiteCertificateAuthorityInput) SetWebsiteCaId(v string) *DescribeWebsiteCertificateAuthorityInput {
4484	s.WebsiteCaId = &v
4485	return s
4486}
4487
4488type DescribeWebsiteCertificateAuthorityOutput struct {
4489	_ struct{} `type:"structure"`
4490
4491	// The root certificate of the certificate authority.
4492	Certificate *string `min:"1" type:"string"`
4493
4494	// The time that the certificate authority was added.
4495	CreatedTime *time.Time `type:"timestamp"`
4496
4497	// The certificate name to display.
4498	DisplayName *string `type:"string"`
4499}
4500
4501// String returns the string representation
4502func (s DescribeWebsiteCertificateAuthorityOutput) String() string {
4503	return awsutil.Prettify(s)
4504}
4505
4506// GoString returns the string representation
4507func (s DescribeWebsiteCertificateAuthorityOutput) GoString() string {
4508	return s.String()
4509}
4510
4511// SetCertificate sets the Certificate field's value.
4512func (s *DescribeWebsiteCertificateAuthorityOutput) SetCertificate(v string) *DescribeWebsiteCertificateAuthorityOutput {
4513	s.Certificate = &v
4514	return s
4515}
4516
4517// SetCreatedTime sets the CreatedTime field's value.
4518func (s *DescribeWebsiteCertificateAuthorityOutput) SetCreatedTime(v time.Time) *DescribeWebsiteCertificateAuthorityOutput {
4519	s.CreatedTime = &v
4520	return s
4521}
4522
4523// SetDisplayName sets the DisplayName field's value.
4524func (s *DescribeWebsiteCertificateAuthorityOutput) SetDisplayName(v string) *DescribeWebsiteCertificateAuthorityOutput {
4525	s.DisplayName = &v
4526	return s
4527}
4528
4529// The summary of devices.
4530type DeviceSummary struct {
4531	_ struct{} `type:"structure"`
4532
4533	// The ID of the device.
4534	DeviceId *string `min:"1" type:"string"`
4535
4536	// The status of the device.
4537	DeviceStatus *string `type:"string" enum:"DeviceStatus"`
4538}
4539
4540// String returns the string representation
4541func (s DeviceSummary) String() string {
4542	return awsutil.Prettify(s)
4543}
4544
4545// GoString returns the string representation
4546func (s DeviceSummary) GoString() string {
4547	return s.String()
4548}
4549
4550// SetDeviceId sets the DeviceId field's value.
4551func (s *DeviceSummary) SetDeviceId(v string) *DeviceSummary {
4552	s.DeviceId = &v
4553	return s
4554}
4555
4556// SetDeviceStatus sets the DeviceStatus field's value.
4557func (s *DeviceSummary) SetDeviceStatus(v string) *DeviceSummary {
4558	s.DeviceStatus = &v
4559	return s
4560}
4561
4562type DisassociateDomainInput struct {
4563	_ struct{} `type:"structure"`
4564
4565	// The name of the domain.
4566	//
4567	// DomainName is a required field
4568	DomainName *string `min:"1" type:"string" required:"true"`
4569
4570	// The ARN of the fleet.
4571	//
4572	// FleetArn is a required field
4573	FleetArn *string `min:"20" type:"string" required:"true"`
4574}
4575
4576// String returns the string representation
4577func (s DisassociateDomainInput) String() string {
4578	return awsutil.Prettify(s)
4579}
4580
4581// GoString returns the string representation
4582func (s DisassociateDomainInput) GoString() string {
4583	return s.String()
4584}
4585
4586// Validate inspects the fields of the type to determine if they are valid.
4587func (s *DisassociateDomainInput) Validate() error {
4588	invalidParams := request.ErrInvalidParams{Context: "DisassociateDomainInput"}
4589	if s.DomainName == nil {
4590		invalidParams.Add(request.NewErrParamRequired("DomainName"))
4591	}
4592	if s.DomainName != nil && len(*s.DomainName) < 1 {
4593		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
4594	}
4595	if s.FleetArn == nil {
4596		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4597	}
4598	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4599		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4600	}
4601
4602	if invalidParams.Len() > 0 {
4603		return invalidParams
4604	}
4605	return nil
4606}
4607
4608// SetDomainName sets the DomainName field's value.
4609func (s *DisassociateDomainInput) SetDomainName(v string) *DisassociateDomainInput {
4610	s.DomainName = &v
4611	return s
4612}
4613
4614// SetFleetArn sets the FleetArn field's value.
4615func (s *DisassociateDomainInput) SetFleetArn(v string) *DisassociateDomainInput {
4616	s.FleetArn = &v
4617	return s
4618}
4619
4620type DisassociateDomainOutput struct {
4621	_ struct{} `type:"structure"`
4622}
4623
4624// String returns the string representation
4625func (s DisassociateDomainOutput) String() string {
4626	return awsutil.Prettify(s)
4627}
4628
4629// GoString returns the string representation
4630func (s DisassociateDomainOutput) GoString() string {
4631	return s.String()
4632}
4633
4634type DisassociateWebsiteAuthorizationProviderInput struct {
4635	_ struct{} `type:"structure"`
4636
4637	// A unique identifier for the authorization provider.
4638	//
4639	// AuthorizationProviderId is a required field
4640	AuthorizationProviderId *string `min:"1" type:"string" required:"true"`
4641
4642	// The ARN of the fleet.
4643	//
4644	// FleetArn is a required field
4645	FleetArn *string `min:"20" type:"string" required:"true"`
4646}
4647
4648// String returns the string representation
4649func (s DisassociateWebsiteAuthorizationProviderInput) String() string {
4650	return awsutil.Prettify(s)
4651}
4652
4653// GoString returns the string representation
4654func (s DisassociateWebsiteAuthorizationProviderInput) GoString() string {
4655	return s.String()
4656}
4657
4658// Validate inspects the fields of the type to determine if they are valid.
4659func (s *DisassociateWebsiteAuthorizationProviderInput) Validate() error {
4660	invalidParams := request.ErrInvalidParams{Context: "DisassociateWebsiteAuthorizationProviderInput"}
4661	if s.AuthorizationProviderId == nil {
4662		invalidParams.Add(request.NewErrParamRequired("AuthorizationProviderId"))
4663	}
4664	if s.AuthorizationProviderId != nil && len(*s.AuthorizationProviderId) < 1 {
4665		invalidParams.Add(request.NewErrParamMinLen("AuthorizationProviderId", 1))
4666	}
4667	if s.FleetArn == nil {
4668		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4669	}
4670	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4671		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4672	}
4673
4674	if invalidParams.Len() > 0 {
4675		return invalidParams
4676	}
4677	return nil
4678}
4679
4680// SetAuthorizationProviderId sets the AuthorizationProviderId field's value.
4681func (s *DisassociateWebsiteAuthorizationProviderInput) SetAuthorizationProviderId(v string) *DisassociateWebsiteAuthorizationProviderInput {
4682	s.AuthorizationProviderId = &v
4683	return s
4684}
4685
4686// SetFleetArn sets the FleetArn field's value.
4687func (s *DisassociateWebsiteAuthorizationProviderInput) SetFleetArn(v string) *DisassociateWebsiteAuthorizationProviderInput {
4688	s.FleetArn = &v
4689	return s
4690}
4691
4692type DisassociateWebsiteAuthorizationProviderOutput struct {
4693	_ struct{} `type:"structure"`
4694}
4695
4696// String returns the string representation
4697func (s DisassociateWebsiteAuthorizationProviderOutput) String() string {
4698	return awsutil.Prettify(s)
4699}
4700
4701// GoString returns the string representation
4702func (s DisassociateWebsiteAuthorizationProviderOutput) GoString() string {
4703	return s.String()
4704}
4705
4706type DisassociateWebsiteCertificateAuthorityInput struct {
4707	_ struct{} `type:"structure"`
4708
4709	// The ARN of the fleet.
4710	//
4711	// FleetArn is a required field
4712	FleetArn *string `min:"20" type:"string" required:"true"`
4713
4714	// A unique identifier for the CA.
4715	//
4716	// WebsiteCaId is a required field
4717	WebsiteCaId *string `min:"1" type:"string" required:"true"`
4718}
4719
4720// String returns the string representation
4721func (s DisassociateWebsiteCertificateAuthorityInput) String() string {
4722	return awsutil.Prettify(s)
4723}
4724
4725// GoString returns the string representation
4726func (s DisassociateWebsiteCertificateAuthorityInput) GoString() string {
4727	return s.String()
4728}
4729
4730// Validate inspects the fields of the type to determine if they are valid.
4731func (s *DisassociateWebsiteCertificateAuthorityInput) Validate() error {
4732	invalidParams := request.ErrInvalidParams{Context: "DisassociateWebsiteCertificateAuthorityInput"}
4733	if s.FleetArn == nil {
4734		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
4735	}
4736	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
4737		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
4738	}
4739	if s.WebsiteCaId == nil {
4740		invalidParams.Add(request.NewErrParamRequired("WebsiteCaId"))
4741	}
4742	if s.WebsiteCaId != nil && len(*s.WebsiteCaId) < 1 {
4743		invalidParams.Add(request.NewErrParamMinLen("WebsiteCaId", 1))
4744	}
4745
4746	if invalidParams.Len() > 0 {
4747		return invalidParams
4748	}
4749	return nil
4750}
4751
4752// SetFleetArn sets the FleetArn field's value.
4753func (s *DisassociateWebsiteCertificateAuthorityInput) SetFleetArn(v string) *DisassociateWebsiteCertificateAuthorityInput {
4754	s.FleetArn = &v
4755	return s
4756}
4757
4758// SetWebsiteCaId sets the WebsiteCaId field's value.
4759func (s *DisassociateWebsiteCertificateAuthorityInput) SetWebsiteCaId(v string) *DisassociateWebsiteCertificateAuthorityInput {
4760	s.WebsiteCaId = &v
4761	return s
4762}
4763
4764type DisassociateWebsiteCertificateAuthorityOutput struct {
4765	_ struct{} `type:"structure"`
4766}
4767
4768// String returns the string representation
4769func (s DisassociateWebsiteCertificateAuthorityOutput) String() string {
4770	return awsutil.Prettify(s)
4771}
4772
4773// GoString returns the string representation
4774func (s DisassociateWebsiteCertificateAuthorityOutput) GoString() string {
4775	return s.String()
4776}
4777
4778// The summary of the domain.
4779type DomainSummary struct {
4780	_ struct{} `type:"structure"`
4781
4782	// The time that the domain was created.
4783	//
4784	// CreatedTime is a required field
4785	CreatedTime *time.Time `type:"timestamp" required:"true"`
4786
4787	// The name to display.
4788	DisplayName *string `type:"string"`
4789
4790	// The name of the domain.
4791	//
4792	// DomainName is a required field
4793	DomainName *string `min:"1" type:"string" required:"true"`
4794
4795	// The status of the domain.
4796	//
4797	// DomainStatus is a required field
4798	DomainStatus *string `type:"string" required:"true" enum:"DomainStatus"`
4799}
4800
4801// String returns the string representation
4802func (s DomainSummary) String() string {
4803	return awsutil.Prettify(s)
4804}
4805
4806// GoString returns the string representation
4807func (s DomainSummary) GoString() string {
4808	return s.String()
4809}
4810
4811// SetCreatedTime sets the CreatedTime field's value.
4812func (s *DomainSummary) SetCreatedTime(v time.Time) *DomainSummary {
4813	s.CreatedTime = &v
4814	return s
4815}
4816
4817// SetDisplayName sets the DisplayName field's value.
4818func (s *DomainSummary) SetDisplayName(v string) *DomainSummary {
4819	s.DisplayName = &v
4820	return s
4821}
4822
4823// SetDomainName sets the DomainName field's value.
4824func (s *DomainSummary) SetDomainName(v string) *DomainSummary {
4825	s.DomainName = &v
4826	return s
4827}
4828
4829// SetDomainStatus sets the DomainStatus field's value.
4830func (s *DomainSummary) SetDomainStatus(v string) *DomainSummary {
4831	s.DomainStatus = &v
4832	return s
4833}
4834
4835// The summary of the fleet.
4836type FleetSummary struct {
4837	_ struct{} `type:"structure"`
4838
4839	// The identifier used by users to sign into the Amazon WorkLink app.
4840	CompanyCode *string `min:"1" type:"string"`
4841
4842	// The time when the fleet was created.
4843	CreatedTime *time.Time `type:"timestamp"`
4844
4845	// The name of the fleet to display.
4846	DisplayName *string `type:"string"`
4847
4848	// The Amazon Resource Name (ARN) of the fleet.
4849	FleetArn *string `min:"20" type:"string"`
4850
4851	// The name of the fleet.
4852	FleetName *string `min:"1" type:"string"`
4853
4854	// The status of the fleet.
4855	FleetStatus *string `type:"string" enum:"FleetStatus"`
4856
4857	// The time when the fleet was last updated.
4858	LastUpdatedTime *time.Time `type:"timestamp"`
4859
4860	// The tags attached to the resource. A tag is a key-value pair.
4861	Tags map[string]*string `min:"1" type:"map"`
4862}
4863
4864// String returns the string representation
4865func (s FleetSummary) String() string {
4866	return awsutil.Prettify(s)
4867}
4868
4869// GoString returns the string representation
4870func (s FleetSummary) GoString() string {
4871	return s.String()
4872}
4873
4874// SetCompanyCode sets the CompanyCode field's value.
4875func (s *FleetSummary) SetCompanyCode(v string) *FleetSummary {
4876	s.CompanyCode = &v
4877	return s
4878}
4879
4880// SetCreatedTime sets the CreatedTime field's value.
4881func (s *FleetSummary) SetCreatedTime(v time.Time) *FleetSummary {
4882	s.CreatedTime = &v
4883	return s
4884}
4885
4886// SetDisplayName sets the DisplayName field's value.
4887func (s *FleetSummary) SetDisplayName(v string) *FleetSummary {
4888	s.DisplayName = &v
4889	return s
4890}
4891
4892// SetFleetArn sets the FleetArn field's value.
4893func (s *FleetSummary) SetFleetArn(v string) *FleetSummary {
4894	s.FleetArn = &v
4895	return s
4896}
4897
4898// SetFleetName sets the FleetName field's value.
4899func (s *FleetSummary) SetFleetName(v string) *FleetSummary {
4900	s.FleetName = &v
4901	return s
4902}
4903
4904// SetFleetStatus sets the FleetStatus field's value.
4905func (s *FleetSummary) SetFleetStatus(v string) *FleetSummary {
4906	s.FleetStatus = &v
4907	return s
4908}
4909
4910// SetLastUpdatedTime sets the LastUpdatedTime field's value.
4911func (s *FleetSummary) SetLastUpdatedTime(v time.Time) *FleetSummary {
4912	s.LastUpdatedTime = &v
4913	return s
4914}
4915
4916// SetTags sets the Tags field's value.
4917func (s *FleetSummary) SetTags(v map[string]*string) *FleetSummary {
4918	s.Tags = v
4919	return s
4920}
4921
4922// The service is temporarily unavailable.
4923type InternalServerErrorException struct {
4924	_            struct{}                  `type:"structure"`
4925	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4926
4927	Message_ *string `locationName:"Message" type:"string"`
4928}
4929
4930// String returns the string representation
4931func (s InternalServerErrorException) String() string {
4932	return awsutil.Prettify(s)
4933}
4934
4935// GoString returns the string representation
4936func (s InternalServerErrorException) GoString() string {
4937	return s.String()
4938}
4939
4940func newErrorInternalServerErrorException(v protocol.ResponseMetadata) error {
4941	return &InternalServerErrorException{
4942		RespMetadata: v,
4943	}
4944}
4945
4946// Code returns the exception type name.
4947func (s *InternalServerErrorException) Code() string {
4948	return "InternalServerErrorException"
4949}
4950
4951// Message returns the exception's message.
4952func (s *InternalServerErrorException) Message() string {
4953	if s.Message_ != nil {
4954		return *s.Message_
4955	}
4956	return ""
4957}
4958
4959// OrigErr always returns nil, satisfies awserr.Error interface.
4960func (s *InternalServerErrorException) OrigErr() error {
4961	return nil
4962}
4963
4964func (s *InternalServerErrorException) Error() string {
4965	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4966}
4967
4968// Status code returns the HTTP status code for the request's response error.
4969func (s *InternalServerErrorException) StatusCode() int {
4970	return s.RespMetadata.StatusCode
4971}
4972
4973// RequestID returns the service's response RequestID for request.
4974func (s *InternalServerErrorException) RequestID() string {
4975	return s.RespMetadata.RequestID
4976}
4977
4978// The request is not valid.
4979type InvalidRequestException struct {
4980	_            struct{}                  `type:"structure"`
4981	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4982
4983	Message_ *string `locationName:"Message" type:"string"`
4984}
4985
4986// String returns the string representation
4987func (s InvalidRequestException) String() string {
4988	return awsutil.Prettify(s)
4989}
4990
4991// GoString returns the string representation
4992func (s InvalidRequestException) GoString() string {
4993	return s.String()
4994}
4995
4996func newErrorInvalidRequestException(v protocol.ResponseMetadata) error {
4997	return &InvalidRequestException{
4998		RespMetadata: v,
4999	}
5000}
5001
5002// Code returns the exception type name.
5003func (s *InvalidRequestException) Code() string {
5004	return "InvalidRequestException"
5005}
5006
5007// Message returns the exception's message.
5008func (s *InvalidRequestException) Message() string {
5009	if s.Message_ != nil {
5010		return *s.Message_
5011	}
5012	return ""
5013}
5014
5015// OrigErr always returns nil, satisfies awserr.Error interface.
5016func (s *InvalidRequestException) OrigErr() error {
5017	return nil
5018}
5019
5020func (s *InvalidRequestException) Error() string {
5021	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5022}
5023
5024// Status code returns the HTTP status code for the request's response error.
5025func (s *InvalidRequestException) StatusCode() int {
5026	return s.RespMetadata.StatusCode
5027}
5028
5029// RequestID returns the service's response RequestID for request.
5030func (s *InvalidRequestException) RequestID() string {
5031	return s.RespMetadata.RequestID
5032}
5033
5034type ListDevicesInput struct {
5035	_ struct{} `type:"structure"`
5036
5037	// The ARN of the fleet.
5038	//
5039	// FleetArn is a required field
5040	FleetArn *string `min:"20" type:"string" required:"true"`
5041
5042	// The maximum number of results to be included in the next page.
5043	MaxResults *int64 `min:"1" type:"integer"`
5044
5045	// The pagination token used to retrieve the next page of results for this operation.
5046	// If this value is null, it retrieves the first page.
5047	NextToken *string `min:"1" type:"string"`
5048}
5049
5050// String returns the string representation
5051func (s ListDevicesInput) String() string {
5052	return awsutil.Prettify(s)
5053}
5054
5055// GoString returns the string representation
5056func (s ListDevicesInput) GoString() string {
5057	return s.String()
5058}
5059
5060// Validate inspects the fields of the type to determine if they are valid.
5061func (s *ListDevicesInput) Validate() error {
5062	invalidParams := request.ErrInvalidParams{Context: "ListDevicesInput"}
5063	if s.FleetArn == nil {
5064		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5065	}
5066	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5067		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5068	}
5069	if s.MaxResults != nil && *s.MaxResults < 1 {
5070		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5071	}
5072	if s.NextToken != nil && len(*s.NextToken) < 1 {
5073		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5074	}
5075
5076	if invalidParams.Len() > 0 {
5077		return invalidParams
5078	}
5079	return nil
5080}
5081
5082// SetFleetArn sets the FleetArn field's value.
5083func (s *ListDevicesInput) SetFleetArn(v string) *ListDevicesInput {
5084	s.FleetArn = &v
5085	return s
5086}
5087
5088// SetMaxResults sets the MaxResults field's value.
5089func (s *ListDevicesInput) SetMaxResults(v int64) *ListDevicesInput {
5090	s.MaxResults = &v
5091	return s
5092}
5093
5094// SetNextToken sets the NextToken field's value.
5095func (s *ListDevicesInput) SetNextToken(v string) *ListDevicesInput {
5096	s.NextToken = &v
5097	return s
5098}
5099
5100type ListDevicesOutput struct {
5101	_ struct{} `type:"structure"`
5102
5103	// Information about the devices.
5104	Devices []*DeviceSummary `type:"list"`
5105
5106	// The pagination token used to retrieve the next page of results for this operation.
5107	// If there are no more pages, this value is null.
5108	NextToken *string `min:"1" type:"string"`
5109}
5110
5111// String returns the string representation
5112func (s ListDevicesOutput) String() string {
5113	return awsutil.Prettify(s)
5114}
5115
5116// GoString returns the string representation
5117func (s ListDevicesOutput) GoString() string {
5118	return s.String()
5119}
5120
5121// SetDevices sets the Devices field's value.
5122func (s *ListDevicesOutput) SetDevices(v []*DeviceSummary) *ListDevicesOutput {
5123	s.Devices = v
5124	return s
5125}
5126
5127// SetNextToken sets the NextToken field's value.
5128func (s *ListDevicesOutput) SetNextToken(v string) *ListDevicesOutput {
5129	s.NextToken = &v
5130	return s
5131}
5132
5133type ListDomainsInput struct {
5134	_ struct{} `type:"structure"`
5135
5136	// The ARN of the fleet.
5137	//
5138	// FleetArn is a required field
5139	FleetArn *string `min:"20" type:"string" required:"true"`
5140
5141	// The maximum number of results to be included in the next page.
5142	MaxResults *int64 `min:"1" type:"integer"`
5143
5144	// The pagination token used to retrieve the next page of results for this operation.
5145	// If this value is null, it retrieves the first page.
5146	NextToken *string `min:"1" type:"string"`
5147}
5148
5149// String returns the string representation
5150func (s ListDomainsInput) String() string {
5151	return awsutil.Prettify(s)
5152}
5153
5154// GoString returns the string representation
5155func (s ListDomainsInput) GoString() string {
5156	return s.String()
5157}
5158
5159// Validate inspects the fields of the type to determine if they are valid.
5160func (s *ListDomainsInput) Validate() error {
5161	invalidParams := request.ErrInvalidParams{Context: "ListDomainsInput"}
5162	if s.FleetArn == nil {
5163		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5164	}
5165	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5166		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5167	}
5168	if s.MaxResults != nil && *s.MaxResults < 1 {
5169		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5170	}
5171	if s.NextToken != nil && len(*s.NextToken) < 1 {
5172		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5173	}
5174
5175	if invalidParams.Len() > 0 {
5176		return invalidParams
5177	}
5178	return nil
5179}
5180
5181// SetFleetArn sets the FleetArn field's value.
5182func (s *ListDomainsInput) SetFleetArn(v string) *ListDomainsInput {
5183	s.FleetArn = &v
5184	return s
5185}
5186
5187// SetMaxResults sets the MaxResults field's value.
5188func (s *ListDomainsInput) SetMaxResults(v int64) *ListDomainsInput {
5189	s.MaxResults = &v
5190	return s
5191}
5192
5193// SetNextToken sets the NextToken field's value.
5194func (s *ListDomainsInput) SetNextToken(v string) *ListDomainsInput {
5195	s.NextToken = &v
5196	return s
5197}
5198
5199type ListDomainsOutput struct {
5200	_ struct{} `type:"structure"`
5201
5202	// Information about the domains.
5203	Domains []*DomainSummary `type:"list"`
5204
5205	// The pagination token used to retrieve the next page of results for this operation.
5206	// If there are no more pages, this value is null.
5207	NextToken *string `min:"1" type:"string"`
5208}
5209
5210// String returns the string representation
5211func (s ListDomainsOutput) String() string {
5212	return awsutil.Prettify(s)
5213}
5214
5215// GoString returns the string representation
5216func (s ListDomainsOutput) GoString() string {
5217	return s.String()
5218}
5219
5220// SetDomains sets the Domains field's value.
5221func (s *ListDomainsOutput) SetDomains(v []*DomainSummary) *ListDomainsOutput {
5222	s.Domains = v
5223	return s
5224}
5225
5226// SetNextToken sets the NextToken field's value.
5227func (s *ListDomainsOutput) SetNextToken(v string) *ListDomainsOutput {
5228	s.NextToken = &v
5229	return s
5230}
5231
5232type ListFleetsInput struct {
5233	_ struct{} `type:"structure"`
5234
5235	// The maximum number of results to be included in the next page.
5236	MaxResults *int64 `min:"1" type:"integer"`
5237
5238	// The pagination token used to retrieve the next page of results for this operation.
5239	// If this value is null, it retrieves the first page.
5240	NextToken *string `min:"1" type:"string"`
5241}
5242
5243// String returns the string representation
5244func (s ListFleetsInput) String() string {
5245	return awsutil.Prettify(s)
5246}
5247
5248// GoString returns the string representation
5249func (s ListFleetsInput) GoString() string {
5250	return s.String()
5251}
5252
5253// Validate inspects the fields of the type to determine if they are valid.
5254func (s *ListFleetsInput) Validate() error {
5255	invalidParams := request.ErrInvalidParams{Context: "ListFleetsInput"}
5256	if s.MaxResults != nil && *s.MaxResults < 1 {
5257		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5258	}
5259	if s.NextToken != nil && len(*s.NextToken) < 1 {
5260		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5261	}
5262
5263	if invalidParams.Len() > 0 {
5264		return invalidParams
5265	}
5266	return nil
5267}
5268
5269// SetMaxResults sets the MaxResults field's value.
5270func (s *ListFleetsInput) SetMaxResults(v int64) *ListFleetsInput {
5271	s.MaxResults = &v
5272	return s
5273}
5274
5275// SetNextToken sets the NextToken field's value.
5276func (s *ListFleetsInput) SetNextToken(v string) *ListFleetsInput {
5277	s.NextToken = &v
5278	return s
5279}
5280
5281type ListFleetsOutput struct {
5282	_ struct{} `type:"structure"`
5283
5284	// The summary list of the fleets.
5285	FleetSummaryList []*FleetSummary `type:"list"`
5286
5287	// The pagination token used to retrieve the next page of results for this operation.
5288	// If there are no more pages, this value is null.
5289	NextToken *string `min:"1" type:"string"`
5290}
5291
5292// String returns the string representation
5293func (s ListFleetsOutput) String() string {
5294	return awsutil.Prettify(s)
5295}
5296
5297// GoString returns the string representation
5298func (s ListFleetsOutput) GoString() string {
5299	return s.String()
5300}
5301
5302// SetFleetSummaryList sets the FleetSummaryList field's value.
5303func (s *ListFleetsOutput) SetFleetSummaryList(v []*FleetSummary) *ListFleetsOutput {
5304	s.FleetSummaryList = v
5305	return s
5306}
5307
5308// SetNextToken sets the NextToken field's value.
5309func (s *ListFleetsOutput) SetNextToken(v string) *ListFleetsOutput {
5310	s.NextToken = &v
5311	return s
5312}
5313
5314type ListTagsForResourceInput struct {
5315	_ struct{} `type:"structure"`
5316
5317	// The Amazon Resource Name (ARN) of the fleet.
5318	//
5319	// ResourceArn is a required field
5320	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"`
5321}
5322
5323// String returns the string representation
5324func (s ListTagsForResourceInput) String() string {
5325	return awsutil.Prettify(s)
5326}
5327
5328// GoString returns the string representation
5329func (s ListTagsForResourceInput) GoString() string {
5330	return s.String()
5331}
5332
5333// Validate inspects the fields of the type to determine if they are valid.
5334func (s *ListTagsForResourceInput) Validate() error {
5335	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
5336	if s.ResourceArn == nil {
5337		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5338	}
5339	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
5340		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
5341	}
5342
5343	if invalidParams.Len() > 0 {
5344		return invalidParams
5345	}
5346	return nil
5347}
5348
5349// SetResourceArn sets the ResourceArn field's value.
5350func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
5351	s.ResourceArn = &v
5352	return s
5353}
5354
5355type ListTagsForResourceOutput struct {
5356	_ struct{} `type:"structure"`
5357
5358	// The tags attached to the resource. A tag is a key-value pair.
5359	Tags map[string]*string `min:"1" type:"map"`
5360}
5361
5362// String returns the string representation
5363func (s ListTagsForResourceOutput) String() string {
5364	return awsutil.Prettify(s)
5365}
5366
5367// GoString returns the string representation
5368func (s ListTagsForResourceOutput) GoString() string {
5369	return s.String()
5370}
5371
5372// SetTags sets the Tags field's value.
5373func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
5374	s.Tags = v
5375	return s
5376}
5377
5378type ListWebsiteAuthorizationProvidersInput struct {
5379	_ struct{} `type:"structure"`
5380
5381	// The ARN of the fleet.
5382	//
5383	// FleetArn is a required field
5384	FleetArn *string `min:"20" type:"string" required:"true"`
5385
5386	// The maximum number of results to be included in the next page.
5387	MaxResults *int64 `min:"1" type:"integer"`
5388
5389	// The pagination token to use to retrieve the next page of results for this
5390	// operation. If this value is null, it retrieves the first page.
5391	NextToken *string `min:"1" type:"string"`
5392}
5393
5394// String returns the string representation
5395func (s ListWebsiteAuthorizationProvidersInput) String() string {
5396	return awsutil.Prettify(s)
5397}
5398
5399// GoString returns the string representation
5400func (s ListWebsiteAuthorizationProvidersInput) GoString() string {
5401	return s.String()
5402}
5403
5404// Validate inspects the fields of the type to determine if they are valid.
5405func (s *ListWebsiteAuthorizationProvidersInput) Validate() error {
5406	invalidParams := request.ErrInvalidParams{Context: "ListWebsiteAuthorizationProvidersInput"}
5407	if s.FleetArn == nil {
5408		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5409	}
5410	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5411		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5412	}
5413	if s.MaxResults != nil && *s.MaxResults < 1 {
5414		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5415	}
5416	if s.NextToken != nil && len(*s.NextToken) < 1 {
5417		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5418	}
5419
5420	if invalidParams.Len() > 0 {
5421		return invalidParams
5422	}
5423	return nil
5424}
5425
5426// SetFleetArn sets the FleetArn field's value.
5427func (s *ListWebsiteAuthorizationProvidersInput) SetFleetArn(v string) *ListWebsiteAuthorizationProvidersInput {
5428	s.FleetArn = &v
5429	return s
5430}
5431
5432// SetMaxResults sets the MaxResults field's value.
5433func (s *ListWebsiteAuthorizationProvidersInput) SetMaxResults(v int64) *ListWebsiteAuthorizationProvidersInput {
5434	s.MaxResults = &v
5435	return s
5436}
5437
5438// SetNextToken sets the NextToken field's value.
5439func (s *ListWebsiteAuthorizationProvidersInput) SetNextToken(v string) *ListWebsiteAuthorizationProvidersInput {
5440	s.NextToken = &v
5441	return s
5442}
5443
5444type ListWebsiteAuthorizationProvidersOutput struct {
5445	_ struct{} `type:"structure"`
5446
5447	// The pagination token to use to retrieve the next page of results for this
5448	// operation. If this value is null, it retrieves the first page.
5449	NextToken *string `min:"1" type:"string"`
5450
5451	// The website authorization providers.
5452	WebsiteAuthorizationProviders []*WebsiteAuthorizationProviderSummary `type:"list"`
5453}
5454
5455// String returns the string representation
5456func (s ListWebsiteAuthorizationProvidersOutput) String() string {
5457	return awsutil.Prettify(s)
5458}
5459
5460// GoString returns the string representation
5461func (s ListWebsiteAuthorizationProvidersOutput) GoString() string {
5462	return s.String()
5463}
5464
5465// SetNextToken sets the NextToken field's value.
5466func (s *ListWebsiteAuthorizationProvidersOutput) SetNextToken(v string) *ListWebsiteAuthorizationProvidersOutput {
5467	s.NextToken = &v
5468	return s
5469}
5470
5471// SetWebsiteAuthorizationProviders sets the WebsiteAuthorizationProviders field's value.
5472func (s *ListWebsiteAuthorizationProvidersOutput) SetWebsiteAuthorizationProviders(v []*WebsiteAuthorizationProviderSummary) *ListWebsiteAuthorizationProvidersOutput {
5473	s.WebsiteAuthorizationProviders = v
5474	return s
5475}
5476
5477type ListWebsiteCertificateAuthoritiesInput struct {
5478	_ struct{} `type:"structure"`
5479
5480	// The ARN of the fleet.
5481	//
5482	// FleetArn is a required field
5483	FleetArn *string `min:"20" type:"string" required:"true"`
5484
5485	// The maximum number of results to be included in the next page.
5486	MaxResults *int64 `min:"1" type:"integer"`
5487
5488	// The pagination token used to retrieve the next page of results for this operation.
5489	// If this value is null, it retrieves the first page.
5490	NextToken *string `min:"1" type:"string"`
5491}
5492
5493// String returns the string representation
5494func (s ListWebsiteCertificateAuthoritiesInput) String() string {
5495	return awsutil.Prettify(s)
5496}
5497
5498// GoString returns the string representation
5499func (s ListWebsiteCertificateAuthoritiesInput) GoString() string {
5500	return s.String()
5501}
5502
5503// Validate inspects the fields of the type to determine if they are valid.
5504func (s *ListWebsiteCertificateAuthoritiesInput) Validate() error {
5505	invalidParams := request.ErrInvalidParams{Context: "ListWebsiteCertificateAuthoritiesInput"}
5506	if s.FleetArn == nil {
5507		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5508	}
5509	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5510		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5511	}
5512	if s.MaxResults != nil && *s.MaxResults < 1 {
5513		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5514	}
5515	if s.NextToken != nil && len(*s.NextToken) < 1 {
5516		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
5517	}
5518
5519	if invalidParams.Len() > 0 {
5520		return invalidParams
5521	}
5522	return nil
5523}
5524
5525// SetFleetArn sets the FleetArn field's value.
5526func (s *ListWebsiteCertificateAuthoritiesInput) SetFleetArn(v string) *ListWebsiteCertificateAuthoritiesInput {
5527	s.FleetArn = &v
5528	return s
5529}
5530
5531// SetMaxResults sets the MaxResults field's value.
5532func (s *ListWebsiteCertificateAuthoritiesInput) SetMaxResults(v int64) *ListWebsiteCertificateAuthoritiesInput {
5533	s.MaxResults = &v
5534	return s
5535}
5536
5537// SetNextToken sets the NextToken field's value.
5538func (s *ListWebsiteCertificateAuthoritiesInput) SetNextToken(v string) *ListWebsiteCertificateAuthoritiesInput {
5539	s.NextToken = &v
5540	return s
5541}
5542
5543type ListWebsiteCertificateAuthoritiesOutput struct {
5544	_ struct{} `type:"structure"`
5545
5546	// The pagination token used to retrieve the next page of results for this operation.
5547	// If there are no more pages, this value is null.
5548	NextToken *string `min:"1" type:"string"`
5549
5550	// Information about the certificates.
5551	WebsiteCertificateAuthorities []*WebsiteCaSummary `type:"list"`
5552}
5553
5554// String returns the string representation
5555func (s ListWebsiteCertificateAuthoritiesOutput) String() string {
5556	return awsutil.Prettify(s)
5557}
5558
5559// GoString returns the string representation
5560func (s ListWebsiteCertificateAuthoritiesOutput) GoString() string {
5561	return s.String()
5562}
5563
5564// SetNextToken sets the NextToken field's value.
5565func (s *ListWebsiteCertificateAuthoritiesOutput) SetNextToken(v string) *ListWebsiteCertificateAuthoritiesOutput {
5566	s.NextToken = &v
5567	return s
5568}
5569
5570// SetWebsiteCertificateAuthorities sets the WebsiteCertificateAuthorities field's value.
5571func (s *ListWebsiteCertificateAuthoritiesOutput) SetWebsiteCertificateAuthorities(v []*WebsiteCaSummary) *ListWebsiteCertificateAuthoritiesOutput {
5572	s.WebsiteCertificateAuthorities = v
5573	return s
5574}
5575
5576// The resource already exists.
5577type ResourceAlreadyExistsException struct {
5578	_            struct{}                  `type:"structure"`
5579	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5580
5581	Message_ *string `locationName:"Message" type:"string"`
5582}
5583
5584// String returns the string representation
5585func (s ResourceAlreadyExistsException) String() string {
5586	return awsutil.Prettify(s)
5587}
5588
5589// GoString returns the string representation
5590func (s ResourceAlreadyExistsException) GoString() string {
5591	return s.String()
5592}
5593
5594func newErrorResourceAlreadyExistsException(v protocol.ResponseMetadata) error {
5595	return &ResourceAlreadyExistsException{
5596		RespMetadata: v,
5597	}
5598}
5599
5600// Code returns the exception type name.
5601func (s *ResourceAlreadyExistsException) Code() string {
5602	return "ResourceAlreadyExistsException"
5603}
5604
5605// Message returns the exception's message.
5606func (s *ResourceAlreadyExistsException) Message() string {
5607	if s.Message_ != nil {
5608		return *s.Message_
5609	}
5610	return ""
5611}
5612
5613// OrigErr always returns nil, satisfies awserr.Error interface.
5614func (s *ResourceAlreadyExistsException) OrigErr() error {
5615	return nil
5616}
5617
5618func (s *ResourceAlreadyExistsException) Error() string {
5619	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5620}
5621
5622// Status code returns the HTTP status code for the request's response error.
5623func (s *ResourceAlreadyExistsException) StatusCode() int {
5624	return s.RespMetadata.StatusCode
5625}
5626
5627// RequestID returns the service's response RequestID for request.
5628func (s *ResourceAlreadyExistsException) RequestID() string {
5629	return s.RespMetadata.RequestID
5630}
5631
5632// The requested resource was not found.
5633type ResourceNotFoundException struct {
5634	_            struct{}                  `type:"structure"`
5635	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5636
5637	Message_ *string `locationName:"Message" type:"string"`
5638}
5639
5640// String returns the string representation
5641func (s ResourceNotFoundException) String() string {
5642	return awsutil.Prettify(s)
5643}
5644
5645// GoString returns the string representation
5646func (s ResourceNotFoundException) GoString() string {
5647	return s.String()
5648}
5649
5650func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
5651	return &ResourceNotFoundException{
5652		RespMetadata: v,
5653	}
5654}
5655
5656// Code returns the exception type name.
5657func (s *ResourceNotFoundException) Code() string {
5658	return "ResourceNotFoundException"
5659}
5660
5661// Message returns the exception's message.
5662func (s *ResourceNotFoundException) Message() string {
5663	if s.Message_ != nil {
5664		return *s.Message_
5665	}
5666	return ""
5667}
5668
5669// OrigErr always returns nil, satisfies awserr.Error interface.
5670func (s *ResourceNotFoundException) OrigErr() error {
5671	return nil
5672}
5673
5674func (s *ResourceNotFoundException) Error() string {
5675	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5676}
5677
5678// Status code returns the HTTP status code for the request's response error.
5679func (s *ResourceNotFoundException) StatusCode() int {
5680	return s.RespMetadata.StatusCode
5681}
5682
5683// RequestID returns the service's response RequestID for request.
5684func (s *ResourceNotFoundException) RequestID() string {
5685	return s.RespMetadata.RequestID
5686}
5687
5688type RestoreDomainAccessInput struct {
5689	_ struct{} `type:"structure"`
5690
5691	// The name of the domain.
5692	//
5693	// DomainName is a required field
5694	DomainName *string `min:"1" type:"string" required:"true"`
5695
5696	// The ARN of the fleet.
5697	//
5698	// FleetArn is a required field
5699	FleetArn *string `min:"20" type:"string" required:"true"`
5700}
5701
5702// String returns the string representation
5703func (s RestoreDomainAccessInput) String() string {
5704	return awsutil.Prettify(s)
5705}
5706
5707// GoString returns the string representation
5708func (s RestoreDomainAccessInput) GoString() string {
5709	return s.String()
5710}
5711
5712// Validate inspects the fields of the type to determine if they are valid.
5713func (s *RestoreDomainAccessInput) Validate() error {
5714	invalidParams := request.ErrInvalidParams{Context: "RestoreDomainAccessInput"}
5715	if s.DomainName == nil {
5716		invalidParams.Add(request.NewErrParamRequired("DomainName"))
5717	}
5718	if s.DomainName != nil && len(*s.DomainName) < 1 {
5719		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
5720	}
5721	if s.FleetArn == nil {
5722		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5723	}
5724	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5725		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5726	}
5727
5728	if invalidParams.Len() > 0 {
5729		return invalidParams
5730	}
5731	return nil
5732}
5733
5734// SetDomainName sets the DomainName field's value.
5735func (s *RestoreDomainAccessInput) SetDomainName(v string) *RestoreDomainAccessInput {
5736	s.DomainName = &v
5737	return s
5738}
5739
5740// SetFleetArn sets the FleetArn field's value.
5741func (s *RestoreDomainAccessInput) SetFleetArn(v string) *RestoreDomainAccessInput {
5742	s.FleetArn = &v
5743	return s
5744}
5745
5746type RestoreDomainAccessOutput struct {
5747	_ struct{} `type:"structure"`
5748}
5749
5750// String returns the string representation
5751func (s RestoreDomainAccessOutput) String() string {
5752	return awsutil.Prettify(s)
5753}
5754
5755// GoString returns the string representation
5756func (s RestoreDomainAccessOutput) GoString() string {
5757	return s.String()
5758}
5759
5760type RevokeDomainAccessInput struct {
5761	_ struct{} `type:"structure"`
5762
5763	// The name of the domain.
5764	//
5765	// DomainName is a required field
5766	DomainName *string `min:"1" type:"string" required:"true"`
5767
5768	// The ARN of the fleet.
5769	//
5770	// FleetArn is a required field
5771	FleetArn *string `min:"20" type:"string" required:"true"`
5772}
5773
5774// String returns the string representation
5775func (s RevokeDomainAccessInput) String() string {
5776	return awsutil.Prettify(s)
5777}
5778
5779// GoString returns the string representation
5780func (s RevokeDomainAccessInput) GoString() string {
5781	return s.String()
5782}
5783
5784// Validate inspects the fields of the type to determine if they are valid.
5785func (s *RevokeDomainAccessInput) Validate() error {
5786	invalidParams := request.ErrInvalidParams{Context: "RevokeDomainAccessInput"}
5787	if s.DomainName == nil {
5788		invalidParams.Add(request.NewErrParamRequired("DomainName"))
5789	}
5790	if s.DomainName != nil && len(*s.DomainName) < 1 {
5791		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
5792	}
5793	if s.FleetArn == nil {
5794		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5795	}
5796	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5797		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5798	}
5799
5800	if invalidParams.Len() > 0 {
5801		return invalidParams
5802	}
5803	return nil
5804}
5805
5806// SetDomainName sets the DomainName field's value.
5807func (s *RevokeDomainAccessInput) SetDomainName(v string) *RevokeDomainAccessInput {
5808	s.DomainName = &v
5809	return s
5810}
5811
5812// SetFleetArn sets the FleetArn field's value.
5813func (s *RevokeDomainAccessInput) SetFleetArn(v string) *RevokeDomainAccessInput {
5814	s.FleetArn = &v
5815	return s
5816}
5817
5818type RevokeDomainAccessOutput struct {
5819	_ struct{} `type:"structure"`
5820}
5821
5822// String returns the string representation
5823func (s RevokeDomainAccessOutput) String() string {
5824	return awsutil.Prettify(s)
5825}
5826
5827// GoString returns the string representation
5828func (s RevokeDomainAccessOutput) GoString() string {
5829	return s.String()
5830}
5831
5832type SignOutUserInput struct {
5833	_ struct{} `type:"structure"`
5834
5835	// The ARN of the fleet.
5836	//
5837	// FleetArn is a required field
5838	FleetArn *string `min:"20" type:"string" required:"true"`
5839
5840	// The name of the user.
5841	//
5842	// Username is a required field
5843	Username *string `min:"1" type:"string" required:"true"`
5844}
5845
5846// String returns the string representation
5847func (s SignOutUserInput) String() string {
5848	return awsutil.Prettify(s)
5849}
5850
5851// GoString returns the string representation
5852func (s SignOutUserInput) GoString() string {
5853	return s.String()
5854}
5855
5856// Validate inspects the fields of the type to determine if they are valid.
5857func (s *SignOutUserInput) Validate() error {
5858	invalidParams := request.ErrInvalidParams{Context: "SignOutUserInput"}
5859	if s.FleetArn == nil {
5860		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
5861	}
5862	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
5863		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
5864	}
5865	if s.Username == nil {
5866		invalidParams.Add(request.NewErrParamRequired("Username"))
5867	}
5868	if s.Username != nil && len(*s.Username) < 1 {
5869		invalidParams.Add(request.NewErrParamMinLen("Username", 1))
5870	}
5871
5872	if invalidParams.Len() > 0 {
5873		return invalidParams
5874	}
5875	return nil
5876}
5877
5878// SetFleetArn sets the FleetArn field's value.
5879func (s *SignOutUserInput) SetFleetArn(v string) *SignOutUserInput {
5880	s.FleetArn = &v
5881	return s
5882}
5883
5884// SetUsername sets the Username field's value.
5885func (s *SignOutUserInput) SetUsername(v string) *SignOutUserInput {
5886	s.Username = &v
5887	return s
5888}
5889
5890type SignOutUserOutput struct {
5891	_ struct{} `type:"structure"`
5892}
5893
5894// String returns the string representation
5895func (s SignOutUserOutput) String() string {
5896	return awsutil.Prettify(s)
5897}
5898
5899// GoString returns the string representation
5900func (s SignOutUserOutput) GoString() string {
5901	return s.String()
5902}
5903
5904type TagResourceInput struct {
5905	_ struct{} `type:"structure"`
5906
5907	// The Amazon Resource Name (ARN) of the fleet.
5908	//
5909	// ResourceArn is a required field
5910	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"`
5911
5912	// The tags to add to the resource. A tag is a key-value pair.
5913	//
5914	// Tags is a required field
5915	Tags map[string]*string `min:"1" type:"map" required:"true"`
5916}
5917
5918// String returns the string representation
5919func (s TagResourceInput) String() string {
5920	return awsutil.Prettify(s)
5921}
5922
5923// GoString returns the string representation
5924func (s TagResourceInput) GoString() string {
5925	return s.String()
5926}
5927
5928// Validate inspects the fields of the type to determine if they are valid.
5929func (s *TagResourceInput) Validate() error {
5930	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
5931	if s.ResourceArn == nil {
5932		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
5933	}
5934	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
5935		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
5936	}
5937	if s.Tags == nil {
5938		invalidParams.Add(request.NewErrParamRequired("Tags"))
5939	}
5940	if s.Tags != nil && len(s.Tags) < 1 {
5941		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5942	}
5943
5944	if invalidParams.Len() > 0 {
5945		return invalidParams
5946	}
5947	return nil
5948}
5949
5950// SetResourceArn sets the ResourceArn field's value.
5951func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
5952	s.ResourceArn = &v
5953	return s
5954}
5955
5956// SetTags sets the Tags field's value.
5957func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
5958	s.Tags = v
5959	return s
5960}
5961
5962type TagResourceOutput struct {
5963	_ struct{} `type:"structure"`
5964}
5965
5966// String returns the string representation
5967func (s TagResourceOutput) String() string {
5968	return awsutil.Prettify(s)
5969}
5970
5971// GoString returns the string representation
5972func (s TagResourceOutput) GoString() string {
5973	return s.String()
5974}
5975
5976// The number of requests exceeds the limit.
5977type TooManyRequestsException struct {
5978	_            struct{}                  `type:"structure"`
5979	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5980
5981	Message_ *string `locationName:"Message" type:"string"`
5982}
5983
5984// String returns the string representation
5985func (s TooManyRequestsException) String() string {
5986	return awsutil.Prettify(s)
5987}
5988
5989// GoString returns the string representation
5990func (s TooManyRequestsException) GoString() string {
5991	return s.String()
5992}
5993
5994func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
5995	return &TooManyRequestsException{
5996		RespMetadata: v,
5997	}
5998}
5999
6000// Code returns the exception type name.
6001func (s *TooManyRequestsException) Code() string {
6002	return "TooManyRequestsException"
6003}
6004
6005// Message returns the exception's message.
6006func (s *TooManyRequestsException) Message() string {
6007	if s.Message_ != nil {
6008		return *s.Message_
6009	}
6010	return ""
6011}
6012
6013// OrigErr always returns nil, satisfies awserr.Error interface.
6014func (s *TooManyRequestsException) OrigErr() error {
6015	return nil
6016}
6017
6018func (s *TooManyRequestsException) Error() string {
6019	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6020}
6021
6022// Status code returns the HTTP status code for the request's response error.
6023func (s *TooManyRequestsException) StatusCode() int {
6024	return s.RespMetadata.StatusCode
6025}
6026
6027// RequestID returns the service's response RequestID for request.
6028func (s *TooManyRequestsException) RequestID() string {
6029	return s.RespMetadata.RequestID
6030}
6031
6032// You are not authorized to perform this action.
6033type UnauthorizedException struct {
6034	_            struct{}                  `type:"structure"`
6035	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6036
6037	Message_ *string `locationName:"Message" type:"string"`
6038}
6039
6040// String returns the string representation
6041func (s UnauthorizedException) String() string {
6042	return awsutil.Prettify(s)
6043}
6044
6045// GoString returns the string representation
6046func (s UnauthorizedException) GoString() string {
6047	return s.String()
6048}
6049
6050func newErrorUnauthorizedException(v protocol.ResponseMetadata) error {
6051	return &UnauthorizedException{
6052		RespMetadata: v,
6053	}
6054}
6055
6056// Code returns the exception type name.
6057func (s *UnauthorizedException) Code() string {
6058	return "UnauthorizedException"
6059}
6060
6061// Message returns the exception's message.
6062func (s *UnauthorizedException) Message() string {
6063	if s.Message_ != nil {
6064		return *s.Message_
6065	}
6066	return ""
6067}
6068
6069// OrigErr always returns nil, satisfies awserr.Error interface.
6070func (s *UnauthorizedException) OrigErr() error {
6071	return nil
6072}
6073
6074func (s *UnauthorizedException) Error() string {
6075	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6076}
6077
6078// Status code returns the HTTP status code for the request's response error.
6079func (s *UnauthorizedException) StatusCode() int {
6080	return s.RespMetadata.StatusCode
6081}
6082
6083// RequestID returns the service's response RequestID for request.
6084func (s *UnauthorizedException) RequestID() string {
6085	return s.RespMetadata.RequestID
6086}
6087
6088type UntagResourceInput struct {
6089	_ struct{} `type:"structure"`
6090
6091	// The Amazon Resource Name (ARN) of the fleet.
6092	//
6093	// ResourceArn is a required field
6094	ResourceArn *string `location:"uri" locationName:"ResourceArn" min:"20" type:"string" required:"true"`
6095
6096	// The list of tag keys to remove from the resource.
6097	//
6098	// TagKeys is a required field
6099	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
6100}
6101
6102// String returns the string representation
6103func (s UntagResourceInput) String() string {
6104	return awsutil.Prettify(s)
6105}
6106
6107// GoString returns the string representation
6108func (s UntagResourceInput) GoString() string {
6109	return s.String()
6110}
6111
6112// Validate inspects the fields of the type to determine if they are valid.
6113func (s *UntagResourceInput) Validate() error {
6114	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
6115	if s.ResourceArn == nil {
6116		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
6117	}
6118	if s.ResourceArn != nil && len(*s.ResourceArn) < 20 {
6119		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 20))
6120	}
6121	if s.TagKeys == nil {
6122		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
6123	}
6124	if s.TagKeys != nil && len(s.TagKeys) < 1 {
6125		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
6126	}
6127
6128	if invalidParams.Len() > 0 {
6129		return invalidParams
6130	}
6131	return nil
6132}
6133
6134// SetResourceArn sets the ResourceArn field's value.
6135func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
6136	s.ResourceArn = &v
6137	return s
6138}
6139
6140// SetTagKeys sets the TagKeys field's value.
6141func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
6142	s.TagKeys = v
6143	return s
6144}
6145
6146type UntagResourceOutput struct {
6147	_ struct{} `type:"structure"`
6148}
6149
6150// String returns the string representation
6151func (s UntagResourceOutput) String() string {
6152	return awsutil.Prettify(s)
6153}
6154
6155// GoString returns the string representation
6156func (s UntagResourceOutput) GoString() string {
6157	return s.String()
6158}
6159
6160type UpdateAuditStreamConfigurationInput struct {
6161	_ struct{} `type:"structure"`
6162
6163	// The ARN of the Amazon Kinesis data stream that receives the audit events.
6164	AuditStreamArn *string `type:"string"`
6165
6166	// The ARN of the fleet.
6167	//
6168	// FleetArn is a required field
6169	FleetArn *string `min:"20" type:"string" required:"true"`
6170}
6171
6172// String returns the string representation
6173func (s UpdateAuditStreamConfigurationInput) String() string {
6174	return awsutil.Prettify(s)
6175}
6176
6177// GoString returns the string representation
6178func (s UpdateAuditStreamConfigurationInput) GoString() string {
6179	return s.String()
6180}
6181
6182// Validate inspects the fields of the type to determine if they are valid.
6183func (s *UpdateAuditStreamConfigurationInput) Validate() error {
6184	invalidParams := request.ErrInvalidParams{Context: "UpdateAuditStreamConfigurationInput"}
6185	if s.FleetArn == nil {
6186		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6187	}
6188	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6189		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6190	}
6191
6192	if invalidParams.Len() > 0 {
6193		return invalidParams
6194	}
6195	return nil
6196}
6197
6198// SetAuditStreamArn sets the AuditStreamArn field's value.
6199func (s *UpdateAuditStreamConfigurationInput) SetAuditStreamArn(v string) *UpdateAuditStreamConfigurationInput {
6200	s.AuditStreamArn = &v
6201	return s
6202}
6203
6204// SetFleetArn sets the FleetArn field's value.
6205func (s *UpdateAuditStreamConfigurationInput) SetFleetArn(v string) *UpdateAuditStreamConfigurationInput {
6206	s.FleetArn = &v
6207	return s
6208}
6209
6210type UpdateAuditStreamConfigurationOutput struct {
6211	_ struct{} `type:"structure"`
6212}
6213
6214// String returns the string representation
6215func (s UpdateAuditStreamConfigurationOutput) String() string {
6216	return awsutil.Prettify(s)
6217}
6218
6219// GoString returns the string representation
6220func (s UpdateAuditStreamConfigurationOutput) GoString() string {
6221	return s.String()
6222}
6223
6224type UpdateCompanyNetworkConfigurationInput struct {
6225	_ struct{} `type:"structure"`
6226
6227	// The ARN of the fleet.
6228	//
6229	// FleetArn is a required field
6230	FleetArn *string `min:"20" type:"string" required:"true"`
6231
6232	// The security groups associated with access to the provided subnets.
6233	//
6234	// SecurityGroupIds is a required field
6235	SecurityGroupIds []*string `type:"list" required:"true"`
6236
6237	// The subnets used for X-ENI connections from Amazon WorkLink rendering containers.
6238	//
6239	// SubnetIds is a required field
6240	SubnetIds []*string `type:"list" required:"true"`
6241
6242	// The VPC with connectivity to associated websites.
6243	//
6244	// VpcId is a required field
6245	VpcId *string `type:"string" required:"true"`
6246}
6247
6248// String returns the string representation
6249func (s UpdateCompanyNetworkConfigurationInput) String() string {
6250	return awsutil.Prettify(s)
6251}
6252
6253// GoString returns the string representation
6254func (s UpdateCompanyNetworkConfigurationInput) GoString() string {
6255	return s.String()
6256}
6257
6258// Validate inspects the fields of the type to determine if they are valid.
6259func (s *UpdateCompanyNetworkConfigurationInput) Validate() error {
6260	invalidParams := request.ErrInvalidParams{Context: "UpdateCompanyNetworkConfigurationInput"}
6261	if s.FleetArn == nil {
6262		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6263	}
6264	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6265		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6266	}
6267	if s.SecurityGroupIds == nil {
6268		invalidParams.Add(request.NewErrParamRequired("SecurityGroupIds"))
6269	}
6270	if s.SubnetIds == nil {
6271		invalidParams.Add(request.NewErrParamRequired("SubnetIds"))
6272	}
6273	if s.VpcId == nil {
6274		invalidParams.Add(request.NewErrParamRequired("VpcId"))
6275	}
6276
6277	if invalidParams.Len() > 0 {
6278		return invalidParams
6279	}
6280	return nil
6281}
6282
6283// SetFleetArn sets the FleetArn field's value.
6284func (s *UpdateCompanyNetworkConfigurationInput) SetFleetArn(v string) *UpdateCompanyNetworkConfigurationInput {
6285	s.FleetArn = &v
6286	return s
6287}
6288
6289// SetSecurityGroupIds sets the SecurityGroupIds field's value.
6290func (s *UpdateCompanyNetworkConfigurationInput) SetSecurityGroupIds(v []*string) *UpdateCompanyNetworkConfigurationInput {
6291	s.SecurityGroupIds = v
6292	return s
6293}
6294
6295// SetSubnetIds sets the SubnetIds field's value.
6296func (s *UpdateCompanyNetworkConfigurationInput) SetSubnetIds(v []*string) *UpdateCompanyNetworkConfigurationInput {
6297	s.SubnetIds = v
6298	return s
6299}
6300
6301// SetVpcId sets the VpcId field's value.
6302func (s *UpdateCompanyNetworkConfigurationInput) SetVpcId(v string) *UpdateCompanyNetworkConfigurationInput {
6303	s.VpcId = &v
6304	return s
6305}
6306
6307type UpdateCompanyNetworkConfigurationOutput struct {
6308	_ struct{} `type:"structure"`
6309}
6310
6311// String returns the string representation
6312func (s UpdateCompanyNetworkConfigurationOutput) String() string {
6313	return awsutil.Prettify(s)
6314}
6315
6316// GoString returns the string representation
6317func (s UpdateCompanyNetworkConfigurationOutput) GoString() string {
6318	return s.String()
6319}
6320
6321type UpdateDevicePolicyConfigurationInput struct {
6322	_ struct{} `type:"structure"`
6323
6324	// The certificate chain, including intermediate certificates and the root certificate
6325	// authority certificate used to issue device certificates.
6326	DeviceCaCertificate *string `min:"1" type:"string"`
6327
6328	// The ARN of the fleet.
6329	//
6330	// FleetArn is a required field
6331	FleetArn *string `min:"20" type:"string" required:"true"`
6332}
6333
6334// String returns the string representation
6335func (s UpdateDevicePolicyConfigurationInput) String() string {
6336	return awsutil.Prettify(s)
6337}
6338
6339// GoString returns the string representation
6340func (s UpdateDevicePolicyConfigurationInput) GoString() string {
6341	return s.String()
6342}
6343
6344// Validate inspects the fields of the type to determine if they are valid.
6345func (s *UpdateDevicePolicyConfigurationInput) Validate() error {
6346	invalidParams := request.ErrInvalidParams{Context: "UpdateDevicePolicyConfigurationInput"}
6347	if s.DeviceCaCertificate != nil && len(*s.DeviceCaCertificate) < 1 {
6348		invalidParams.Add(request.NewErrParamMinLen("DeviceCaCertificate", 1))
6349	}
6350	if s.FleetArn == nil {
6351		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6352	}
6353	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6354		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6355	}
6356
6357	if invalidParams.Len() > 0 {
6358		return invalidParams
6359	}
6360	return nil
6361}
6362
6363// SetDeviceCaCertificate sets the DeviceCaCertificate field's value.
6364func (s *UpdateDevicePolicyConfigurationInput) SetDeviceCaCertificate(v string) *UpdateDevicePolicyConfigurationInput {
6365	s.DeviceCaCertificate = &v
6366	return s
6367}
6368
6369// SetFleetArn sets the FleetArn field's value.
6370func (s *UpdateDevicePolicyConfigurationInput) SetFleetArn(v string) *UpdateDevicePolicyConfigurationInput {
6371	s.FleetArn = &v
6372	return s
6373}
6374
6375type UpdateDevicePolicyConfigurationOutput struct {
6376	_ struct{} `type:"structure"`
6377}
6378
6379// String returns the string representation
6380func (s UpdateDevicePolicyConfigurationOutput) String() string {
6381	return awsutil.Prettify(s)
6382}
6383
6384// GoString returns the string representation
6385func (s UpdateDevicePolicyConfigurationOutput) GoString() string {
6386	return s.String()
6387}
6388
6389type UpdateDomainMetadataInput struct {
6390	_ struct{} `type:"structure"`
6391
6392	// The name to display.
6393	DisplayName *string `type:"string"`
6394
6395	// The name of the domain.
6396	//
6397	// DomainName is a required field
6398	DomainName *string `min:"1" type:"string" required:"true"`
6399
6400	// The ARN of the fleet.
6401	//
6402	// FleetArn is a required field
6403	FleetArn *string `min:"20" type:"string" required:"true"`
6404}
6405
6406// String returns the string representation
6407func (s UpdateDomainMetadataInput) String() string {
6408	return awsutil.Prettify(s)
6409}
6410
6411// GoString returns the string representation
6412func (s UpdateDomainMetadataInput) GoString() string {
6413	return s.String()
6414}
6415
6416// Validate inspects the fields of the type to determine if they are valid.
6417func (s *UpdateDomainMetadataInput) Validate() error {
6418	invalidParams := request.ErrInvalidParams{Context: "UpdateDomainMetadataInput"}
6419	if s.DomainName == nil {
6420		invalidParams.Add(request.NewErrParamRequired("DomainName"))
6421	}
6422	if s.DomainName != nil && len(*s.DomainName) < 1 {
6423		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
6424	}
6425	if s.FleetArn == nil {
6426		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6427	}
6428	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6429		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6430	}
6431
6432	if invalidParams.Len() > 0 {
6433		return invalidParams
6434	}
6435	return nil
6436}
6437
6438// SetDisplayName sets the DisplayName field's value.
6439func (s *UpdateDomainMetadataInput) SetDisplayName(v string) *UpdateDomainMetadataInput {
6440	s.DisplayName = &v
6441	return s
6442}
6443
6444// SetDomainName sets the DomainName field's value.
6445func (s *UpdateDomainMetadataInput) SetDomainName(v string) *UpdateDomainMetadataInput {
6446	s.DomainName = &v
6447	return s
6448}
6449
6450// SetFleetArn sets the FleetArn field's value.
6451func (s *UpdateDomainMetadataInput) SetFleetArn(v string) *UpdateDomainMetadataInput {
6452	s.FleetArn = &v
6453	return s
6454}
6455
6456type UpdateDomainMetadataOutput struct {
6457	_ struct{} `type:"structure"`
6458}
6459
6460// String returns the string representation
6461func (s UpdateDomainMetadataOutput) String() string {
6462	return awsutil.Prettify(s)
6463}
6464
6465// GoString returns the string representation
6466func (s UpdateDomainMetadataOutput) GoString() string {
6467	return s.String()
6468}
6469
6470type UpdateFleetMetadataInput struct {
6471	_ struct{} `type:"structure"`
6472
6473	// The fleet name to display. The existing DisplayName is unset if null is passed.
6474	DisplayName *string `type:"string"`
6475
6476	// The ARN of the fleet.
6477	//
6478	// FleetArn is a required field
6479	FleetArn *string `min:"20" type:"string" required:"true"`
6480
6481	// The option to optimize for better performance by routing traffic through
6482	// the closest AWS Region to users, which may be outside of your home Region.
6483	OptimizeForEndUserLocation *bool `type:"boolean"`
6484}
6485
6486// String returns the string representation
6487func (s UpdateFleetMetadataInput) String() string {
6488	return awsutil.Prettify(s)
6489}
6490
6491// GoString returns the string representation
6492func (s UpdateFleetMetadataInput) GoString() string {
6493	return s.String()
6494}
6495
6496// Validate inspects the fields of the type to determine if they are valid.
6497func (s *UpdateFleetMetadataInput) Validate() error {
6498	invalidParams := request.ErrInvalidParams{Context: "UpdateFleetMetadataInput"}
6499	if s.FleetArn == nil {
6500		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6501	}
6502	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6503		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6504	}
6505
6506	if invalidParams.Len() > 0 {
6507		return invalidParams
6508	}
6509	return nil
6510}
6511
6512// SetDisplayName sets the DisplayName field's value.
6513func (s *UpdateFleetMetadataInput) SetDisplayName(v string) *UpdateFleetMetadataInput {
6514	s.DisplayName = &v
6515	return s
6516}
6517
6518// SetFleetArn sets the FleetArn field's value.
6519func (s *UpdateFleetMetadataInput) SetFleetArn(v string) *UpdateFleetMetadataInput {
6520	s.FleetArn = &v
6521	return s
6522}
6523
6524// SetOptimizeForEndUserLocation sets the OptimizeForEndUserLocation field's value.
6525func (s *UpdateFleetMetadataInput) SetOptimizeForEndUserLocation(v bool) *UpdateFleetMetadataInput {
6526	s.OptimizeForEndUserLocation = &v
6527	return s
6528}
6529
6530type UpdateFleetMetadataOutput struct {
6531	_ struct{} `type:"structure"`
6532}
6533
6534// String returns the string representation
6535func (s UpdateFleetMetadataOutput) String() string {
6536	return awsutil.Prettify(s)
6537}
6538
6539// GoString returns the string representation
6540func (s UpdateFleetMetadataOutput) GoString() string {
6541	return s.String()
6542}
6543
6544type UpdateIdentityProviderConfigurationInput struct {
6545	_ struct{} `type:"structure"`
6546
6547	// The ARN of the fleet.
6548	//
6549	// FleetArn is a required field
6550	FleetArn *string `min:"20" type:"string" required:"true"`
6551
6552	// The SAML metadata document provided by the customer’s identity provider.
6553	// The existing IdentityProviderSamlMetadata is unset if null is passed.
6554	IdentityProviderSamlMetadata *string `min:"1" type:"string"`
6555
6556	// The type of identity provider.
6557	//
6558	// IdentityProviderType is a required field
6559	IdentityProviderType *string `type:"string" required:"true" enum:"IdentityProviderType"`
6560}
6561
6562// String returns the string representation
6563func (s UpdateIdentityProviderConfigurationInput) String() string {
6564	return awsutil.Prettify(s)
6565}
6566
6567// GoString returns the string representation
6568func (s UpdateIdentityProviderConfigurationInput) GoString() string {
6569	return s.String()
6570}
6571
6572// Validate inspects the fields of the type to determine if they are valid.
6573func (s *UpdateIdentityProviderConfigurationInput) Validate() error {
6574	invalidParams := request.ErrInvalidParams{Context: "UpdateIdentityProviderConfigurationInput"}
6575	if s.FleetArn == nil {
6576		invalidParams.Add(request.NewErrParamRequired("FleetArn"))
6577	}
6578	if s.FleetArn != nil && len(*s.FleetArn) < 20 {
6579		invalidParams.Add(request.NewErrParamMinLen("FleetArn", 20))
6580	}
6581	if s.IdentityProviderSamlMetadata != nil && len(*s.IdentityProviderSamlMetadata) < 1 {
6582		invalidParams.Add(request.NewErrParamMinLen("IdentityProviderSamlMetadata", 1))
6583	}
6584	if s.IdentityProviderType == nil {
6585		invalidParams.Add(request.NewErrParamRequired("IdentityProviderType"))
6586	}
6587
6588	if invalidParams.Len() > 0 {
6589		return invalidParams
6590	}
6591	return nil
6592}
6593
6594// SetFleetArn sets the FleetArn field's value.
6595func (s *UpdateIdentityProviderConfigurationInput) SetFleetArn(v string) *UpdateIdentityProviderConfigurationInput {
6596	s.FleetArn = &v
6597	return s
6598}
6599
6600// SetIdentityProviderSamlMetadata sets the IdentityProviderSamlMetadata field's value.
6601func (s *UpdateIdentityProviderConfigurationInput) SetIdentityProviderSamlMetadata(v string) *UpdateIdentityProviderConfigurationInput {
6602	s.IdentityProviderSamlMetadata = &v
6603	return s
6604}
6605
6606// SetIdentityProviderType sets the IdentityProviderType field's value.
6607func (s *UpdateIdentityProviderConfigurationInput) SetIdentityProviderType(v string) *UpdateIdentityProviderConfigurationInput {
6608	s.IdentityProviderType = &v
6609	return s
6610}
6611
6612type UpdateIdentityProviderConfigurationOutput struct {
6613	_ struct{} `type:"structure"`
6614}
6615
6616// String returns the string representation
6617func (s UpdateIdentityProviderConfigurationOutput) String() string {
6618	return awsutil.Prettify(s)
6619}
6620
6621// GoString returns the string representation
6622func (s UpdateIdentityProviderConfigurationOutput) GoString() string {
6623	return s.String()
6624}
6625
6626// The summary of the website authorization provider.
6627type WebsiteAuthorizationProviderSummary struct {
6628	_ struct{} `type:"structure"`
6629
6630	// A unique identifier for the authorization provider.
6631	AuthorizationProviderId *string `min:"1" type:"string"`
6632
6633	// The authorization provider type.
6634	//
6635	// AuthorizationProviderType is a required field
6636	AuthorizationProviderType *string `type:"string" required:"true" enum:"AuthorizationProviderType"`
6637
6638	// The time of creation.
6639	CreatedTime *time.Time `type:"timestamp"`
6640
6641	// The domain name of the authorization provider. This applies only to SAML-based
6642	// authorization providers.
6643	DomainName *string `min:"1" type:"string"`
6644}
6645
6646// String returns the string representation
6647func (s WebsiteAuthorizationProviderSummary) String() string {
6648	return awsutil.Prettify(s)
6649}
6650
6651// GoString returns the string representation
6652func (s WebsiteAuthorizationProviderSummary) GoString() string {
6653	return s.String()
6654}
6655
6656// SetAuthorizationProviderId sets the AuthorizationProviderId field's value.
6657func (s *WebsiteAuthorizationProviderSummary) SetAuthorizationProviderId(v string) *WebsiteAuthorizationProviderSummary {
6658	s.AuthorizationProviderId = &v
6659	return s
6660}
6661
6662// SetAuthorizationProviderType sets the AuthorizationProviderType field's value.
6663func (s *WebsiteAuthorizationProviderSummary) SetAuthorizationProviderType(v string) *WebsiteAuthorizationProviderSummary {
6664	s.AuthorizationProviderType = &v
6665	return s
6666}
6667
6668// SetCreatedTime sets the CreatedTime field's value.
6669func (s *WebsiteAuthorizationProviderSummary) SetCreatedTime(v time.Time) *WebsiteAuthorizationProviderSummary {
6670	s.CreatedTime = &v
6671	return s
6672}
6673
6674// SetDomainName sets the DomainName field's value.
6675func (s *WebsiteAuthorizationProviderSummary) SetDomainName(v string) *WebsiteAuthorizationProviderSummary {
6676	s.DomainName = &v
6677	return s
6678}
6679
6680// The summary of the certificate authority (CA).
6681type WebsiteCaSummary struct {
6682	_ struct{} `type:"structure"`
6683
6684	// The time when the CA was added.
6685	CreatedTime *time.Time `type:"timestamp"`
6686
6687	// The name to display.
6688	DisplayName *string `type:"string"`
6689
6690	// A unique identifier for the CA.
6691	WebsiteCaId *string `min:"1" type:"string"`
6692}
6693
6694// String returns the string representation
6695func (s WebsiteCaSummary) String() string {
6696	return awsutil.Prettify(s)
6697}
6698
6699// GoString returns the string representation
6700func (s WebsiteCaSummary) GoString() string {
6701	return s.String()
6702}
6703
6704// SetCreatedTime sets the CreatedTime field's value.
6705func (s *WebsiteCaSummary) SetCreatedTime(v time.Time) *WebsiteCaSummary {
6706	s.CreatedTime = &v
6707	return s
6708}
6709
6710// SetDisplayName sets the DisplayName field's value.
6711func (s *WebsiteCaSummary) SetDisplayName(v string) *WebsiteCaSummary {
6712	s.DisplayName = &v
6713	return s
6714}
6715
6716// SetWebsiteCaId sets the WebsiteCaId field's value.
6717func (s *WebsiteCaSummary) SetWebsiteCaId(v string) *WebsiteCaSummary {
6718	s.WebsiteCaId = &v
6719	return s
6720}
6721
6722const (
6723	// AuthorizationProviderTypeSaml is a AuthorizationProviderType enum value
6724	AuthorizationProviderTypeSaml = "SAML"
6725)
6726
6727const (
6728	// DeviceStatusActive is a DeviceStatus enum value
6729	DeviceStatusActive = "ACTIVE"
6730
6731	// DeviceStatusSignedOut is a DeviceStatus enum value
6732	DeviceStatusSignedOut = "SIGNED_OUT"
6733)
6734
6735const (
6736	// DomainStatusPendingValidation is a DomainStatus enum value
6737	DomainStatusPendingValidation = "PENDING_VALIDATION"
6738
6739	// DomainStatusAssociating is a DomainStatus enum value
6740	DomainStatusAssociating = "ASSOCIATING"
6741
6742	// DomainStatusActive is a DomainStatus enum value
6743	DomainStatusActive = "ACTIVE"
6744
6745	// DomainStatusInactive is a DomainStatus enum value
6746	DomainStatusInactive = "INACTIVE"
6747
6748	// DomainStatusDisassociating is a DomainStatus enum value
6749	DomainStatusDisassociating = "DISASSOCIATING"
6750
6751	// DomainStatusDisassociated is a DomainStatus enum value
6752	DomainStatusDisassociated = "DISASSOCIATED"
6753
6754	// DomainStatusFailedToAssociate is a DomainStatus enum value
6755	DomainStatusFailedToAssociate = "FAILED_TO_ASSOCIATE"
6756
6757	// DomainStatusFailedToDisassociate is a DomainStatus enum value
6758	DomainStatusFailedToDisassociate = "FAILED_TO_DISASSOCIATE"
6759)
6760
6761const (
6762	// FleetStatusCreating is a FleetStatus enum value
6763	FleetStatusCreating = "CREATING"
6764
6765	// FleetStatusActive is a FleetStatus enum value
6766	FleetStatusActive = "ACTIVE"
6767
6768	// FleetStatusDeleting is a FleetStatus enum value
6769	FleetStatusDeleting = "DELETING"
6770
6771	// FleetStatusDeleted is a FleetStatus enum value
6772	FleetStatusDeleted = "DELETED"
6773
6774	// FleetStatusFailedToCreate is a FleetStatus enum value
6775	FleetStatusFailedToCreate = "FAILED_TO_CREATE"
6776
6777	// FleetStatusFailedToDelete is a FleetStatus enum value
6778	FleetStatusFailedToDelete = "FAILED_TO_DELETE"
6779)
6780
6781const (
6782	// IdentityProviderTypeSaml is a IdentityProviderType enum value
6783	IdentityProviderTypeSaml = "SAML"
6784)
6785