github.com/aavshr/aws-sdk-go@v1.41.3/service/alexaforbusiness/api.go (about)

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package alexaforbusiness
     4  
     5  import (
     6  	"fmt"
     7  	"time"
     8  
     9  	"github.com/aavshr/aws-sdk-go/aws"
    10  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    11  	"github.com/aavshr/aws-sdk-go/aws/request"
    12  	"github.com/aavshr/aws-sdk-go/private/protocol"
    13  	"github.com/aavshr/aws-sdk-go/private/protocol/jsonrpc"
    14  )
    15  
    16  const opApproveSkill = "ApproveSkill"
    17  
    18  // ApproveSkillRequest generates a "aws/request.Request" representing the
    19  // client's request for the ApproveSkill 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 ApproveSkill for more information on using the ApproveSkill
    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 ApproveSkillRequest method.
    34  //    req, resp := client.ApproveSkillRequest(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/alexaforbusiness-2017-11-09/ApproveSkill
    42  func (c *AlexaForBusiness) ApproveSkillRequest(input *ApproveSkillInput) (req *request.Request, output *ApproveSkillOutput) {
    43  	op := &request.Operation{
    44  		Name:       opApproveSkill,
    45  		HTTPMethod: "POST",
    46  		HTTPPath:   "/",
    47  	}
    48  
    49  	if input == nil {
    50  		input = &ApproveSkillInput{}
    51  	}
    52  
    53  	output = &ApproveSkillOutput{}
    54  	req = c.newRequest(op, input, output)
    55  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
    56  	return
    57  }
    58  
    59  // ApproveSkill API operation for Alexa For Business.
    60  //
    61  // Associates a skill with the organization under the customer's AWS account.
    62  // If a skill is private, the user implicitly accepts access to this skill during
    63  // enablement.
    64  //
    65  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    66  // with awserr.Error's Code and Message methods to get detailed information about
    67  // the error.
    68  //
    69  // See the AWS API reference guide for Alexa For Business's
    70  // API operation ApproveSkill for usage and error information.
    71  //
    72  // Returned Error Types:
    73  //   * LimitExceededException
    74  //   You are performing an action that would put you beyond your account's limits.
    75  //
    76  //   * NotFoundException
    77  //   The resource is not found.
    78  //
    79  //   * ConcurrentModificationException
    80  //   There is a concurrent modification of resources.
    81  //
    82  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ApproveSkill
    83  func (c *AlexaForBusiness) ApproveSkill(input *ApproveSkillInput) (*ApproveSkillOutput, error) {
    84  	req, out := c.ApproveSkillRequest(input)
    85  	return out, req.Send()
    86  }
    87  
    88  // ApproveSkillWithContext is the same as ApproveSkill with the addition of
    89  // the ability to pass a context and additional request options.
    90  //
    91  // See ApproveSkill for details on how to use this API operation.
    92  //
    93  // The context must be non-nil and will be used for request cancellation. If
    94  // the context is nil a panic will occur. In the future the SDK may create
    95  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    96  // for more information on using Contexts.
    97  func (c *AlexaForBusiness) ApproveSkillWithContext(ctx aws.Context, input *ApproveSkillInput, opts ...request.Option) (*ApproveSkillOutput, error) {
    98  	req, out := c.ApproveSkillRequest(input)
    99  	req.SetContext(ctx)
   100  	req.ApplyOptions(opts...)
   101  	return out, req.Send()
   102  }
   103  
   104  const opAssociateContactWithAddressBook = "AssociateContactWithAddressBook"
   105  
   106  // AssociateContactWithAddressBookRequest generates a "aws/request.Request" representing the
   107  // client's request for the AssociateContactWithAddressBook operation. The "output" return
   108  // value will be populated with the request's response once the request completes
   109  // successfully.
   110  //
   111  // Use "Send" method on the returned Request to send the API call to the service.
   112  // the "output" return value is not valid until after Send returns without error.
   113  //
   114  // See AssociateContactWithAddressBook for more information on using the AssociateContactWithAddressBook
   115  // API call, and error handling.
   116  //
   117  // This method is useful when you want to inject custom logic or configuration
   118  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   119  //
   120  //
   121  //    // Example sending a request using the AssociateContactWithAddressBookRequest method.
   122  //    req, resp := client.AssociateContactWithAddressBookRequest(params)
   123  //
   124  //    err := req.Send()
   125  //    if err == nil { // resp is now filled
   126  //        fmt.Println(resp)
   127  //    }
   128  //
   129  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateContactWithAddressBook
   130  func (c *AlexaForBusiness) AssociateContactWithAddressBookRequest(input *AssociateContactWithAddressBookInput) (req *request.Request, output *AssociateContactWithAddressBookOutput) {
   131  	op := &request.Operation{
   132  		Name:       opAssociateContactWithAddressBook,
   133  		HTTPMethod: "POST",
   134  		HTTPPath:   "/",
   135  	}
   136  
   137  	if input == nil {
   138  		input = &AssociateContactWithAddressBookInput{}
   139  	}
   140  
   141  	output = &AssociateContactWithAddressBookOutput{}
   142  	req = c.newRequest(op, input, output)
   143  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   144  	return
   145  }
   146  
   147  // AssociateContactWithAddressBook API operation for Alexa For Business.
   148  //
   149  // Associates a contact with a given address book.
   150  //
   151  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   152  // with awserr.Error's Code and Message methods to get detailed information about
   153  // the error.
   154  //
   155  // See the AWS API reference guide for Alexa For Business's
   156  // API operation AssociateContactWithAddressBook for usage and error information.
   157  //
   158  // Returned Error Types:
   159  //   * LimitExceededException
   160  //   You are performing an action that would put you beyond your account's limits.
   161  //
   162  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateContactWithAddressBook
   163  func (c *AlexaForBusiness) AssociateContactWithAddressBook(input *AssociateContactWithAddressBookInput) (*AssociateContactWithAddressBookOutput, error) {
   164  	req, out := c.AssociateContactWithAddressBookRequest(input)
   165  	return out, req.Send()
   166  }
   167  
   168  // AssociateContactWithAddressBookWithContext is the same as AssociateContactWithAddressBook with the addition of
   169  // the ability to pass a context and additional request options.
   170  //
   171  // See AssociateContactWithAddressBook for details on how to use this API operation.
   172  //
   173  // The context must be non-nil and will be used for request cancellation. If
   174  // the context is nil a panic will occur. In the future the SDK may create
   175  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   176  // for more information on using Contexts.
   177  func (c *AlexaForBusiness) AssociateContactWithAddressBookWithContext(ctx aws.Context, input *AssociateContactWithAddressBookInput, opts ...request.Option) (*AssociateContactWithAddressBookOutput, error) {
   178  	req, out := c.AssociateContactWithAddressBookRequest(input)
   179  	req.SetContext(ctx)
   180  	req.ApplyOptions(opts...)
   181  	return out, req.Send()
   182  }
   183  
   184  const opAssociateDeviceWithNetworkProfile = "AssociateDeviceWithNetworkProfile"
   185  
   186  // AssociateDeviceWithNetworkProfileRequest generates a "aws/request.Request" representing the
   187  // client's request for the AssociateDeviceWithNetworkProfile operation. The "output" return
   188  // value will be populated with the request's response once the request completes
   189  // successfully.
   190  //
   191  // Use "Send" method on the returned Request to send the API call to the service.
   192  // the "output" return value is not valid until after Send returns without error.
   193  //
   194  // See AssociateDeviceWithNetworkProfile for more information on using the AssociateDeviceWithNetworkProfile
   195  // API call, and error handling.
   196  //
   197  // This method is useful when you want to inject custom logic or configuration
   198  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   199  //
   200  //
   201  //    // Example sending a request using the AssociateDeviceWithNetworkProfileRequest method.
   202  //    req, resp := client.AssociateDeviceWithNetworkProfileRequest(params)
   203  //
   204  //    err := req.Send()
   205  //    if err == nil { // resp is now filled
   206  //        fmt.Println(resp)
   207  //    }
   208  //
   209  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateDeviceWithNetworkProfile
   210  func (c *AlexaForBusiness) AssociateDeviceWithNetworkProfileRequest(input *AssociateDeviceWithNetworkProfileInput) (req *request.Request, output *AssociateDeviceWithNetworkProfileOutput) {
   211  	op := &request.Operation{
   212  		Name:       opAssociateDeviceWithNetworkProfile,
   213  		HTTPMethod: "POST",
   214  		HTTPPath:   "/",
   215  	}
   216  
   217  	if input == nil {
   218  		input = &AssociateDeviceWithNetworkProfileInput{}
   219  	}
   220  
   221  	output = &AssociateDeviceWithNetworkProfileOutput{}
   222  	req = c.newRequest(op, input, output)
   223  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   224  	return
   225  }
   226  
   227  // AssociateDeviceWithNetworkProfile API operation for Alexa For Business.
   228  //
   229  // Associates a device with the specified network profile.
   230  //
   231  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   232  // with awserr.Error's Code and Message methods to get detailed information about
   233  // the error.
   234  //
   235  // See the AWS API reference guide for Alexa For Business's
   236  // API operation AssociateDeviceWithNetworkProfile for usage and error information.
   237  //
   238  // Returned Error Types:
   239  //   * NotFoundException
   240  //   The resource is not found.
   241  //
   242  //   * ConcurrentModificationException
   243  //   There is a concurrent modification of resources.
   244  //
   245  //   * DeviceNotRegisteredException
   246  //   The request failed because this device is no longer registered and therefore
   247  //   no longer managed by this account.
   248  //
   249  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateDeviceWithNetworkProfile
   250  func (c *AlexaForBusiness) AssociateDeviceWithNetworkProfile(input *AssociateDeviceWithNetworkProfileInput) (*AssociateDeviceWithNetworkProfileOutput, error) {
   251  	req, out := c.AssociateDeviceWithNetworkProfileRequest(input)
   252  	return out, req.Send()
   253  }
   254  
   255  // AssociateDeviceWithNetworkProfileWithContext is the same as AssociateDeviceWithNetworkProfile with the addition of
   256  // the ability to pass a context and additional request options.
   257  //
   258  // See AssociateDeviceWithNetworkProfile for details on how to use this API operation.
   259  //
   260  // The context must be non-nil and will be used for request cancellation. If
   261  // the context is nil a panic will occur. In the future the SDK may create
   262  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   263  // for more information on using Contexts.
   264  func (c *AlexaForBusiness) AssociateDeviceWithNetworkProfileWithContext(ctx aws.Context, input *AssociateDeviceWithNetworkProfileInput, opts ...request.Option) (*AssociateDeviceWithNetworkProfileOutput, error) {
   265  	req, out := c.AssociateDeviceWithNetworkProfileRequest(input)
   266  	req.SetContext(ctx)
   267  	req.ApplyOptions(opts...)
   268  	return out, req.Send()
   269  }
   270  
   271  const opAssociateDeviceWithRoom = "AssociateDeviceWithRoom"
   272  
   273  // AssociateDeviceWithRoomRequest generates a "aws/request.Request" representing the
   274  // client's request for the AssociateDeviceWithRoom operation. The "output" return
   275  // value will be populated with the request's response once the request completes
   276  // successfully.
   277  //
   278  // Use "Send" method on the returned Request to send the API call to the service.
   279  // the "output" return value is not valid until after Send returns without error.
   280  //
   281  // See AssociateDeviceWithRoom for more information on using the AssociateDeviceWithRoom
   282  // API call, and error handling.
   283  //
   284  // This method is useful when you want to inject custom logic or configuration
   285  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   286  //
   287  //
   288  //    // Example sending a request using the AssociateDeviceWithRoomRequest method.
   289  //    req, resp := client.AssociateDeviceWithRoomRequest(params)
   290  //
   291  //    err := req.Send()
   292  //    if err == nil { // resp is now filled
   293  //        fmt.Println(resp)
   294  //    }
   295  //
   296  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateDeviceWithRoom
   297  func (c *AlexaForBusiness) AssociateDeviceWithRoomRequest(input *AssociateDeviceWithRoomInput) (req *request.Request, output *AssociateDeviceWithRoomOutput) {
   298  	op := &request.Operation{
   299  		Name:       opAssociateDeviceWithRoom,
   300  		HTTPMethod: "POST",
   301  		HTTPPath:   "/",
   302  	}
   303  
   304  	if input == nil {
   305  		input = &AssociateDeviceWithRoomInput{}
   306  	}
   307  
   308  	output = &AssociateDeviceWithRoomOutput{}
   309  	req = c.newRequest(op, input, output)
   310  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   311  	return
   312  }
   313  
   314  // AssociateDeviceWithRoom API operation for Alexa For Business.
   315  //
   316  // Associates a device with a given room. This applies all the settings from
   317  // the room profile to the device, and all the skills in any skill groups added
   318  // to that room. This operation requires the device to be online, or else a
   319  // manual sync is required.
   320  //
   321  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   322  // with awserr.Error's Code and Message methods to get detailed information about
   323  // the error.
   324  //
   325  // See the AWS API reference guide for Alexa For Business's
   326  // API operation AssociateDeviceWithRoom for usage and error information.
   327  //
   328  // Returned Error Types:
   329  //   * LimitExceededException
   330  //   You are performing an action that would put you beyond your account's limits.
   331  //
   332  //   * ConcurrentModificationException
   333  //   There is a concurrent modification of resources.
   334  //
   335  //   * DeviceNotRegisteredException
   336  //   The request failed because this device is no longer registered and therefore
   337  //   no longer managed by this account.
   338  //
   339  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateDeviceWithRoom
   340  func (c *AlexaForBusiness) AssociateDeviceWithRoom(input *AssociateDeviceWithRoomInput) (*AssociateDeviceWithRoomOutput, error) {
   341  	req, out := c.AssociateDeviceWithRoomRequest(input)
   342  	return out, req.Send()
   343  }
   344  
   345  // AssociateDeviceWithRoomWithContext is the same as AssociateDeviceWithRoom with the addition of
   346  // the ability to pass a context and additional request options.
   347  //
   348  // See AssociateDeviceWithRoom for details on how to use this API operation.
   349  //
   350  // The context must be non-nil and will be used for request cancellation. If
   351  // the context is nil a panic will occur. In the future the SDK may create
   352  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   353  // for more information on using Contexts.
   354  func (c *AlexaForBusiness) AssociateDeviceWithRoomWithContext(ctx aws.Context, input *AssociateDeviceWithRoomInput, opts ...request.Option) (*AssociateDeviceWithRoomOutput, error) {
   355  	req, out := c.AssociateDeviceWithRoomRequest(input)
   356  	req.SetContext(ctx)
   357  	req.ApplyOptions(opts...)
   358  	return out, req.Send()
   359  }
   360  
   361  const opAssociateSkillGroupWithRoom = "AssociateSkillGroupWithRoom"
   362  
   363  // AssociateSkillGroupWithRoomRequest generates a "aws/request.Request" representing the
   364  // client's request for the AssociateSkillGroupWithRoom operation. The "output" return
   365  // value will be populated with the request's response once the request completes
   366  // successfully.
   367  //
   368  // Use "Send" method on the returned Request to send the API call to the service.
   369  // the "output" return value is not valid until after Send returns without error.
   370  //
   371  // See AssociateSkillGroupWithRoom for more information on using the AssociateSkillGroupWithRoom
   372  // API call, and error handling.
   373  //
   374  // This method is useful when you want to inject custom logic or configuration
   375  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   376  //
   377  //
   378  //    // Example sending a request using the AssociateSkillGroupWithRoomRequest method.
   379  //    req, resp := client.AssociateSkillGroupWithRoomRequest(params)
   380  //
   381  //    err := req.Send()
   382  //    if err == nil { // resp is now filled
   383  //        fmt.Println(resp)
   384  //    }
   385  //
   386  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillGroupWithRoom
   387  func (c *AlexaForBusiness) AssociateSkillGroupWithRoomRequest(input *AssociateSkillGroupWithRoomInput) (req *request.Request, output *AssociateSkillGroupWithRoomOutput) {
   388  	op := &request.Operation{
   389  		Name:       opAssociateSkillGroupWithRoom,
   390  		HTTPMethod: "POST",
   391  		HTTPPath:   "/",
   392  	}
   393  
   394  	if input == nil {
   395  		input = &AssociateSkillGroupWithRoomInput{}
   396  	}
   397  
   398  	output = &AssociateSkillGroupWithRoomOutput{}
   399  	req = c.newRequest(op, input, output)
   400  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   401  	return
   402  }
   403  
   404  // AssociateSkillGroupWithRoom API operation for Alexa For Business.
   405  //
   406  // Associates a skill group with a given room. This enables all skills in the
   407  // associated skill group on all devices in the room.
   408  //
   409  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   410  // with awserr.Error's Code and Message methods to get detailed information about
   411  // the error.
   412  //
   413  // See the AWS API reference guide for Alexa For Business's
   414  // API operation AssociateSkillGroupWithRoom for usage and error information.
   415  //
   416  // Returned Error Types:
   417  //   * ConcurrentModificationException
   418  //   There is a concurrent modification of resources.
   419  //
   420  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillGroupWithRoom
   421  func (c *AlexaForBusiness) AssociateSkillGroupWithRoom(input *AssociateSkillGroupWithRoomInput) (*AssociateSkillGroupWithRoomOutput, error) {
   422  	req, out := c.AssociateSkillGroupWithRoomRequest(input)
   423  	return out, req.Send()
   424  }
   425  
   426  // AssociateSkillGroupWithRoomWithContext is the same as AssociateSkillGroupWithRoom with the addition of
   427  // the ability to pass a context and additional request options.
   428  //
   429  // See AssociateSkillGroupWithRoom for details on how to use this API operation.
   430  //
   431  // The context must be non-nil and will be used for request cancellation. If
   432  // the context is nil a panic will occur. In the future the SDK may create
   433  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   434  // for more information on using Contexts.
   435  func (c *AlexaForBusiness) AssociateSkillGroupWithRoomWithContext(ctx aws.Context, input *AssociateSkillGroupWithRoomInput, opts ...request.Option) (*AssociateSkillGroupWithRoomOutput, error) {
   436  	req, out := c.AssociateSkillGroupWithRoomRequest(input)
   437  	req.SetContext(ctx)
   438  	req.ApplyOptions(opts...)
   439  	return out, req.Send()
   440  }
   441  
   442  const opAssociateSkillWithSkillGroup = "AssociateSkillWithSkillGroup"
   443  
   444  // AssociateSkillWithSkillGroupRequest generates a "aws/request.Request" representing the
   445  // client's request for the AssociateSkillWithSkillGroup operation. The "output" return
   446  // value will be populated with the request's response once the request completes
   447  // successfully.
   448  //
   449  // Use "Send" method on the returned Request to send the API call to the service.
   450  // the "output" return value is not valid until after Send returns without error.
   451  //
   452  // See AssociateSkillWithSkillGroup for more information on using the AssociateSkillWithSkillGroup
   453  // API call, and error handling.
   454  //
   455  // This method is useful when you want to inject custom logic or configuration
   456  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   457  //
   458  //
   459  //    // Example sending a request using the AssociateSkillWithSkillGroupRequest method.
   460  //    req, resp := client.AssociateSkillWithSkillGroupRequest(params)
   461  //
   462  //    err := req.Send()
   463  //    if err == nil { // resp is now filled
   464  //        fmt.Println(resp)
   465  //    }
   466  //
   467  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillWithSkillGroup
   468  func (c *AlexaForBusiness) AssociateSkillWithSkillGroupRequest(input *AssociateSkillWithSkillGroupInput) (req *request.Request, output *AssociateSkillWithSkillGroupOutput) {
   469  	op := &request.Operation{
   470  		Name:       opAssociateSkillWithSkillGroup,
   471  		HTTPMethod: "POST",
   472  		HTTPPath:   "/",
   473  	}
   474  
   475  	if input == nil {
   476  		input = &AssociateSkillWithSkillGroupInput{}
   477  	}
   478  
   479  	output = &AssociateSkillWithSkillGroupOutput{}
   480  	req = c.newRequest(op, input, output)
   481  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   482  	return
   483  }
   484  
   485  // AssociateSkillWithSkillGroup API operation for Alexa For Business.
   486  //
   487  // Associates a skill with a skill group.
   488  //
   489  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   490  // with awserr.Error's Code and Message methods to get detailed information about
   491  // the error.
   492  //
   493  // See the AWS API reference guide for Alexa For Business's
   494  // API operation AssociateSkillWithSkillGroup for usage and error information.
   495  //
   496  // Returned Error Types:
   497  //   * ConcurrentModificationException
   498  //   There is a concurrent modification of resources.
   499  //
   500  //   * NotFoundException
   501  //   The resource is not found.
   502  //
   503  //   * SkillNotLinkedException
   504  //   The skill must be linked to a third-party account.
   505  //
   506  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillWithSkillGroup
   507  func (c *AlexaForBusiness) AssociateSkillWithSkillGroup(input *AssociateSkillWithSkillGroupInput) (*AssociateSkillWithSkillGroupOutput, error) {
   508  	req, out := c.AssociateSkillWithSkillGroupRequest(input)
   509  	return out, req.Send()
   510  }
   511  
   512  // AssociateSkillWithSkillGroupWithContext is the same as AssociateSkillWithSkillGroup with the addition of
   513  // the ability to pass a context and additional request options.
   514  //
   515  // See AssociateSkillWithSkillGroup for details on how to use this API operation.
   516  //
   517  // The context must be non-nil and will be used for request cancellation. If
   518  // the context is nil a panic will occur. In the future the SDK may create
   519  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   520  // for more information on using Contexts.
   521  func (c *AlexaForBusiness) AssociateSkillWithSkillGroupWithContext(ctx aws.Context, input *AssociateSkillWithSkillGroupInput, opts ...request.Option) (*AssociateSkillWithSkillGroupOutput, error) {
   522  	req, out := c.AssociateSkillWithSkillGroupRequest(input)
   523  	req.SetContext(ctx)
   524  	req.ApplyOptions(opts...)
   525  	return out, req.Send()
   526  }
   527  
   528  const opAssociateSkillWithUsers = "AssociateSkillWithUsers"
   529  
   530  // AssociateSkillWithUsersRequest generates a "aws/request.Request" representing the
   531  // client's request for the AssociateSkillWithUsers operation. The "output" return
   532  // value will be populated with the request's response once the request completes
   533  // successfully.
   534  //
   535  // Use "Send" method on the returned Request to send the API call to the service.
   536  // the "output" return value is not valid until after Send returns without error.
   537  //
   538  // See AssociateSkillWithUsers for more information on using the AssociateSkillWithUsers
   539  // API call, and error handling.
   540  //
   541  // This method is useful when you want to inject custom logic or configuration
   542  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   543  //
   544  //
   545  //    // Example sending a request using the AssociateSkillWithUsersRequest method.
   546  //    req, resp := client.AssociateSkillWithUsersRequest(params)
   547  //
   548  //    err := req.Send()
   549  //    if err == nil { // resp is now filled
   550  //        fmt.Println(resp)
   551  //    }
   552  //
   553  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillWithUsers
   554  func (c *AlexaForBusiness) AssociateSkillWithUsersRequest(input *AssociateSkillWithUsersInput) (req *request.Request, output *AssociateSkillWithUsersOutput) {
   555  	op := &request.Operation{
   556  		Name:       opAssociateSkillWithUsers,
   557  		HTTPMethod: "POST",
   558  		HTTPPath:   "/",
   559  	}
   560  
   561  	if input == nil {
   562  		input = &AssociateSkillWithUsersInput{}
   563  	}
   564  
   565  	output = &AssociateSkillWithUsersOutput{}
   566  	req = c.newRequest(op, input, output)
   567  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
   568  	return
   569  }
   570  
   571  // AssociateSkillWithUsers API operation for Alexa For Business.
   572  //
   573  // Makes a private skill available for enrolled users to enable on their devices.
   574  //
   575  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   576  // with awserr.Error's Code and Message methods to get detailed information about
   577  // the error.
   578  //
   579  // See the AWS API reference guide for Alexa For Business's
   580  // API operation AssociateSkillWithUsers for usage and error information.
   581  //
   582  // Returned Error Types:
   583  //   * ConcurrentModificationException
   584  //   There is a concurrent modification of resources.
   585  //
   586  //   * NotFoundException
   587  //   The resource is not found.
   588  //
   589  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/AssociateSkillWithUsers
   590  func (c *AlexaForBusiness) AssociateSkillWithUsers(input *AssociateSkillWithUsersInput) (*AssociateSkillWithUsersOutput, error) {
   591  	req, out := c.AssociateSkillWithUsersRequest(input)
   592  	return out, req.Send()
   593  }
   594  
   595  // AssociateSkillWithUsersWithContext is the same as AssociateSkillWithUsers with the addition of
   596  // the ability to pass a context and additional request options.
   597  //
   598  // See AssociateSkillWithUsers for details on how to use this API operation.
   599  //
   600  // The context must be non-nil and will be used for request cancellation. If
   601  // the context is nil a panic will occur. In the future the SDK may create
   602  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   603  // for more information on using Contexts.
   604  func (c *AlexaForBusiness) AssociateSkillWithUsersWithContext(ctx aws.Context, input *AssociateSkillWithUsersInput, opts ...request.Option) (*AssociateSkillWithUsersOutput, error) {
   605  	req, out := c.AssociateSkillWithUsersRequest(input)
   606  	req.SetContext(ctx)
   607  	req.ApplyOptions(opts...)
   608  	return out, req.Send()
   609  }
   610  
   611  const opCreateAddressBook = "CreateAddressBook"
   612  
   613  // CreateAddressBookRequest generates a "aws/request.Request" representing the
   614  // client's request for the CreateAddressBook operation. The "output" return
   615  // value will be populated with the request's response once the request completes
   616  // successfully.
   617  //
   618  // Use "Send" method on the returned Request to send the API call to the service.
   619  // the "output" return value is not valid until after Send returns without error.
   620  //
   621  // See CreateAddressBook for more information on using the CreateAddressBook
   622  // API call, and error handling.
   623  //
   624  // This method is useful when you want to inject custom logic or configuration
   625  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   626  //
   627  //
   628  //    // Example sending a request using the CreateAddressBookRequest method.
   629  //    req, resp := client.CreateAddressBookRequest(params)
   630  //
   631  //    err := req.Send()
   632  //    if err == nil { // resp is now filled
   633  //        fmt.Println(resp)
   634  //    }
   635  //
   636  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateAddressBook
   637  func (c *AlexaForBusiness) CreateAddressBookRequest(input *CreateAddressBookInput) (req *request.Request, output *CreateAddressBookOutput) {
   638  	op := &request.Operation{
   639  		Name:       opCreateAddressBook,
   640  		HTTPMethod: "POST",
   641  		HTTPPath:   "/",
   642  	}
   643  
   644  	if input == nil {
   645  		input = &CreateAddressBookInput{}
   646  	}
   647  
   648  	output = &CreateAddressBookOutput{}
   649  	req = c.newRequest(op, input, output)
   650  	return
   651  }
   652  
   653  // CreateAddressBook API operation for Alexa For Business.
   654  //
   655  // Creates an address book with the specified details.
   656  //
   657  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   658  // with awserr.Error's Code and Message methods to get detailed information about
   659  // the error.
   660  //
   661  // See the AWS API reference guide for Alexa For Business's
   662  // API operation CreateAddressBook for usage and error information.
   663  //
   664  // Returned Error Types:
   665  //   * AlreadyExistsException
   666  //   The resource being created already exists.
   667  //
   668  //   * LimitExceededException
   669  //   You are performing an action that would put you beyond your account's limits.
   670  //
   671  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateAddressBook
   672  func (c *AlexaForBusiness) CreateAddressBook(input *CreateAddressBookInput) (*CreateAddressBookOutput, error) {
   673  	req, out := c.CreateAddressBookRequest(input)
   674  	return out, req.Send()
   675  }
   676  
   677  // CreateAddressBookWithContext is the same as CreateAddressBook with the addition of
   678  // the ability to pass a context and additional request options.
   679  //
   680  // See CreateAddressBook for details on how to use this API operation.
   681  //
   682  // The context must be non-nil and will be used for request cancellation. If
   683  // the context is nil a panic will occur. In the future the SDK may create
   684  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   685  // for more information on using Contexts.
   686  func (c *AlexaForBusiness) CreateAddressBookWithContext(ctx aws.Context, input *CreateAddressBookInput, opts ...request.Option) (*CreateAddressBookOutput, error) {
   687  	req, out := c.CreateAddressBookRequest(input)
   688  	req.SetContext(ctx)
   689  	req.ApplyOptions(opts...)
   690  	return out, req.Send()
   691  }
   692  
   693  const opCreateBusinessReportSchedule = "CreateBusinessReportSchedule"
   694  
   695  // CreateBusinessReportScheduleRequest generates a "aws/request.Request" representing the
   696  // client's request for the CreateBusinessReportSchedule operation. The "output" return
   697  // value will be populated with the request's response once the request completes
   698  // successfully.
   699  //
   700  // Use "Send" method on the returned Request to send the API call to the service.
   701  // the "output" return value is not valid until after Send returns without error.
   702  //
   703  // See CreateBusinessReportSchedule for more information on using the CreateBusinessReportSchedule
   704  // API call, and error handling.
   705  //
   706  // This method is useful when you want to inject custom logic or configuration
   707  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   708  //
   709  //
   710  //    // Example sending a request using the CreateBusinessReportScheduleRequest method.
   711  //    req, resp := client.CreateBusinessReportScheduleRequest(params)
   712  //
   713  //    err := req.Send()
   714  //    if err == nil { // resp is now filled
   715  //        fmt.Println(resp)
   716  //    }
   717  //
   718  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateBusinessReportSchedule
   719  func (c *AlexaForBusiness) CreateBusinessReportScheduleRequest(input *CreateBusinessReportScheduleInput) (req *request.Request, output *CreateBusinessReportScheduleOutput) {
   720  	op := &request.Operation{
   721  		Name:       opCreateBusinessReportSchedule,
   722  		HTTPMethod: "POST",
   723  		HTTPPath:   "/",
   724  	}
   725  
   726  	if input == nil {
   727  		input = &CreateBusinessReportScheduleInput{}
   728  	}
   729  
   730  	output = &CreateBusinessReportScheduleOutput{}
   731  	req = c.newRequest(op, input, output)
   732  	return
   733  }
   734  
   735  // CreateBusinessReportSchedule API operation for Alexa For Business.
   736  //
   737  // Creates a recurring schedule for usage reports to deliver to the specified
   738  // S3 location with a specified daily or weekly interval.
   739  //
   740  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   741  // with awserr.Error's Code and Message methods to get detailed information about
   742  // the error.
   743  //
   744  // See the AWS API reference guide for Alexa For Business's
   745  // API operation CreateBusinessReportSchedule for usage and error information.
   746  //
   747  // Returned Error Types:
   748  //   * AlreadyExistsException
   749  //   The resource being created already exists.
   750  //
   751  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateBusinessReportSchedule
   752  func (c *AlexaForBusiness) CreateBusinessReportSchedule(input *CreateBusinessReportScheduleInput) (*CreateBusinessReportScheduleOutput, error) {
   753  	req, out := c.CreateBusinessReportScheduleRequest(input)
   754  	return out, req.Send()
   755  }
   756  
   757  // CreateBusinessReportScheduleWithContext is the same as CreateBusinessReportSchedule with the addition of
   758  // the ability to pass a context and additional request options.
   759  //
   760  // See CreateBusinessReportSchedule for details on how to use this API operation.
   761  //
   762  // The context must be non-nil and will be used for request cancellation. If
   763  // the context is nil a panic will occur. In the future the SDK may create
   764  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   765  // for more information on using Contexts.
   766  func (c *AlexaForBusiness) CreateBusinessReportScheduleWithContext(ctx aws.Context, input *CreateBusinessReportScheduleInput, opts ...request.Option) (*CreateBusinessReportScheduleOutput, error) {
   767  	req, out := c.CreateBusinessReportScheduleRequest(input)
   768  	req.SetContext(ctx)
   769  	req.ApplyOptions(opts...)
   770  	return out, req.Send()
   771  }
   772  
   773  const opCreateConferenceProvider = "CreateConferenceProvider"
   774  
   775  // CreateConferenceProviderRequest generates a "aws/request.Request" representing the
   776  // client's request for the CreateConferenceProvider operation. The "output" return
   777  // value will be populated with the request's response once the request completes
   778  // successfully.
   779  //
   780  // Use "Send" method on the returned Request to send the API call to the service.
   781  // the "output" return value is not valid until after Send returns without error.
   782  //
   783  // See CreateConferenceProvider for more information on using the CreateConferenceProvider
   784  // API call, and error handling.
   785  //
   786  // This method is useful when you want to inject custom logic or configuration
   787  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   788  //
   789  //
   790  //    // Example sending a request using the CreateConferenceProviderRequest method.
   791  //    req, resp := client.CreateConferenceProviderRequest(params)
   792  //
   793  //    err := req.Send()
   794  //    if err == nil { // resp is now filled
   795  //        fmt.Println(resp)
   796  //    }
   797  //
   798  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateConferenceProvider
   799  func (c *AlexaForBusiness) CreateConferenceProviderRequest(input *CreateConferenceProviderInput) (req *request.Request, output *CreateConferenceProviderOutput) {
   800  	op := &request.Operation{
   801  		Name:       opCreateConferenceProvider,
   802  		HTTPMethod: "POST",
   803  		HTTPPath:   "/",
   804  	}
   805  
   806  	if input == nil {
   807  		input = &CreateConferenceProviderInput{}
   808  	}
   809  
   810  	output = &CreateConferenceProviderOutput{}
   811  	req = c.newRequest(op, input, output)
   812  	return
   813  }
   814  
   815  // CreateConferenceProvider API operation for Alexa For Business.
   816  //
   817  // Adds a new conference provider under the user's AWS account.
   818  //
   819  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   820  // with awserr.Error's Code and Message methods to get detailed information about
   821  // the error.
   822  //
   823  // See the AWS API reference guide for Alexa For Business's
   824  // API operation CreateConferenceProvider for usage and error information.
   825  //
   826  // Returned Error Types:
   827  //   * AlreadyExistsException
   828  //   The resource being created already exists.
   829  //
   830  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateConferenceProvider
   831  func (c *AlexaForBusiness) CreateConferenceProvider(input *CreateConferenceProviderInput) (*CreateConferenceProviderOutput, error) {
   832  	req, out := c.CreateConferenceProviderRequest(input)
   833  	return out, req.Send()
   834  }
   835  
   836  // CreateConferenceProviderWithContext is the same as CreateConferenceProvider with the addition of
   837  // the ability to pass a context and additional request options.
   838  //
   839  // See CreateConferenceProvider for details on how to use this API operation.
   840  //
   841  // The context must be non-nil and will be used for request cancellation. If
   842  // the context is nil a panic will occur. In the future the SDK may create
   843  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   844  // for more information on using Contexts.
   845  func (c *AlexaForBusiness) CreateConferenceProviderWithContext(ctx aws.Context, input *CreateConferenceProviderInput, opts ...request.Option) (*CreateConferenceProviderOutput, error) {
   846  	req, out := c.CreateConferenceProviderRequest(input)
   847  	req.SetContext(ctx)
   848  	req.ApplyOptions(opts...)
   849  	return out, req.Send()
   850  }
   851  
   852  const opCreateContact = "CreateContact"
   853  
   854  // CreateContactRequest generates a "aws/request.Request" representing the
   855  // client's request for the CreateContact operation. The "output" return
   856  // value will be populated with the request's response once the request completes
   857  // successfully.
   858  //
   859  // Use "Send" method on the returned Request to send the API call to the service.
   860  // the "output" return value is not valid until after Send returns without error.
   861  //
   862  // See CreateContact for more information on using the CreateContact
   863  // API call, and error handling.
   864  //
   865  // This method is useful when you want to inject custom logic or configuration
   866  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   867  //
   868  //
   869  //    // Example sending a request using the CreateContactRequest method.
   870  //    req, resp := client.CreateContactRequest(params)
   871  //
   872  //    err := req.Send()
   873  //    if err == nil { // resp is now filled
   874  //        fmt.Println(resp)
   875  //    }
   876  //
   877  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateContact
   878  func (c *AlexaForBusiness) CreateContactRequest(input *CreateContactInput) (req *request.Request, output *CreateContactOutput) {
   879  	op := &request.Operation{
   880  		Name:       opCreateContact,
   881  		HTTPMethod: "POST",
   882  		HTTPPath:   "/",
   883  	}
   884  
   885  	if input == nil {
   886  		input = &CreateContactInput{}
   887  	}
   888  
   889  	output = &CreateContactOutput{}
   890  	req = c.newRequest(op, input, output)
   891  	return
   892  }
   893  
   894  // CreateContact API operation for Alexa For Business.
   895  //
   896  // Creates a contact with the specified details.
   897  //
   898  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   899  // with awserr.Error's Code and Message methods to get detailed information about
   900  // the error.
   901  //
   902  // See the AWS API reference guide for Alexa For Business's
   903  // API operation CreateContact for usage and error information.
   904  //
   905  // Returned Error Types:
   906  //   * AlreadyExistsException
   907  //   The resource being created already exists.
   908  //
   909  //   * LimitExceededException
   910  //   You are performing an action that would put you beyond your account's limits.
   911  //
   912  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateContact
   913  func (c *AlexaForBusiness) CreateContact(input *CreateContactInput) (*CreateContactOutput, error) {
   914  	req, out := c.CreateContactRequest(input)
   915  	return out, req.Send()
   916  }
   917  
   918  // CreateContactWithContext is the same as CreateContact with the addition of
   919  // the ability to pass a context and additional request options.
   920  //
   921  // See CreateContact for details on how to use this API operation.
   922  //
   923  // The context must be non-nil and will be used for request cancellation. If
   924  // the context is nil a panic will occur. In the future the SDK may create
   925  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   926  // for more information on using Contexts.
   927  func (c *AlexaForBusiness) CreateContactWithContext(ctx aws.Context, input *CreateContactInput, opts ...request.Option) (*CreateContactOutput, error) {
   928  	req, out := c.CreateContactRequest(input)
   929  	req.SetContext(ctx)
   930  	req.ApplyOptions(opts...)
   931  	return out, req.Send()
   932  }
   933  
   934  const opCreateGatewayGroup = "CreateGatewayGroup"
   935  
   936  // CreateGatewayGroupRequest generates a "aws/request.Request" representing the
   937  // client's request for the CreateGatewayGroup operation. The "output" return
   938  // value will be populated with the request's response once the request completes
   939  // successfully.
   940  //
   941  // Use "Send" method on the returned Request to send the API call to the service.
   942  // the "output" return value is not valid until after Send returns without error.
   943  //
   944  // See CreateGatewayGroup for more information on using the CreateGatewayGroup
   945  // API call, and error handling.
   946  //
   947  // This method is useful when you want to inject custom logic or configuration
   948  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   949  //
   950  //
   951  //    // Example sending a request using the CreateGatewayGroupRequest method.
   952  //    req, resp := client.CreateGatewayGroupRequest(params)
   953  //
   954  //    err := req.Send()
   955  //    if err == nil { // resp is now filled
   956  //        fmt.Println(resp)
   957  //    }
   958  //
   959  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateGatewayGroup
   960  func (c *AlexaForBusiness) CreateGatewayGroupRequest(input *CreateGatewayGroupInput) (req *request.Request, output *CreateGatewayGroupOutput) {
   961  	op := &request.Operation{
   962  		Name:       opCreateGatewayGroup,
   963  		HTTPMethod: "POST",
   964  		HTTPPath:   "/",
   965  	}
   966  
   967  	if input == nil {
   968  		input = &CreateGatewayGroupInput{}
   969  	}
   970  
   971  	output = &CreateGatewayGroupOutput{}
   972  	req = c.newRequest(op, input, output)
   973  	return
   974  }
   975  
   976  // CreateGatewayGroup API operation for Alexa For Business.
   977  //
   978  // Creates a gateway group with the specified details.
   979  //
   980  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   981  // with awserr.Error's Code and Message methods to get detailed information about
   982  // the error.
   983  //
   984  // See the AWS API reference guide for Alexa For Business's
   985  // API operation CreateGatewayGroup for usage and error information.
   986  //
   987  // Returned Error Types:
   988  //   * AlreadyExistsException
   989  //   The resource being created already exists.
   990  //
   991  //   * LimitExceededException
   992  //   You are performing an action that would put you beyond your account's limits.
   993  //
   994  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateGatewayGroup
   995  func (c *AlexaForBusiness) CreateGatewayGroup(input *CreateGatewayGroupInput) (*CreateGatewayGroupOutput, error) {
   996  	req, out := c.CreateGatewayGroupRequest(input)
   997  	return out, req.Send()
   998  }
   999  
  1000  // CreateGatewayGroupWithContext is the same as CreateGatewayGroup with the addition of
  1001  // the ability to pass a context and additional request options.
  1002  //
  1003  // See CreateGatewayGroup for details on how to use this API operation.
  1004  //
  1005  // The context must be non-nil and will be used for request cancellation. If
  1006  // the context is nil a panic will occur. In the future the SDK may create
  1007  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1008  // for more information on using Contexts.
  1009  func (c *AlexaForBusiness) CreateGatewayGroupWithContext(ctx aws.Context, input *CreateGatewayGroupInput, opts ...request.Option) (*CreateGatewayGroupOutput, error) {
  1010  	req, out := c.CreateGatewayGroupRequest(input)
  1011  	req.SetContext(ctx)
  1012  	req.ApplyOptions(opts...)
  1013  	return out, req.Send()
  1014  }
  1015  
  1016  const opCreateNetworkProfile = "CreateNetworkProfile"
  1017  
  1018  // CreateNetworkProfileRequest generates a "aws/request.Request" representing the
  1019  // client's request for the CreateNetworkProfile operation. The "output" return
  1020  // value will be populated with the request's response once the request completes
  1021  // successfully.
  1022  //
  1023  // Use "Send" method on the returned Request to send the API call to the service.
  1024  // the "output" return value is not valid until after Send returns without error.
  1025  //
  1026  // See CreateNetworkProfile for more information on using the CreateNetworkProfile
  1027  // API call, and error handling.
  1028  //
  1029  // This method is useful when you want to inject custom logic or configuration
  1030  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1031  //
  1032  //
  1033  //    // Example sending a request using the CreateNetworkProfileRequest method.
  1034  //    req, resp := client.CreateNetworkProfileRequest(params)
  1035  //
  1036  //    err := req.Send()
  1037  //    if err == nil { // resp is now filled
  1038  //        fmt.Println(resp)
  1039  //    }
  1040  //
  1041  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateNetworkProfile
  1042  func (c *AlexaForBusiness) CreateNetworkProfileRequest(input *CreateNetworkProfileInput) (req *request.Request, output *CreateNetworkProfileOutput) {
  1043  	op := &request.Operation{
  1044  		Name:       opCreateNetworkProfile,
  1045  		HTTPMethod: "POST",
  1046  		HTTPPath:   "/",
  1047  	}
  1048  
  1049  	if input == nil {
  1050  		input = &CreateNetworkProfileInput{}
  1051  	}
  1052  
  1053  	output = &CreateNetworkProfileOutput{}
  1054  	req = c.newRequest(op, input, output)
  1055  	return
  1056  }
  1057  
  1058  // CreateNetworkProfile API operation for Alexa For Business.
  1059  //
  1060  // Creates a network profile with the specified details.
  1061  //
  1062  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1063  // with awserr.Error's Code and Message methods to get detailed information about
  1064  // the error.
  1065  //
  1066  // See the AWS API reference guide for Alexa For Business's
  1067  // API operation CreateNetworkProfile for usage and error information.
  1068  //
  1069  // Returned Error Types:
  1070  //   * AlreadyExistsException
  1071  //   The resource being created already exists.
  1072  //
  1073  //   * LimitExceededException
  1074  //   You are performing an action that would put you beyond your account's limits.
  1075  //
  1076  //   * ConcurrentModificationException
  1077  //   There is a concurrent modification of resources.
  1078  //
  1079  //   * InvalidCertificateAuthorityException
  1080  //   The Certificate Authority can't issue or revoke a certificate.
  1081  //
  1082  //   * InvalidServiceLinkedRoleStateException
  1083  //   The service linked role is locked for deletion.
  1084  //
  1085  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateNetworkProfile
  1086  func (c *AlexaForBusiness) CreateNetworkProfile(input *CreateNetworkProfileInput) (*CreateNetworkProfileOutput, error) {
  1087  	req, out := c.CreateNetworkProfileRequest(input)
  1088  	return out, req.Send()
  1089  }
  1090  
  1091  // CreateNetworkProfileWithContext is the same as CreateNetworkProfile with the addition of
  1092  // the ability to pass a context and additional request options.
  1093  //
  1094  // See CreateNetworkProfile for details on how to use this API operation.
  1095  //
  1096  // The context must be non-nil and will be used for request cancellation. If
  1097  // the context is nil a panic will occur. In the future the SDK may create
  1098  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1099  // for more information on using Contexts.
  1100  func (c *AlexaForBusiness) CreateNetworkProfileWithContext(ctx aws.Context, input *CreateNetworkProfileInput, opts ...request.Option) (*CreateNetworkProfileOutput, error) {
  1101  	req, out := c.CreateNetworkProfileRequest(input)
  1102  	req.SetContext(ctx)
  1103  	req.ApplyOptions(opts...)
  1104  	return out, req.Send()
  1105  }
  1106  
  1107  const opCreateProfile = "CreateProfile"
  1108  
  1109  // CreateProfileRequest generates a "aws/request.Request" representing the
  1110  // client's request for the CreateProfile operation. The "output" return
  1111  // value will be populated with the request's response once the request completes
  1112  // successfully.
  1113  //
  1114  // Use "Send" method on the returned Request to send the API call to the service.
  1115  // the "output" return value is not valid until after Send returns without error.
  1116  //
  1117  // See CreateProfile for more information on using the CreateProfile
  1118  // API call, and error handling.
  1119  //
  1120  // This method is useful when you want to inject custom logic or configuration
  1121  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1122  //
  1123  //
  1124  //    // Example sending a request using the CreateProfileRequest method.
  1125  //    req, resp := client.CreateProfileRequest(params)
  1126  //
  1127  //    err := req.Send()
  1128  //    if err == nil { // resp is now filled
  1129  //        fmt.Println(resp)
  1130  //    }
  1131  //
  1132  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateProfile
  1133  func (c *AlexaForBusiness) CreateProfileRequest(input *CreateProfileInput) (req *request.Request, output *CreateProfileOutput) {
  1134  	op := &request.Operation{
  1135  		Name:       opCreateProfile,
  1136  		HTTPMethod: "POST",
  1137  		HTTPPath:   "/",
  1138  	}
  1139  
  1140  	if input == nil {
  1141  		input = &CreateProfileInput{}
  1142  	}
  1143  
  1144  	output = &CreateProfileOutput{}
  1145  	req = c.newRequest(op, input, output)
  1146  	return
  1147  }
  1148  
  1149  // CreateProfile API operation for Alexa For Business.
  1150  //
  1151  // Creates a new room profile with the specified details.
  1152  //
  1153  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1154  // with awserr.Error's Code and Message methods to get detailed information about
  1155  // the error.
  1156  //
  1157  // See the AWS API reference guide for Alexa For Business's
  1158  // API operation CreateProfile for usage and error information.
  1159  //
  1160  // Returned Error Types:
  1161  //   * LimitExceededException
  1162  //   You are performing an action that would put you beyond your account's limits.
  1163  //
  1164  //   * AlreadyExistsException
  1165  //   The resource being created already exists.
  1166  //
  1167  //   * ConcurrentModificationException
  1168  //   There is a concurrent modification of resources.
  1169  //
  1170  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateProfile
  1171  func (c *AlexaForBusiness) CreateProfile(input *CreateProfileInput) (*CreateProfileOutput, error) {
  1172  	req, out := c.CreateProfileRequest(input)
  1173  	return out, req.Send()
  1174  }
  1175  
  1176  // CreateProfileWithContext is the same as CreateProfile with the addition of
  1177  // the ability to pass a context and additional request options.
  1178  //
  1179  // See CreateProfile for details on how to use this API operation.
  1180  //
  1181  // The context must be non-nil and will be used for request cancellation. If
  1182  // the context is nil a panic will occur. In the future the SDK may create
  1183  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1184  // for more information on using Contexts.
  1185  func (c *AlexaForBusiness) CreateProfileWithContext(ctx aws.Context, input *CreateProfileInput, opts ...request.Option) (*CreateProfileOutput, error) {
  1186  	req, out := c.CreateProfileRequest(input)
  1187  	req.SetContext(ctx)
  1188  	req.ApplyOptions(opts...)
  1189  	return out, req.Send()
  1190  }
  1191  
  1192  const opCreateRoom = "CreateRoom"
  1193  
  1194  // CreateRoomRequest generates a "aws/request.Request" representing the
  1195  // client's request for the CreateRoom operation. The "output" return
  1196  // value will be populated with the request's response once the request completes
  1197  // successfully.
  1198  //
  1199  // Use "Send" method on the returned Request to send the API call to the service.
  1200  // the "output" return value is not valid until after Send returns without error.
  1201  //
  1202  // See CreateRoom for more information on using the CreateRoom
  1203  // API call, and error handling.
  1204  //
  1205  // This method is useful when you want to inject custom logic or configuration
  1206  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1207  //
  1208  //
  1209  //    // Example sending a request using the CreateRoomRequest method.
  1210  //    req, resp := client.CreateRoomRequest(params)
  1211  //
  1212  //    err := req.Send()
  1213  //    if err == nil { // resp is now filled
  1214  //        fmt.Println(resp)
  1215  //    }
  1216  //
  1217  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateRoom
  1218  func (c *AlexaForBusiness) CreateRoomRequest(input *CreateRoomInput) (req *request.Request, output *CreateRoomOutput) {
  1219  	op := &request.Operation{
  1220  		Name:       opCreateRoom,
  1221  		HTTPMethod: "POST",
  1222  		HTTPPath:   "/",
  1223  	}
  1224  
  1225  	if input == nil {
  1226  		input = &CreateRoomInput{}
  1227  	}
  1228  
  1229  	output = &CreateRoomOutput{}
  1230  	req = c.newRequest(op, input, output)
  1231  	return
  1232  }
  1233  
  1234  // CreateRoom API operation for Alexa For Business.
  1235  //
  1236  // Creates a room with the specified details.
  1237  //
  1238  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1239  // with awserr.Error's Code and Message methods to get detailed information about
  1240  // the error.
  1241  //
  1242  // See the AWS API reference guide for Alexa For Business's
  1243  // API operation CreateRoom for usage and error information.
  1244  //
  1245  // Returned Error Types:
  1246  //   * AlreadyExistsException
  1247  //   The resource being created already exists.
  1248  //
  1249  //   * LimitExceededException
  1250  //   You are performing an action that would put you beyond your account's limits.
  1251  //
  1252  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateRoom
  1253  func (c *AlexaForBusiness) CreateRoom(input *CreateRoomInput) (*CreateRoomOutput, error) {
  1254  	req, out := c.CreateRoomRequest(input)
  1255  	return out, req.Send()
  1256  }
  1257  
  1258  // CreateRoomWithContext is the same as CreateRoom with the addition of
  1259  // the ability to pass a context and additional request options.
  1260  //
  1261  // See CreateRoom for details on how to use this API operation.
  1262  //
  1263  // The context must be non-nil and will be used for request cancellation. If
  1264  // the context is nil a panic will occur. In the future the SDK may create
  1265  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1266  // for more information on using Contexts.
  1267  func (c *AlexaForBusiness) CreateRoomWithContext(ctx aws.Context, input *CreateRoomInput, opts ...request.Option) (*CreateRoomOutput, error) {
  1268  	req, out := c.CreateRoomRequest(input)
  1269  	req.SetContext(ctx)
  1270  	req.ApplyOptions(opts...)
  1271  	return out, req.Send()
  1272  }
  1273  
  1274  const opCreateSkillGroup = "CreateSkillGroup"
  1275  
  1276  // CreateSkillGroupRequest generates a "aws/request.Request" representing the
  1277  // client's request for the CreateSkillGroup operation. The "output" return
  1278  // value will be populated with the request's response once the request completes
  1279  // successfully.
  1280  //
  1281  // Use "Send" method on the returned Request to send the API call to the service.
  1282  // the "output" return value is not valid until after Send returns without error.
  1283  //
  1284  // See CreateSkillGroup for more information on using the CreateSkillGroup
  1285  // API call, and error handling.
  1286  //
  1287  // This method is useful when you want to inject custom logic or configuration
  1288  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1289  //
  1290  //
  1291  //    // Example sending a request using the CreateSkillGroupRequest method.
  1292  //    req, resp := client.CreateSkillGroupRequest(params)
  1293  //
  1294  //    err := req.Send()
  1295  //    if err == nil { // resp is now filled
  1296  //        fmt.Println(resp)
  1297  //    }
  1298  //
  1299  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateSkillGroup
  1300  func (c *AlexaForBusiness) CreateSkillGroupRequest(input *CreateSkillGroupInput) (req *request.Request, output *CreateSkillGroupOutput) {
  1301  	op := &request.Operation{
  1302  		Name:       opCreateSkillGroup,
  1303  		HTTPMethod: "POST",
  1304  		HTTPPath:   "/",
  1305  	}
  1306  
  1307  	if input == nil {
  1308  		input = &CreateSkillGroupInput{}
  1309  	}
  1310  
  1311  	output = &CreateSkillGroupOutput{}
  1312  	req = c.newRequest(op, input, output)
  1313  	return
  1314  }
  1315  
  1316  // CreateSkillGroup API operation for Alexa For Business.
  1317  //
  1318  // Creates a skill group with a specified name and description.
  1319  //
  1320  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1321  // with awserr.Error's Code and Message methods to get detailed information about
  1322  // the error.
  1323  //
  1324  // See the AWS API reference guide for Alexa For Business's
  1325  // API operation CreateSkillGroup for usage and error information.
  1326  //
  1327  // Returned Error Types:
  1328  //   * AlreadyExistsException
  1329  //   The resource being created already exists.
  1330  //
  1331  //   * LimitExceededException
  1332  //   You are performing an action that would put you beyond your account's limits.
  1333  //
  1334  //   * ConcurrentModificationException
  1335  //   There is a concurrent modification of resources.
  1336  //
  1337  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateSkillGroup
  1338  func (c *AlexaForBusiness) CreateSkillGroup(input *CreateSkillGroupInput) (*CreateSkillGroupOutput, error) {
  1339  	req, out := c.CreateSkillGroupRequest(input)
  1340  	return out, req.Send()
  1341  }
  1342  
  1343  // CreateSkillGroupWithContext is the same as CreateSkillGroup with the addition of
  1344  // the ability to pass a context and additional request options.
  1345  //
  1346  // See CreateSkillGroup for details on how to use this API operation.
  1347  //
  1348  // The context must be non-nil and will be used for request cancellation. If
  1349  // the context is nil a panic will occur. In the future the SDK may create
  1350  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1351  // for more information on using Contexts.
  1352  func (c *AlexaForBusiness) CreateSkillGroupWithContext(ctx aws.Context, input *CreateSkillGroupInput, opts ...request.Option) (*CreateSkillGroupOutput, error) {
  1353  	req, out := c.CreateSkillGroupRequest(input)
  1354  	req.SetContext(ctx)
  1355  	req.ApplyOptions(opts...)
  1356  	return out, req.Send()
  1357  }
  1358  
  1359  const opCreateUser = "CreateUser"
  1360  
  1361  // CreateUserRequest generates a "aws/request.Request" representing the
  1362  // client's request for the CreateUser operation. The "output" return
  1363  // value will be populated with the request's response once the request completes
  1364  // successfully.
  1365  //
  1366  // Use "Send" method on the returned Request to send the API call to the service.
  1367  // the "output" return value is not valid until after Send returns without error.
  1368  //
  1369  // See CreateUser for more information on using the CreateUser
  1370  // API call, and error handling.
  1371  //
  1372  // This method is useful when you want to inject custom logic or configuration
  1373  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1374  //
  1375  //
  1376  //    // Example sending a request using the CreateUserRequest method.
  1377  //    req, resp := client.CreateUserRequest(params)
  1378  //
  1379  //    err := req.Send()
  1380  //    if err == nil { // resp is now filled
  1381  //        fmt.Println(resp)
  1382  //    }
  1383  //
  1384  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateUser
  1385  func (c *AlexaForBusiness) CreateUserRequest(input *CreateUserInput) (req *request.Request, output *CreateUserOutput) {
  1386  	op := &request.Operation{
  1387  		Name:       opCreateUser,
  1388  		HTTPMethod: "POST",
  1389  		HTTPPath:   "/",
  1390  	}
  1391  
  1392  	if input == nil {
  1393  		input = &CreateUserInput{}
  1394  	}
  1395  
  1396  	output = &CreateUserOutput{}
  1397  	req = c.newRequest(op, input, output)
  1398  	return
  1399  }
  1400  
  1401  // CreateUser API operation for Alexa For Business.
  1402  //
  1403  // Creates a user.
  1404  //
  1405  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1406  // with awserr.Error's Code and Message methods to get detailed information about
  1407  // the error.
  1408  //
  1409  // See the AWS API reference guide for Alexa For Business's
  1410  // API operation CreateUser for usage and error information.
  1411  //
  1412  // Returned Error Types:
  1413  //   * ResourceInUseException
  1414  //   The resource in the request is already in use.
  1415  //
  1416  //   * LimitExceededException
  1417  //   You are performing an action that would put you beyond your account's limits.
  1418  //
  1419  //   * ConcurrentModificationException
  1420  //   There is a concurrent modification of resources.
  1421  //
  1422  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/CreateUser
  1423  func (c *AlexaForBusiness) CreateUser(input *CreateUserInput) (*CreateUserOutput, error) {
  1424  	req, out := c.CreateUserRequest(input)
  1425  	return out, req.Send()
  1426  }
  1427  
  1428  // CreateUserWithContext is the same as CreateUser with the addition of
  1429  // the ability to pass a context and additional request options.
  1430  //
  1431  // See CreateUser for details on how to use this API operation.
  1432  //
  1433  // The context must be non-nil and will be used for request cancellation. If
  1434  // the context is nil a panic will occur. In the future the SDK may create
  1435  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1436  // for more information on using Contexts.
  1437  func (c *AlexaForBusiness) CreateUserWithContext(ctx aws.Context, input *CreateUserInput, opts ...request.Option) (*CreateUserOutput, error) {
  1438  	req, out := c.CreateUserRequest(input)
  1439  	req.SetContext(ctx)
  1440  	req.ApplyOptions(opts...)
  1441  	return out, req.Send()
  1442  }
  1443  
  1444  const opDeleteAddressBook = "DeleteAddressBook"
  1445  
  1446  // DeleteAddressBookRequest generates a "aws/request.Request" representing the
  1447  // client's request for the DeleteAddressBook operation. The "output" return
  1448  // value will be populated with the request's response once the request completes
  1449  // successfully.
  1450  //
  1451  // Use "Send" method on the returned Request to send the API call to the service.
  1452  // the "output" return value is not valid until after Send returns without error.
  1453  //
  1454  // See DeleteAddressBook for more information on using the DeleteAddressBook
  1455  // API call, and error handling.
  1456  //
  1457  // This method is useful when you want to inject custom logic or configuration
  1458  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1459  //
  1460  //
  1461  //    // Example sending a request using the DeleteAddressBookRequest method.
  1462  //    req, resp := client.DeleteAddressBookRequest(params)
  1463  //
  1464  //    err := req.Send()
  1465  //    if err == nil { // resp is now filled
  1466  //        fmt.Println(resp)
  1467  //    }
  1468  //
  1469  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteAddressBook
  1470  func (c *AlexaForBusiness) DeleteAddressBookRequest(input *DeleteAddressBookInput) (req *request.Request, output *DeleteAddressBookOutput) {
  1471  	op := &request.Operation{
  1472  		Name:       opDeleteAddressBook,
  1473  		HTTPMethod: "POST",
  1474  		HTTPPath:   "/",
  1475  	}
  1476  
  1477  	if input == nil {
  1478  		input = &DeleteAddressBookInput{}
  1479  	}
  1480  
  1481  	output = &DeleteAddressBookOutput{}
  1482  	req = c.newRequest(op, input, output)
  1483  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1484  	return
  1485  }
  1486  
  1487  // DeleteAddressBook API operation for Alexa For Business.
  1488  //
  1489  // Deletes an address book by the address book ARN.
  1490  //
  1491  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1492  // with awserr.Error's Code and Message methods to get detailed information about
  1493  // the error.
  1494  //
  1495  // See the AWS API reference guide for Alexa For Business's
  1496  // API operation DeleteAddressBook for usage and error information.
  1497  //
  1498  // Returned Error Types:
  1499  //   * NotFoundException
  1500  //   The resource is not found.
  1501  //
  1502  //   * ConcurrentModificationException
  1503  //   There is a concurrent modification of resources.
  1504  //
  1505  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteAddressBook
  1506  func (c *AlexaForBusiness) DeleteAddressBook(input *DeleteAddressBookInput) (*DeleteAddressBookOutput, error) {
  1507  	req, out := c.DeleteAddressBookRequest(input)
  1508  	return out, req.Send()
  1509  }
  1510  
  1511  // DeleteAddressBookWithContext is the same as DeleteAddressBook with the addition of
  1512  // the ability to pass a context and additional request options.
  1513  //
  1514  // See DeleteAddressBook for details on how to use this API operation.
  1515  //
  1516  // The context must be non-nil and will be used for request cancellation. If
  1517  // the context is nil a panic will occur. In the future the SDK may create
  1518  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1519  // for more information on using Contexts.
  1520  func (c *AlexaForBusiness) DeleteAddressBookWithContext(ctx aws.Context, input *DeleteAddressBookInput, opts ...request.Option) (*DeleteAddressBookOutput, error) {
  1521  	req, out := c.DeleteAddressBookRequest(input)
  1522  	req.SetContext(ctx)
  1523  	req.ApplyOptions(opts...)
  1524  	return out, req.Send()
  1525  }
  1526  
  1527  const opDeleteBusinessReportSchedule = "DeleteBusinessReportSchedule"
  1528  
  1529  // DeleteBusinessReportScheduleRequest generates a "aws/request.Request" representing the
  1530  // client's request for the DeleteBusinessReportSchedule operation. The "output" return
  1531  // value will be populated with the request's response once the request completes
  1532  // successfully.
  1533  //
  1534  // Use "Send" method on the returned Request to send the API call to the service.
  1535  // the "output" return value is not valid until after Send returns without error.
  1536  //
  1537  // See DeleteBusinessReportSchedule for more information on using the DeleteBusinessReportSchedule
  1538  // API call, and error handling.
  1539  //
  1540  // This method is useful when you want to inject custom logic or configuration
  1541  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1542  //
  1543  //
  1544  //    // Example sending a request using the DeleteBusinessReportScheduleRequest method.
  1545  //    req, resp := client.DeleteBusinessReportScheduleRequest(params)
  1546  //
  1547  //    err := req.Send()
  1548  //    if err == nil { // resp is now filled
  1549  //        fmt.Println(resp)
  1550  //    }
  1551  //
  1552  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteBusinessReportSchedule
  1553  func (c *AlexaForBusiness) DeleteBusinessReportScheduleRequest(input *DeleteBusinessReportScheduleInput) (req *request.Request, output *DeleteBusinessReportScheduleOutput) {
  1554  	op := &request.Operation{
  1555  		Name:       opDeleteBusinessReportSchedule,
  1556  		HTTPMethod: "POST",
  1557  		HTTPPath:   "/",
  1558  	}
  1559  
  1560  	if input == nil {
  1561  		input = &DeleteBusinessReportScheduleInput{}
  1562  	}
  1563  
  1564  	output = &DeleteBusinessReportScheduleOutput{}
  1565  	req = c.newRequest(op, input, output)
  1566  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1567  	return
  1568  }
  1569  
  1570  // DeleteBusinessReportSchedule API operation for Alexa For Business.
  1571  //
  1572  // Deletes the recurring report delivery schedule with the specified schedule
  1573  // ARN.
  1574  //
  1575  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1576  // with awserr.Error's Code and Message methods to get detailed information about
  1577  // the error.
  1578  //
  1579  // See the AWS API reference guide for Alexa For Business's
  1580  // API operation DeleteBusinessReportSchedule for usage and error information.
  1581  //
  1582  // Returned Error Types:
  1583  //   * NotFoundException
  1584  //   The resource is not found.
  1585  //
  1586  //   * ConcurrentModificationException
  1587  //   There is a concurrent modification of resources.
  1588  //
  1589  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteBusinessReportSchedule
  1590  func (c *AlexaForBusiness) DeleteBusinessReportSchedule(input *DeleteBusinessReportScheduleInput) (*DeleteBusinessReportScheduleOutput, error) {
  1591  	req, out := c.DeleteBusinessReportScheduleRequest(input)
  1592  	return out, req.Send()
  1593  }
  1594  
  1595  // DeleteBusinessReportScheduleWithContext is the same as DeleteBusinessReportSchedule with the addition of
  1596  // the ability to pass a context and additional request options.
  1597  //
  1598  // See DeleteBusinessReportSchedule for details on how to use this API operation.
  1599  //
  1600  // The context must be non-nil and will be used for request cancellation. If
  1601  // the context is nil a panic will occur. In the future the SDK may create
  1602  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1603  // for more information on using Contexts.
  1604  func (c *AlexaForBusiness) DeleteBusinessReportScheduleWithContext(ctx aws.Context, input *DeleteBusinessReportScheduleInput, opts ...request.Option) (*DeleteBusinessReportScheduleOutput, error) {
  1605  	req, out := c.DeleteBusinessReportScheduleRequest(input)
  1606  	req.SetContext(ctx)
  1607  	req.ApplyOptions(opts...)
  1608  	return out, req.Send()
  1609  }
  1610  
  1611  const opDeleteConferenceProvider = "DeleteConferenceProvider"
  1612  
  1613  // DeleteConferenceProviderRequest generates a "aws/request.Request" representing the
  1614  // client's request for the DeleteConferenceProvider operation. The "output" return
  1615  // value will be populated with the request's response once the request completes
  1616  // successfully.
  1617  //
  1618  // Use "Send" method on the returned Request to send the API call to the service.
  1619  // the "output" return value is not valid until after Send returns without error.
  1620  //
  1621  // See DeleteConferenceProvider for more information on using the DeleteConferenceProvider
  1622  // API call, and error handling.
  1623  //
  1624  // This method is useful when you want to inject custom logic or configuration
  1625  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1626  //
  1627  //
  1628  //    // Example sending a request using the DeleteConferenceProviderRequest method.
  1629  //    req, resp := client.DeleteConferenceProviderRequest(params)
  1630  //
  1631  //    err := req.Send()
  1632  //    if err == nil { // resp is now filled
  1633  //        fmt.Println(resp)
  1634  //    }
  1635  //
  1636  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteConferenceProvider
  1637  func (c *AlexaForBusiness) DeleteConferenceProviderRequest(input *DeleteConferenceProviderInput) (req *request.Request, output *DeleteConferenceProviderOutput) {
  1638  	op := &request.Operation{
  1639  		Name:       opDeleteConferenceProvider,
  1640  		HTTPMethod: "POST",
  1641  		HTTPPath:   "/",
  1642  	}
  1643  
  1644  	if input == nil {
  1645  		input = &DeleteConferenceProviderInput{}
  1646  	}
  1647  
  1648  	output = &DeleteConferenceProviderOutput{}
  1649  	req = c.newRequest(op, input, output)
  1650  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1651  	return
  1652  }
  1653  
  1654  // DeleteConferenceProvider API operation for Alexa For Business.
  1655  //
  1656  // Deletes a conference provider.
  1657  //
  1658  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1659  // with awserr.Error's Code and Message methods to get detailed information about
  1660  // the error.
  1661  //
  1662  // See the AWS API reference guide for Alexa For Business's
  1663  // API operation DeleteConferenceProvider for usage and error information.
  1664  //
  1665  // Returned Error Types:
  1666  //   * NotFoundException
  1667  //   The resource is not found.
  1668  //
  1669  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteConferenceProvider
  1670  func (c *AlexaForBusiness) DeleteConferenceProvider(input *DeleteConferenceProviderInput) (*DeleteConferenceProviderOutput, error) {
  1671  	req, out := c.DeleteConferenceProviderRequest(input)
  1672  	return out, req.Send()
  1673  }
  1674  
  1675  // DeleteConferenceProviderWithContext is the same as DeleteConferenceProvider with the addition of
  1676  // the ability to pass a context and additional request options.
  1677  //
  1678  // See DeleteConferenceProvider for details on how to use this API operation.
  1679  //
  1680  // The context must be non-nil and will be used for request cancellation. If
  1681  // the context is nil a panic will occur. In the future the SDK may create
  1682  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1683  // for more information on using Contexts.
  1684  func (c *AlexaForBusiness) DeleteConferenceProviderWithContext(ctx aws.Context, input *DeleteConferenceProviderInput, opts ...request.Option) (*DeleteConferenceProviderOutput, error) {
  1685  	req, out := c.DeleteConferenceProviderRequest(input)
  1686  	req.SetContext(ctx)
  1687  	req.ApplyOptions(opts...)
  1688  	return out, req.Send()
  1689  }
  1690  
  1691  const opDeleteContact = "DeleteContact"
  1692  
  1693  // DeleteContactRequest generates a "aws/request.Request" representing the
  1694  // client's request for the DeleteContact operation. The "output" return
  1695  // value will be populated with the request's response once the request completes
  1696  // successfully.
  1697  //
  1698  // Use "Send" method on the returned Request to send the API call to the service.
  1699  // the "output" return value is not valid until after Send returns without error.
  1700  //
  1701  // See DeleteContact for more information on using the DeleteContact
  1702  // API call, and error handling.
  1703  //
  1704  // This method is useful when you want to inject custom logic or configuration
  1705  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1706  //
  1707  //
  1708  //    // Example sending a request using the DeleteContactRequest method.
  1709  //    req, resp := client.DeleteContactRequest(params)
  1710  //
  1711  //    err := req.Send()
  1712  //    if err == nil { // resp is now filled
  1713  //        fmt.Println(resp)
  1714  //    }
  1715  //
  1716  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteContact
  1717  func (c *AlexaForBusiness) DeleteContactRequest(input *DeleteContactInput) (req *request.Request, output *DeleteContactOutput) {
  1718  	op := &request.Operation{
  1719  		Name:       opDeleteContact,
  1720  		HTTPMethod: "POST",
  1721  		HTTPPath:   "/",
  1722  	}
  1723  
  1724  	if input == nil {
  1725  		input = &DeleteContactInput{}
  1726  	}
  1727  
  1728  	output = &DeleteContactOutput{}
  1729  	req = c.newRequest(op, input, output)
  1730  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1731  	return
  1732  }
  1733  
  1734  // DeleteContact API operation for Alexa For Business.
  1735  //
  1736  // Deletes a contact by the contact ARN.
  1737  //
  1738  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1739  // with awserr.Error's Code and Message methods to get detailed information about
  1740  // the error.
  1741  //
  1742  // See the AWS API reference guide for Alexa For Business's
  1743  // API operation DeleteContact for usage and error information.
  1744  //
  1745  // Returned Error Types:
  1746  //   * NotFoundException
  1747  //   The resource is not found.
  1748  //
  1749  //   * ConcurrentModificationException
  1750  //   There is a concurrent modification of resources.
  1751  //
  1752  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteContact
  1753  func (c *AlexaForBusiness) DeleteContact(input *DeleteContactInput) (*DeleteContactOutput, error) {
  1754  	req, out := c.DeleteContactRequest(input)
  1755  	return out, req.Send()
  1756  }
  1757  
  1758  // DeleteContactWithContext is the same as DeleteContact with the addition of
  1759  // the ability to pass a context and additional request options.
  1760  //
  1761  // See DeleteContact for details on how to use this API operation.
  1762  //
  1763  // The context must be non-nil and will be used for request cancellation. If
  1764  // the context is nil a panic will occur. In the future the SDK may create
  1765  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1766  // for more information on using Contexts.
  1767  func (c *AlexaForBusiness) DeleteContactWithContext(ctx aws.Context, input *DeleteContactInput, opts ...request.Option) (*DeleteContactOutput, error) {
  1768  	req, out := c.DeleteContactRequest(input)
  1769  	req.SetContext(ctx)
  1770  	req.ApplyOptions(opts...)
  1771  	return out, req.Send()
  1772  }
  1773  
  1774  const opDeleteDevice = "DeleteDevice"
  1775  
  1776  // DeleteDeviceRequest generates a "aws/request.Request" representing the
  1777  // client's request for the DeleteDevice operation. The "output" return
  1778  // value will be populated with the request's response once the request completes
  1779  // successfully.
  1780  //
  1781  // Use "Send" method on the returned Request to send the API call to the service.
  1782  // the "output" return value is not valid until after Send returns without error.
  1783  //
  1784  // See DeleteDevice for more information on using the DeleteDevice
  1785  // API call, and error handling.
  1786  //
  1787  // This method is useful when you want to inject custom logic or configuration
  1788  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1789  //
  1790  //
  1791  //    // Example sending a request using the DeleteDeviceRequest method.
  1792  //    req, resp := client.DeleteDeviceRequest(params)
  1793  //
  1794  //    err := req.Send()
  1795  //    if err == nil { // resp is now filled
  1796  //        fmt.Println(resp)
  1797  //    }
  1798  //
  1799  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteDevice
  1800  func (c *AlexaForBusiness) DeleteDeviceRequest(input *DeleteDeviceInput) (req *request.Request, output *DeleteDeviceOutput) {
  1801  	op := &request.Operation{
  1802  		Name:       opDeleteDevice,
  1803  		HTTPMethod: "POST",
  1804  		HTTPPath:   "/",
  1805  	}
  1806  
  1807  	if input == nil {
  1808  		input = &DeleteDeviceInput{}
  1809  	}
  1810  
  1811  	output = &DeleteDeviceOutput{}
  1812  	req = c.newRequest(op, input, output)
  1813  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1814  	return
  1815  }
  1816  
  1817  // DeleteDevice API operation for Alexa For Business.
  1818  //
  1819  // Removes a device from Alexa For Business.
  1820  //
  1821  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1822  // with awserr.Error's Code and Message methods to get detailed information about
  1823  // the error.
  1824  //
  1825  // See the AWS API reference guide for Alexa For Business's
  1826  // API operation DeleteDevice for usage and error information.
  1827  //
  1828  // Returned Error Types:
  1829  //   * NotFoundException
  1830  //   The resource is not found.
  1831  //
  1832  //   * ConcurrentModificationException
  1833  //   There is a concurrent modification of resources.
  1834  //
  1835  //   * InvalidCertificateAuthorityException
  1836  //   The Certificate Authority can't issue or revoke a certificate.
  1837  //
  1838  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteDevice
  1839  func (c *AlexaForBusiness) DeleteDevice(input *DeleteDeviceInput) (*DeleteDeviceOutput, error) {
  1840  	req, out := c.DeleteDeviceRequest(input)
  1841  	return out, req.Send()
  1842  }
  1843  
  1844  // DeleteDeviceWithContext is the same as DeleteDevice with the addition of
  1845  // the ability to pass a context and additional request options.
  1846  //
  1847  // See DeleteDevice for details on how to use this API operation.
  1848  //
  1849  // The context must be non-nil and will be used for request cancellation. If
  1850  // the context is nil a panic will occur. In the future the SDK may create
  1851  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1852  // for more information on using Contexts.
  1853  func (c *AlexaForBusiness) DeleteDeviceWithContext(ctx aws.Context, input *DeleteDeviceInput, opts ...request.Option) (*DeleteDeviceOutput, error) {
  1854  	req, out := c.DeleteDeviceRequest(input)
  1855  	req.SetContext(ctx)
  1856  	req.ApplyOptions(opts...)
  1857  	return out, req.Send()
  1858  }
  1859  
  1860  const opDeleteDeviceUsageData = "DeleteDeviceUsageData"
  1861  
  1862  // DeleteDeviceUsageDataRequest generates a "aws/request.Request" representing the
  1863  // client's request for the DeleteDeviceUsageData operation. The "output" return
  1864  // value will be populated with the request's response once the request completes
  1865  // successfully.
  1866  //
  1867  // Use "Send" method on the returned Request to send the API call to the service.
  1868  // the "output" return value is not valid until after Send returns without error.
  1869  //
  1870  // See DeleteDeviceUsageData for more information on using the DeleteDeviceUsageData
  1871  // API call, and error handling.
  1872  //
  1873  // This method is useful when you want to inject custom logic or configuration
  1874  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1875  //
  1876  //
  1877  //    // Example sending a request using the DeleteDeviceUsageDataRequest method.
  1878  //    req, resp := client.DeleteDeviceUsageDataRequest(params)
  1879  //
  1880  //    err := req.Send()
  1881  //    if err == nil { // resp is now filled
  1882  //        fmt.Println(resp)
  1883  //    }
  1884  //
  1885  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteDeviceUsageData
  1886  func (c *AlexaForBusiness) DeleteDeviceUsageDataRequest(input *DeleteDeviceUsageDataInput) (req *request.Request, output *DeleteDeviceUsageDataOutput) {
  1887  	op := &request.Operation{
  1888  		Name:       opDeleteDeviceUsageData,
  1889  		HTTPMethod: "POST",
  1890  		HTTPPath:   "/",
  1891  	}
  1892  
  1893  	if input == nil {
  1894  		input = &DeleteDeviceUsageDataInput{}
  1895  	}
  1896  
  1897  	output = &DeleteDeviceUsageDataOutput{}
  1898  	req = c.newRequest(op, input, output)
  1899  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1900  	return
  1901  }
  1902  
  1903  // DeleteDeviceUsageData API operation for Alexa For Business.
  1904  //
  1905  // When this action is called for a specified shared device, it allows authorized
  1906  // users to delete the device's entire previous history of voice input data
  1907  // and associated response data. This action can be called once every 24 hours
  1908  // for a specific shared device.
  1909  //
  1910  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1911  // with awserr.Error's Code and Message methods to get detailed information about
  1912  // the error.
  1913  //
  1914  // See the AWS API reference guide for Alexa For Business's
  1915  // API operation DeleteDeviceUsageData for usage and error information.
  1916  //
  1917  // Returned Error Types:
  1918  //   * NotFoundException
  1919  //   The resource is not found.
  1920  //
  1921  //   * DeviceNotRegisteredException
  1922  //   The request failed because this device is no longer registered and therefore
  1923  //   no longer managed by this account.
  1924  //
  1925  //   * LimitExceededException
  1926  //   You are performing an action that would put you beyond your account's limits.
  1927  //
  1928  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteDeviceUsageData
  1929  func (c *AlexaForBusiness) DeleteDeviceUsageData(input *DeleteDeviceUsageDataInput) (*DeleteDeviceUsageDataOutput, error) {
  1930  	req, out := c.DeleteDeviceUsageDataRequest(input)
  1931  	return out, req.Send()
  1932  }
  1933  
  1934  // DeleteDeviceUsageDataWithContext is the same as DeleteDeviceUsageData with the addition of
  1935  // the ability to pass a context and additional request options.
  1936  //
  1937  // See DeleteDeviceUsageData for details on how to use this API operation.
  1938  //
  1939  // The context must be non-nil and will be used for request cancellation. If
  1940  // the context is nil a panic will occur. In the future the SDK may create
  1941  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  1942  // for more information on using Contexts.
  1943  func (c *AlexaForBusiness) DeleteDeviceUsageDataWithContext(ctx aws.Context, input *DeleteDeviceUsageDataInput, opts ...request.Option) (*DeleteDeviceUsageDataOutput, error) {
  1944  	req, out := c.DeleteDeviceUsageDataRequest(input)
  1945  	req.SetContext(ctx)
  1946  	req.ApplyOptions(opts...)
  1947  	return out, req.Send()
  1948  }
  1949  
  1950  const opDeleteGatewayGroup = "DeleteGatewayGroup"
  1951  
  1952  // DeleteGatewayGroupRequest generates a "aws/request.Request" representing the
  1953  // client's request for the DeleteGatewayGroup operation. The "output" return
  1954  // value will be populated with the request's response once the request completes
  1955  // successfully.
  1956  //
  1957  // Use "Send" method on the returned Request to send the API call to the service.
  1958  // the "output" return value is not valid until after Send returns without error.
  1959  //
  1960  // See DeleteGatewayGroup for more information on using the DeleteGatewayGroup
  1961  // API call, and error handling.
  1962  //
  1963  // This method is useful when you want to inject custom logic or configuration
  1964  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  1965  //
  1966  //
  1967  //    // Example sending a request using the DeleteGatewayGroupRequest method.
  1968  //    req, resp := client.DeleteGatewayGroupRequest(params)
  1969  //
  1970  //    err := req.Send()
  1971  //    if err == nil { // resp is now filled
  1972  //        fmt.Println(resp)
  1973  //    }
  1974  //
  1975  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteGatewayGroup
  1976  func (c *AlexaForBusiness) DeleteGatewayGroupRequest(input *DeleteGatewayGroupInput) (req *request.Request, output *DeleteGatewayGroupOutput) {
  1977  	op := &request.Operation{
  1978  		Name:       opDeleteGatewayGroup,
  1979  		HTTPMethod: "POST",
  1980  		HTTPPath:   "/",
  1981  	}
  1982  
  1983  	if input == nil {
  1984  		input = &DeleteGatewayGroupInput{}
  1985  	}
  1986  
  1987  	output = &DeleteGatewayGroupOutput{}
  1988  	req = c.newRequest(op, input, output)
  1989  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  1990  	return
  1991  }
  1992  
  1993  // DeleteGatewayGroup API operation for Alexa For Business.
  1994  //
  1995  // Deletes a gateway group.
  1996  //
  1997  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  1998  // with awserr.Error's Code and Message methods to get detailed information about
  1999  // the error.
  2000  //
  2001  // See the AWS API reference guide for Alexa For Business's
  2002  // API operation DeleteGatewayGroup for usage and error information.
  2003  //
  2004  // Returned Error Types:
  2005  //   * ResourceAssociatedException
  2006  //   Another resource is associated with the resource in the request.
  2007  //
  2008  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteGatewayGroup
  2009  func (c *AlexaForBusiness) DeleteGatewayGroup(input *DeleteGatewayGroupInput) (*DeleteGatewayGroupOutput, error) {
  2010  	req, out := c.DeleteGatewayGroupRequest(input)
  2011  	return out, req.Send()
  2012  }
  2013  
  2014  // DeleteGatewayGroupWithContext is the same as DeleteGatewayGroup with the addition of
  2015  // the ability to pass a context and additional request options.
  2016  //
  2017  // See DeleteGatewayGroup for details on how to use this API operation.
  2018  //
  2019  // The context must be non-nil and will be used for request cancellation. If
  2020  // the context is nil a panic will occur. In the future the SDK may create
  2021  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2022  // for more information on using Contexts.
  2023  func (c *AlexaForBusiness) DeleteGatewayGroupWithContext(ctx aws.Context, input *DeleteGatewayGroupInput, opts ...request.Option) (*DeleteGatewayGroupOutput, error) {
  2024  	req, out := c.DeleteGatewayGroupRequest(input)
  2025  	req.SetContext(ctx)
  2026  	req.ApplyOptions(opts...)
  2027  	return out, req.Send()
  2028  }
  2029  
  2030  const opDeleteNetworkProfile = "DeleteNetworkProfile"
  2031  
  2032  // DeleteNetworkProfileRequest generates a "aws/request.Request" representing the
  2033  // client's request for the DeleteNetworkProfile operation. The "output" return
  2034  // value will be populated with the request's response once the request completes
  2035  // successfully.
  2036  //
  2037  // Use "Send" method on the returned Request to send the API call to the service.
  2038  // the "output" return value is not valid until after Send returns without error.
  2039  //
  2040  // See DeleteNetworkProfile for more information on using the DeleteNetworkProfile
  2041  // API call, and error handling.
  2042  //
  2043  // This method is useful when you want to inject custom logic or configuration
  2044  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2045  //
  2046  //
  2047  //    // Example sending a request using the DeleteNetworkProfileRequest method.
  2048  //    req, resp := client.DeleteNetworkProfileRequest(params)
  2049  //
  2050  //    err := req.Send()
  2051  //    if err == nil { // resp is now filled
  2052  //        fmt.Println(resp)
  2053  //    }
  2054  //
  2055  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteNetworkProfile
  2056  func (c *AlexaForBusiness) DeleteNetworkProfileRequest(input *DeleteNetworkProfileInput) (req *request.Request, output *DeleteNetworkProfileOutput) {
  2057  	op := &request.Operation{
  2058  		Name:       opDeleteNetworkProfile,
  2059  		HTTPMethod: "POST",
  2060  		HTTPPath:   "/",
  2061  	}
  2062  
  2063  	if input == nil {
  2064  		input = &DeleteNetworkProfileInput{}
  2065  	}
  2066  
  2067  	output = &DeleteNetworkProfileOutput{}
  2068  	req = c.newRequest(op, input, output)
  2069  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2070  	return
  2071  }
  2072  
  2073  // DeleteNetworkProfile API operation for Alexa For Business.
  2074  //
  2075  // Deletes a network profile by the network profile ARN.
  2076  //
  2077  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2078  // with awserr.Error's Code and Message methods to get detailed information about
  2079  // the error.
  2080  //
  2081  // See the AWS API reference guide for Alexa For Business's
  2082  // API operation DeleteNetworkProfile for usage and error information.
  2083  //
  2084  // Returned Error Types:
  2085  //   * ResourceInUseException
  2086  //   The resource in the request is already in use.
  2087  //
  2088  //   * ConcurrentModificationException
  2089  //   There is a concurrent modification of resources.
  2090  //
  2091  //   * NotFoundException
  2092  //   The resource is not found.
  2093  //
  2094  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteNetworkProfile
  2095  func (c *AlexaForBusiness) DeleteNetworkProfile(input *DeleteNetworkProfileInput) (*DeleteNetworkProfileOutput, error) {
  2096  	req, out := c.DeleteNetworkProfileRequest(input)
  2097  	return out, req.Send()
  2098  }
  2099  
  2100  // DeleteNetworkProfileWithContext is the same as DeleteNetworkProfile with the addition of
  2101  // the ability to pass a context and additional request options.
  2102  //
  2103  // See DeleteNetworkProfile for details on how to use this API operation.
  2104  //
  2105  // The context must be non-nil and will be used for request cancellation. If
  2106  // the context is nil a panic will occur. In the future the SDK may create
  2107  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2108  // for more information on using Contexts.
  2109  func (c *AlexaForBusiness) DeleteNetworkProfileWithContext(ctx aws.Context, input *DeleteNetworkProfileInput, opts ...request.Option) (*DeleteNetworkProfileOutput, error) {
  2110  	req, out := c.DeleteNetworkProfileRequest(input)
  2111  	req.SetContext(ctx)
  2112  	req.ApplyOptions(opts...)
  2113  	return out, req.Send()
  2114  }
  2115  
  2116  const opDeleteProfile = "DeleteProfile"
  2117  
  2118  // DeleteProfileRequest generates a "aws/request.Request" representing the
  2119  // client's request for the DeleteProfile operation. The "output" return
  2120  // value will be populated with the request's response once the request completes
  2121  // successfully.
  2122  //
  2123  // Use "Send" method on the returned Request to send the API call to the service.
  2124  // the "output" return value is not valid until after Send returns without error.
  2125  //
  2126  // See DeleteProfile for more information on using the DeleteProfile
  2127  // API call, and error handling.
  2128  //
  2129  // This method is useful when you want to inject custom logic or configuration
  2130  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2131  //
  2132  //
  2133  //    // Example sending a request using the DeleteProfileRequest method.
  2134  //    req, resp := client.DeleteProfileRequest(params)
  2135  //
  2136  //    err := req.Send()
  2137  //    if err == nil { // resp is now filled
  2138  //        fmt.Println(resp)
  2139  //    }
  2140  //
  2141  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteProfile
  2142  func (c *AlexaForBusiness) DeleteProfileRequest(input *DeleteProfileInput) (req *request.Request, output *DeleteProfileOutput) {
  2143  	op := &request.Operation{
  2144  		Name:       opDeleteProfile,
  2145  		HTTPMethod: "POST",
  2146  		HTTPPath:   "/",
  2147  	}
  2148  
  2149  	if input == nil {
  2150  		input = &DeleteProfileInput{}
  2151  	}
  2152  
  2153  	output = &DeleteProfileOutput{}
  2154  	req = c.newRequest(op, input, output)
  2155  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2156  	return
  2157  }
  2158  
  2159  // DeleteProfile API operation for Alexa For Business.
  2160  //
  2161  // Deletes a room profile by the profile ARN.
  2162  //
  2163  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2164  // with awserr.Error's Code and Message methods to get detailed information about
  2165  // the error.
  2166  //
  2167  // See the AWS API reference guide for Alexa For Business's
  2168  // API operation DeleteProfile for usage and error information.
  2169  //
  2170  // Returned Error Types:
  2171  //   * NotFoundException
  2172  //   The resource is not found.
  2173  //
  2174  //   * ConcurrentModificationException
  2175  //   There is a concurrent modification of resources.
  2176  //
  2177  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteProfile
  2178  func (c *AlexaForBusiness) DeleteProfile(input *DeleteProfileInput) (*DeleteProfileOutput, error) {
  2179  	req, out := c.DeleteProfileRequest(input)
  2180  	return out, req.Send()
  2181  }
  2182  
  2183  // DeleteProfileWithContext is the same as DeleteProfile with the addition of
  2184  // the ability to pass a context and additional request options.
  2185  //
  2186  // See DeleteProfile for details on how to use this API operation.
  2187  //
  2188  // The context must be non-nil and will be used for request cancellation. If
  2189  // the context is nil a panic will occur. In the future the SDK may create
  2190  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2191  // for more information on using Contexts.
  2192  func (c *AlexaForBusiness) DeleteProfileWithContext(ctx aws.Context, input *DeleteProfileInput, opts ...request.Option) (*DeleteProfileOutput, error) {
  2193  	req, out := c.DeleteProfileRequest(input)
  2194  	req.SetContext(ctx)
  2195  	req.ApplyOptions(opts...)
  2196  	return out, req.Send()
  2197  }
  2198  
  2199  const opDeleteRoom = "DeleteRoom"
  2200  
  2201  // DeleteRoomRequest generates a "aws/request.Request" representing the
  2202  // client's request for the DeleteRoom operation. The "output" return
  2203  // value will be populated with the request's response once the request completes
  2204  // successfully.
  2205  //
  2206  // Use "Send" method on the returned Request to send the API call to the service.
  2207  // the "output" return value is not valid until after Send returns without error.
  2208  //
  2209  // See DeleteRoom for more information on using the DeleteRoom
  2210  // API call, and error handling.
  2211  //
  2212  // This method is useful when you want to inject custom logic or configuration
  2213  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2214  //
  2215  //
  2216  //    // Example sending a request using the DeleteRoomRequest method.
  2217  //    req, resp := client.DeleteRoomRequest(params)
  2218  //
  2219  //    err := req.Send()
  2220  //    if err == nil { // resp is now filled
  2221  //        fmt.Println(resp)
  2222  //    }
  2223  //
  2224  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoom
  2225  func (c *AlexaForBusiness) DeleteRoomRequest(input *DeleteRoomInput) (req *request.Request, output *DeleteRoomOutput) {
  2226  	op := &request.Operation{
  2227  		Name:       opDeleteRoom,
  2228  		HTTPMethod: "POST",
  2229  		HTTPPath:   "/",
  2230  	}
  2231  
  2232  	if input == nil {
  2233  		input = &DeleteRoomInput{}
  2234  	}
  2235  
  2236  	output = &DeleteRoomOutput{}
  2237  	req = c.newRequest(op, input, output)
  2238  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2239  	return
  2240  }
  2241  
  2242  // DeleteRoom API operation for Alexa For Business.
  2243  //
  2244  // Deletes a room by the room ARN.
  2245  //
  2246  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2247  // with awserr.Error's Code and Message methods to get detailed information about
  2248  // the error.
  2249  //
  2250  // See the AWS API reference guide for Alexa For Business's
  2251  // API operation DeleteRoom for usage and error information.
  2252  //
  2253  // Returned Error Types:
  2254  //   * NotFoundException
  2255  //   The resource is not found.
  2256  //
  2257  //   * ConcurrentModificationException
  2258  //   There is a concurrent modification of resources.
  2259  //
  2260  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoom
  2261  func (c *AlexaForBusiness) DeleteRoom(input *DeleteRoomInput) (*DeleteRoomOutput, error) {
  2262  	req, out := c.DeleteRoomRequest(input)
  2263  	return out, req.Send()
  2264  }
  2265  
  2266  // DeleteRoomWithContext is the same as DeleteRoom with the addition of
  2267  // the ability to pass a context and additional request options.
  2268  //
  2269  // See DeleteRoom for details on how to use this API operation.
  2270  //
  2271  // The context must be non-nil and will be used for request cancellation. If
  2272  // the context is nil a panic will occur. In the future the SDK may create
  2273  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2274  // for more information on using Contexts.
  2275  func (c *AlexaForBusiness) DeleteRoomWithContext(ctx aws.Context, input *DeleteRoomInput, opts ...request.Option) (*DeleteRoomOutput, error) {
  2276  	req, out := c.DeleteRoomRequest(input)
  2277  	req.SetContext(ctx)
  2278  	req.ApplyOptions(opts...)
  2279  	return out, req.Send()
  2280  }
  2281  
  2282  const opDeleteRoomSkillParameter = "DeleteRoomSkillParameter"
  2283  
  2284  // DeleteRoomSkillParameterRequest generates a "aws/request.Request" representing the
  2285  // client's request for the DeleteRoomSkillParameter operation. The "output" return
  2286  // value will be populated with the request's response once the request completes
  2287  // successfully.
  2288  //
  2289  // Use "Send" method on the returned Request to send the API call to the service.
  2290  // the "output" return value is not valid until after Send returns without error.
  2291  //
  2292  // See DeleteRoomSkillParameter for more information on using the DeleteRoomSkillParameter
  2293  // API call, and error handling.
  2294  //
  2295  // This method is useful when you want to inject custom logic or configuration
  2296  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2297  //
  2298  //
  2299  //    // Example sending a request using the DeleteRoomSkillParameterRequest method.
  2300  //    req, resp := client.DeleteRoomSkillParameterRequest(params)
  2301  //
  2302  //    err := req.Send()
  2303  //    if err == nil { // resp is now filled
  2304  //        fmt.Println(resp)
  2305  //    }
  2306  //
  2307  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoomSkillParameter
  2308  func (c *AlexaForBusiness) DeleteRoomSkillParameterRequest(input *DeleteRoomSkillParameterInput) (req *request.Request, output *DeleteRoomSkillParameterOutput) {
  2309  	op := &request.Operation{
  2310  		Name:       opDeleteRoomSkillParameter,
  2311  		HTTPMethod: "POST",
  2312  		HTTPPath:   "/",
  2313  	}
  2314  
  2315  	if input == nil {
  2316  		input = &DeleteRoomSkillParameterInput{}
  2317  	}
  2318  
  2319  	output = &DeleteRoomSkillParameterOutput{}
  2320  	req = c.newRequest(op, input, output)
  2321  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2322  	return
  2323  }
  2324  
  2325  // DeleteRoomSkillParameter API operation for Alexa For Business.
  2326  //
  2327  // Deletes room skill parameter details by room, skill, and parameter key ID.
  2328  //
  2329  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2330  // with awserr.Error's Code and Message methods to get detailed information about
  2331  // the error.
  2332  //
  2333  // See the AWS API reference guide for Alexa For Business's
  2334  // API operation DeleteRoomSkillParameter for usage and error information.
  2335  //
  2336  // Returned Error Types:
  2337  //   * ConcurrentModificationException
  2338  //   There is a concurrent modification of resources.
  2339  //
  2340  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteRoomSkillParameter
  2341  func (c *AlexaForBusiness) DeleteRoomSkillParameter(input *DeleteRoomSkillParameterInput) (*DeleteRoomSkillParameterOutput, error) {
  2342  	req, out := c.DeleteRoomSkillParameterRequest(input)
  2343  	return out, req.Send()
  2344  }
  2345  
  2346  // DeleteRoomSkillParameterWithContext is the same as DeleteRoomSkillParameter with the addition of
  2347  // the ability to pass a context and additional request options.
  2348  //
  2349  // See DeleteRoomSkillParameter for details on how to use this API operation.
  2350  //
  2351  // The context must be non-nil and will be used for request cancellation. If
  2352  // the context is nil a panic will occur. In the future the SDK may create
  2353  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2354  // for more information on using Contexts.
  2355  func (c *AlexaForBusiness) DeleteRoomSkillParameterWithContext(ctx aws.Context, input *DeleteRoomSkillParameterInput, opts ...request.Option) (*DeleteRoomSkillParameterOutput, error) {
  2356  	req, out := c.DeleteRoomSkillParameterRequest(input)
  2357  	req.SetContext(ctx)
  2358  	req.ApplyOptions(opts...)
  2359  	return out, req.Send()
  2360  }
  2361  
  2362  const opDeleteSkillAuthorization = "DeleteSkillAuthorization"
  2363  
  2364  // DeleteSkillAuthorizationRequest generates a "aws/request.Request" representing the
  2365  // client's request for the DeleteSkillAuthorization operation. The "output" return
  2366  // value will be populated with the request's response once the request completes
  2367  // successfully.
  2368  //
  2369  // Use "Send" method on the returned Request to send the API call to the service.
  2370  // the "output" return value is not valid until after Send returns without error.
  2371  //
  2372  // See DeleteSkillAuthorization for more information on using the DeleteSkillAuthorization
  2373  // API call, and error handling.
  2374  //
  2375  // This method is useful when you want to inject custom logic or configuration
  2376  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2377  //
  2378  //
  2379  //    // Example sending a request using the DeleteSkillAuthorizationRequest method.
  2380  //    req, resp := client.DeleteSkillAuthorizationRequest(params)
  2381  //
  2382  //    err := req.Send()
  2383  //    if err == nil { // resp is now filled
  2384  //        fmt.Println(resp)
  2385  //    }
  2386  //
  2387  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteSkillAuthorization
  2388  func (c *AlexaForBusiness) DeleteSkillAuthorizationRequest(input *DeleteSkillAuthorizationInput) (req *request.Request, output *DeleteSkillAuthorizationOutput) {
  2389  	op := &request.Operation{
  2390  		Name:       opDeleteSkillAuthorization,
  2391  		HTTPMethod: "POST",
  2392  		HTTPPath:   "/",
  2393  	}
  2394  
  2395  	if input == nil {
  2396  		input = &DeleteSkillAuthorizationInput{}
  2397  	}
  2398  
  2399  	output = &DeleteSkillAuthorizationOutput{}
  2400  	req = c.newRequest(op, input, output)
  2401  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2402  	return
  2403  }
  2404  
  2405  // DeleteSkillAuthorization API operation for Alexa For Business.
  2406  //
  2407  // Unlinks a third-party account from a skill.
  2408  //
  2409  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2410  // with awserr.Error's Code and Message methods to get detailed information about
  2411  // the error.
  2412  //
  2413  // See the AWS API reference guide for Alexa For Business's
  2414  // API operation DeleteSkillAuthorization for usage and error information.
  2415  //
  2416  // Returned Error Types:
  2417  //   * NotFoundException
  2418  //   The resource is not found.
  2419  //
  2420  //   * ConcurrentModificationException
  2421  //   There is a concurrent modification of resources.
  2422  //
  2423  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteSkillAuthorization
  2424  func (c *AlexaForBusiness) DeleteSkillAuthorization(input *DeleteSkillAuthorizationInput) (*DeleteSkillAuthorizationOutput, error) {
  2425  	req, out := c.DeleteSkillAuthorizationRequest(input)
  2426  	return out, req.Send()
  2427  }
  2428  
  2429  // DeleteSkillAuthorizationWithContext is the same as DeleteSkillAuthorization with the addition of
  2430  // the ability to pass a context and additional request options.
  2431  //
  2432  // See DeleteSkillAuthorization for details on how to use this API operation.
  2433  //
  2434  // The context must be non-nil and will be used for request cancellation. If
  2435  // the context is nil a panic will occur. In the future the SDK may create
  2436  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2437  // for more information on using Contexts.
  2438  func (c *AlexaForBusiness) DeleteSkillAuthorizationWithContext(ctx aws.Context, input *DeleteSkillAuthorizationInput, opts ...request.Option) (*DeleteSkillAuthorizationOutput, error) {
  2439  	req, out := c.DeleteSkillAuthorizationRequest(input)
  2440  	req.SetContext(ctx)
  2441  	req.ApplyOptions(opts...)
  2442  	return out, req.Send()
  2443  }
  2444  
  2445  const opDeleteSkillGroup = "DeleteSkillGroup"
  2446  
  2447  // DeleteSkillGroupRequest generates a "aws/request.Request" representing the
  2448  // client's request for the DeleteSkillGroup operation. The "output" return
  2449  // value will be populated with the request's response once the request completes
  2450  // successfully.
  2451  //
  2452  // Use "Send" method on the returned Request to send the API call to the service.
  2453  // the "output" return value is not valid until after Send returns without error.
  2454  //
  2455  // See DeleteSkillGroup for more information on using the DeleteSkillGroup
  2456  // API call, and error handling.
  2457  //
  2458  // This method is useful when you want to inject custom logic or configuration
  2459  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2460  //
  2461  //
  2462  //    // Example sending a request using the DeleteSkillGroupRequest method.
  2463  //    req, resp := client.DeleteSkillGroupRequest(params)
  2464  //
  2465  //    err := req.Send()
  2466  //    if err == nil { // resp is now filled
  2467  //        fmt.Println(resp)
  2468  //    }
  2469  //
  2470  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteSkillGroup
  2471  func (c *AlexaForBusiness) DeleteSkillGroupRequest(input *DeleteSkillGroupInput) (req *request.Request, output *DeleteSkillGroupOutput) {
  2472  	op := &request.Operation{
  2473  		Name:       opDeleteSkillGroup,
  2474  		HTTPMethod: "POST",
  2475  		HTTPPath:   "/",
  2476  	}
  2477  
  2478  	if input == nil {
  2479  		input = &DeleteSkillGroupInput{}
  2480  	}
  2481  
  2482  	output = &DeleteSkillGroupOutput{}
  2483  	req = c.newRequest(op, input, output)
  2484  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2485  	return
  2486  }
  2487  
  2488  // DeleteSkillGroup API operation for Alexa For Business.
  2489  //
  2490  // Deletes a skill group by skill group ARN.
  2491  //
  2492  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2493  // with awserr.Error's Code and Message methods to get detailed information about
  2494  // the error.
  2495  //
  2496  // See the AWS API reference guide for Alexa For Business's
  2497  // API operation DeleteSkillGroup for usage and error information.
  2498  //
  2499  // Returned Error Types:
  2500  //   * NotFoundException
  2501  //   The resource is not found.
  2502  //
  2503  //   * ConcurrentModificationException
  2504  //   There is a concurrent modification of resources.
  2505  //
  2506  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteSkillGroup
  2507  func (c *AlexaForBusiness) DeleteSkillGroup(input *DeleteSkillGroupInput) (*DeleteSkillGroupOutput, error) {
  2508  	req, out := c.DeleteSkillGroupRequest(input)
  2509  	return out, req.Send()
  2510  }
  2511  
  2512  // DeleteSkillGroupWithContext is the same as DeleteSkillGroup with the addition of
  2513  // the ability to pass a context and additional request options.
  2514  //
  2515  // See DeleteSkillGroup for details on how to use this API operation.
  2516  //
  2517  // The context must be non-nil and will be used for request cancellation. If
  2518  // the context is nil a panic will occur. In the future the SDK may create
  2519  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2520  // for more information on using Contexts.
  2521  func (c *AlexaForBusiness) DeleteSkillGroupWithContext(ctx aws.Context, input *DeleteSkillGroupInput, opts ...request.Option) (*DeleteSkillGroupOutput, error) {
  2522  	req, out := c.DeleteSkillGroupRequest(input)
  2523  	req.SetContext(ctx)
  2524  	req.ApplyOptions(opts...)
  2525  	return out, req.Send()
  2526  }
  2527  
  2528  const opDeleteUser = "DeleteUser"
  2529  
  2530  // DeleteUserRequest generates a "aws/request.Request" representing the
  2531  // client's request for the DeleteUser operation. The "output" return
  2532  // value will be populated with the request's response once the request completes
  2533  // successfully.
  2534  //
  2535  // Use "Send" method on the returned Request to send the API call to the service.
  2536  // the "output" return value is not valid until after Send returns without error.
  2537  //
  2538  // See DeleteUser for more information on using the DeleteUser
  2539  // API call, and error handling.
  2540  //
  2541  // This method is useful when you want to inject custom logic or configuration
  2542  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2543  //
  2544  //
  2545  //    // Example sending a request using the DeleteUserRequest method.
  2546  //    req, resp := client.DeleteUserRequest(params)
  2547  //
  2548  //    err := req.Send()
  2549  //    if err == nil { // resp is now filled
  2550  //        fmt.Println(resp)
  2551  //    }
  2552  //
  2553  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteUser
  2554  func (c *AlexaForBusiness) DeleteUserRequest(input *DeleteUserInput) (req *request.Request, output *DeleteUserOutput) {
  2555  	op := &request.Operation{
  2556  		Name:       opDeleteUser,
  2557  		HTTPMethod: "POST",
  2558  		HTTPPath:   "/",
  2559  	}
  2560  
  2561  	if input == nil {
  2562  		input = &DeleteUserInput{}
  2563  	}
  2564  
  2565  	output = &DeleteUserOutput{}
  2566  	req = c.newRequest(op, input, output)
  2567  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2568  	return
  2569  }
  2570  
  2571  // DeleteUser API operation for Alexa For Business.
  2572  //
  2573  // Deletes a specified user by user ARN and enrollment ARN.
  2574  //
  2575  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2576  // with awserr.Error's Code and Message methods to get detailed information about
  2577  // the error.
  2578  //
  2579  // See the AWS API reference guide for Alexa For Business's
  2580  // API operation DeleteUser for usage and error information.
  2581  //
  2582  // Returned Error Types:
  2583  //   * NotFoundException
  2584  //   The resource is not found.
  2585  //
  2586  //   * ConcurrentModificationException
  2587  //   There is a concurrent modification of resources.
  2588  //
  2589  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DeleteUser
  2590  func (c *AlexaForBusiness) DeleteUser(input *DeleteUserInput) (*DeleteUserOutput, error) {
  2591  	req, out := c.DeleteUserRequest(input)
  2592  	return out, req.Send()
  2593  }
  2594  
  2595  // DeleteUserWithContext is the same as DeleteUser with the addition of
  2596  // the ability to pass a context and additional request options.
  2597  //
  2598  // See DeleteUser for details on how to use this API operation.
  2599  //
  2600  // The context must be non-nil and will be used for request cancellation. If
  2601  // the context is nil a panic will occur. In the future the SDK may create
  2602  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2603  // for more information on using Contexts.
  2604  func (c *AlexaForBusiness) DeleteUserWithContext(ctx aws.Context, input *DeleteUserInput, opts ...request.Option) (*DeleteUserOutput, error) {
  2605  	req, out := c.DeleteUserRequest(input)
  2606  	req.SetContext(ctx)
  2607  	req.ApplyOptions(opts...)
  2608  	return out, req.Send()
  2609  }
  2610  
  2611  const opDisassociateContactFromAddressBook = "DisassociateContactFromAddressBook"
  2612  
  2613  // DisassociateContactFromAddressBookRequest generates a "aws/request.Request" representing the
  2614  // client's request for the DisassociateContactFromAddressBook operation. The "output" return
  2615  // value will be populated with the request's response once the request completes
  2616  // successfully.
  2617  //
  2618  // Use "Send" method on the returned Request to send the API call to the service.
  2619  // the "output" return value is not valid until after Send returns without error.
  2620  //
  2621  // See DisassociateContactFromAddressBook for more information on using the DisassociateContactFromAddressBook
  2622  // API call, and error handling.
  2623  //
  2624  // This method is useful when you want to inject custom logic or configuration
  2625  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2626  //
  2627  //
  2628  //    // Example sending a request using the DisassociateContactFromAddressBookRequest method.
  2629  //    req, resp := client.DisassociateContactFromAddressBookRequest(params)
  2630  //
  2631  //    err := req.Send()
  2632  //    if err == nil { // resp is now filled
  2633  //        fmt.Println(resp)
  2634  //    }
  2635  //
  2636  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateContactFromAddressBook
  2637  func (c *AlexaForBusiness) DisassociateContactFromAddressBookRequest(input *DisassociateContactFromAddressBookInput) (req *request.Request, output *DisassociateContactFromAddressBookOutput) {
  2638  	op := &request.Operation{
  2639  		Name:       opDisassociateContactFromAddressBook,
  2640  		HTTPMethod: "POST",
  2641  		HTTPPath:   "/",
  2642  	}
  2643  
  2644  	if input == nil {
  2645  		input = &DisassociateContactFromAddressBookInput{}
  2646  	}
  2647  
  2648  	output = &DisassociateContactFromAddressBookOutput{}
  2649  	req = c.newRequest(op, input, output)
  2650  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2651  	return
  2652  }
  2653  
  2654  // DisassociateContactFromAddressBook API operation for Alexa For Business.
  2655  //
  2656  // Disassociates a contact from a given address book.
  2657  //
  2658  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2659  // with awserr.Error's Code and Message methods to get detailed information about
  2660  // the error.
  2661  //
  2662  // See the AWS API reference guide for Alexa For Business's
  2663  // API operation DisassociateContactFromAddressBook for usage and error information.
  2664  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateContactFromAddressBook
  2665  func (c *AlexaForBusiness) DisassociateContactFromAddressBook(input *DisassociateContactFromAddressBookInput) (*DisassociateContactFromAddressBookOutput, error) {
  2666  	req, out := c.DisassociateContactFromAddressBookRequest(input)
  2667  	return out, req.Send()
  2668  }
  2669  
  2670  // DisassociateContactFromAddressBookWithContext is the same as DisassociateContactFromAddressBook with the addition of
  2671  // the ability to pass a context and additional request options.
  2672  //
  2673  // See DisassociateContactFromAddressBook for details on how to use this API operation.
  2674  //
  2675  // The context must be non-nil and will be used for request cancellation. If
  2676  // the context is nil a panic will occur. In the future the SDK may create
  2677  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2678  // for more information on using Contexts.
  2679  func (c *AlexaForBusiness) DisassociateContactFromAddressBookWithContext(ctx aws.Context, input *DisassociateContactFromAddressBookInput, opts ...request.Option) (*DisassociateContactFromAddressBookOutput, error) {
  2680  	req, out := c.DisassociateContactFromAddressBookRequest(input)
  2681  	req.SetContext(ctx)
  2682  	req.ApplyOptions(opts...)
  2683  	return out, req.Send()
  2684  }
  2685  
  2686  const opDisassociateDeviceFromRoom = "DisassociateDeviceFromRoom"
  2687  
  2688  // DisassociateDeviceFromRoomRequest generates a "aws/request.Request" representing the
  2689  // client's request for the DisassociateDeviceFromRoom operation. The "output" return
  2690  // value will be populated with the request's response once the request completes
  2691  // successfully.
  2692  //
  2693  // Use "Send" method on the returned Request to send the API call to the service.
  2694  // the "output" return value is not valid until after Send returns without error.
  2695  //
  2696  // See DisassociateDeviceFromRoom for more information on using the DisassociateDeviceFromRoom
  2697  // API call, and error handling.
  2698  //
  2699  // This method is useful when you want to inject custom logic or configuration
  2700  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2701  //
  2702  //
  2703  //    // Example sending a request using the DisassociateDeviceFromRoomRequest method.
  2704  //    req, resp := client.DisassociateDeviceFromRoomRequest(params)
  2705  //
  2706  //    err := req.Send()
  2707  //    if err == nil { // resp is now filled
  2708  //        fmt.Println(resp)
  2709  //    }
  2710  //
  2711  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateDeviceFromRoom
  2712  func (c *AlexaForBusiness) DisassociateDeviceFromRoomRequest(input *DisassociateDeviceFromRoomInput) (req *request.Request, output *DisassociateDeviceFromRoomOutput) {
  2713  	op := &request.Operation{
  2714  		Name:       opDisassociateDeviceFromRoom,
  2715  		HTTPMethod: "POST",
  2716  		HTTPPath:   "/",
  2717  	}
  2718  
  2719  	if input == nil {
  2720  		input = &DisassociateDeviceFromRoomInput{}
  2721  	}
  2722  
  2723  	output = &DisassociateDeviceFromRoomOutput{}
  2724  	req = c.newRequest(op, input, output)
  2725  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2726  	return
  2727  }
  2728  
  2729  // DisassociateDeviceFromRoom API operation for Alexa For Business.
  2730  //
  2731  // Disassociates a device from its current room. The device continues to be
  2732  // connected to the Wi-Fi network and is still registered to the account. The
  2733  // device settings and skills are removed from the room.
  2734  //
  2735  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2736  // with awserr.Error's Code and Message methods to get detailed information about
  2737  // the error.
  2738  //
  2739  // See the AWS API reference guide for Alexa For Business's
  2740  // API operation DisassociateDeviceFromRoom for usage and error information.
  2741  //
  2742  // Returned Error Types:
  2743  //   * ConcurrentModificationException
  2744  //   There is a concurrent modification of resources.
  2745  //
  2746  //   * DeviceNotRegisteredException
  2747  //   The request failed because this device is no longer registered and therefore
  2748  //   no longer managed by this account.
  2749  //
  2750  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateDeviceFromRoom
  2751  func (c *AlexaForBusiness) DisassociateDeviceFromRoom(input *DisassociateDeviceFromRoomInput) (*DisassociateDeviceFromRoomOutput, error) {
  2752  	req, out := c.DisassociateDeviceFromRoomRequest(input)
  2753  	return out, req.Send()
  2754  }
  2755  
  2756  // DisassociateDeviceFromRoomWithContext is the same as DisassociateDeviceFromRoom with the addition of
  2757  // the ability to pass a context and additional request options.
  2758  //
  2759  // See DisassociateDeviceFromRoom for details on how to use this API operation.
  2760  //
  2761  // The context must be non-nil and will be used for request cancellation. If
  2762  // the context is nil a panic will occur. In the future the SDK may create
  2763  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2764  // for more information on using Contexts.
  2765  func (c *AlexaForBusiness) DisassociateDeviceFromRoomWithContext(ctx aws.Context, input *DisassociateDeviceFromRoomInput, opts ...request.Option) (*DisassociateDeviceFromRoomOutput, error) {
  2766  	req, out := c.DisassociateDeviceFromRoomRequest(input)
  2767  	req.SetContext(ctx)
  2768  	req.ApplyOptions(opts...)
  2769  	return out, req.Send()
  2770  }
  2771  
  2772  const opDisassociateSkillFromSkillGroup = "DisassociateSkillFromSkillGroup"
  2773  
  2774  // DisassociateSkillFromSkillGroupRequest generates a "aws/request.Request" representing the
  2775  // client's request for the DisassociateSkillFromSkillGroup operation. The "output" return
  2776  // value will be populated with the request's response once the request completes
  2777  // successfully.
  2778  //
  2779  // Use "Send" method on the returned Request to send the API call to the service.
  2780  // the "output" return value is not valid until after Send returns without error.
  2781  //
  2782  // See DisassociateSkillFromSkillGroup for more information on using the DisassociateSkillFromSkillGroup
  2783  // API call, and error handling.
  2784  //
  2785  // This method is useful when you want to inject custom logic or configuration
  2786  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2787  //
  2788  //
  2789  //    // Example sending a request using the DisassociateSkillFromSkillGroupRequest method.
  2790  //    req, resp := client.DisassociateSkillFromSkillGroupRequest(params)
  2791  //
  2792  //    err := req.Send()
  2793  //    if err == nil { // resp is now filled
  2794  //        fmt.Println(resp)
  2795  //    }
  2796  //
  2797  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillFromSkillGroup
  2798  func (c *AlexaForBusiness) DisassociateSkillFromSkillGroupRequest(input *DisassociateSkillFromSkillGroupInput) (req *request.Request, output *DisassociateSkillFromSkillGroupOutput) {
  2799  	op := &request.Operation{
  2800  		Name:       opDisassociateSkillFromSkillGroup,
  2801  		HTTPMethod: "POST",
  2802  		HTTPPath:   "/",
  2803  	}
  2804  
  2805  	if input == nil {
  2806  		input = &DisassociateSkillFromSkillGroupInput{}
  2807  	}
  2808  
  2809  	output = &DisassociateSkillFromSkillGroupOutput{}
  2810  	req = c.newRequest(op, input, output)
  2811  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2812  	return
  2813  }
  2814  
  2815  // DisassociateSkillFromSkillGroup API operation for Alexa For Business.
  2816  //
  2817  // Disassociates a skill from a skill group.
  2818  //
  2819  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2820  // with awserr.Error's Code and Message methods to get detailed information about
  2821  // the error.
  2822  //
  2823  // See the AWS API reference guide for Alexa For Business's
  2824  // API operation DisassociateSkillFromSkillGroup for usage and error information.
  2825  //
  2826  // Returned Error Types:
  2827  //   * ConcurrentModificationException
  2828  //   There is a concurrent modification of resources.
  2829  //
  2830  //   * NotFoundException
  2831  //   The resource is not found.
  2832  //
  2833  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillFromSkillGroup
  2834  func (c *AlexaForBusiness) DisassociateSkillFromSkillGroup(input *DisassociateSkillFromSkillGroupInput) (*DisassociateSkillFromSkillGroupOutput, error) {
  2835  	req, out := c.DisassociateSkillFromSkillGroupRequest(input)
  2836  	return out, req.Send()
  2837  }
  2838  
  2839  // DisassociateSkillFromSkillGroupWithContext is the same as DisassociateSkillFromSkillGroup with the addition of
  2840  // the ability to pass a context and additional request options.
  2841  //
  2842  // See DisassociateSkillFromSkillGroup for details on how to use this API operation.
  2843  //
  2844  // The context must be non-nil and will be used for request cancellation. If
  2845  // the context is nil a panic will occur. In the future the SDK may create
  2846  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2847  // for more information on using Contexts.
  2848  func (c *AlexaForBusiness) DisassociateSkillFromSkillGroupWithContext(ctx aws.Context, input *DisassociateSkillFromSkillGroupInput, opts ...request.Option) (*DisassociateSkillFromSkillGroupOutput, error) {
  2849  	req, out := c.DisassociateSkillFromSkillGroupRequest(input)
  2850  	req.SetContext(ctx)
  2851  	req.ApplyOptions(opts...)
  2852  	return out, req.Send()
  2853  }
  2854  
  2855  const opDisassociateSkillFromUsers = "DisassociateSkillFromUsers"
  2856  
  2857  // DisassociateSkillFromUsersRequest generates a "aws/request.Request" representing the
  2858  // client's request for the DisassociateSkillFromUsers operation. The "output" return
  2859  // value will be populated with the request's response once the request completes
  2860  // successfully.
  2861  //
  2862  // Use "Send" method on the returned Request to send the API call to the service.
  2863  // the "output" return value is not valid until after Send returns without error.
  2864  //
  2865  // See DisassociateSkillFromUsers for more information on using the DisassociateSkillFromUsers
  2866  // API call, and error handling.
  2867  //
  2868  // This method is useful when you want to inject custom logic or configuration
  2869  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2870  //
  2871  //
  2872  //    // Example sending a request using the DisassociateSkillFromUsersRequest method.
  2873  //    req, resp := client.DisassociateSkillFromUsersRequest(params)
  2874  //
  2875  //    err := req.Send()
  2876  //    if err == nil { // resp is now filled
  2877  //        fmt.Println(resp)
  2878  //    }
  2879  //
  2880  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillFromUsers
  2881  func (c *AlexaForBusiness) DisassociateSkillFromUsersRequest(input *DisassociateSkillFromUsersInput) (req *request.Request, output *DisassociateSkillFromUsersOutput) {
  2882  	op := &request.Operation{
  2883  		Name:       opDisassociateSkillFromUsers,
  2884  		HTTPMethod: "POST",
  2885  		HTTPPath:   "/",
  2886  	}
  2887  
  2888  	if input == nil {
  2889  		input = &DisassociateSkillFromUsersInput{}
  2890  	}
  2891  
  2892  	output = &DisassociateSkillFromUsersOutput{}
  2893  	req = c.newRequest(op, input, output)
  2894  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2895  	return
  2896  }
  2897  
  2898  // DisassociateSkillFromUsers API operation for Alexa For Business.
  2899  //
  2900  // Makes a private skill unavailable for enrolled users and prevents them from
  2901  // enabling it on their devices.
  2902  //
  2903  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2904  // with awserr.Error's Code and Message methods to get detailed information about
  2905  // the error.
  2906  //
  2907  // See the AWS API reference guide for Alexa For Business's
  2908  // API operation DisassociateSkillFromUsers for usage and error information.
  2909  //
  2910  // Returned Error Types:
  2911  //   * ConcurrentModificationException
  2912  //   There is a concurrent modification of resources.
  2913  //
  2914  //   * NotFoundException
  2915  //   The resource is not found.
  2916  //
  2917  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillFromUsers
  2918  func (c *AlexaForBusiness) DisassociateSkillFromUsers(input *DisassociateSkillFromUsersInput) (*DisassociateSkillFromUsersOutput, error) {
  2919  	req, out := c.DisassociateSkillFromUsersRequest(input)
  2920  	return out, req.Send()
  2921  }
  2922  
  2923  // DisassociateSkillFromUsersWithContext is the same as DisassociateSkillFromUsers with the addition of
  2924  // the ability to pass a context and additional request options.
  2925  //
  2926  // See DisassociateSkillFromUsers for details on how to use this API operation.
  2927  //
  2928  // The context must be non-nil and will be used for request cancellation. If
  2929  // the context is nil a panic will occur. In the future the SDK may create
  2930  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  2931  // for more information on using Contexts.
  2932  func (c *AlexaForBusiness) DisassociateSkillFromUsersWithContext(ctx aws.Context, input *DisassociateSkillFromUsersInput, opts ...request.Option) (*DisassociateSkillFromUsersOutput, error) {
  2933  	req, out := c.DisassociateSkillFromUsersRequest(input)
  2934  	req.SetContext(ctx)
  2935  	req.ApplyOptions(opts...)
  2936  	return out, req.Send()
  2937  }
  2938  
  2939  const opDisassociateSkillGroupFromRoom = "DisassociateSkillGroupFromRoom"
  2940  
  2941  // DisassociateSkillGroupFromRoomRequest generates a "aws/request.Request" representing the
  2942  // client's request for the DisassociateSkillGroupFromRoom operation. The "output" return
  2943  // value will be populated with the request's response once the request completes
  2944  // successfully.
  2945  //
  2946  // Use "Send" method on the returned Request to send the API call to the service.
  2947  // the "output" return value is not valid until after Send returns without error.
  2948  //
  2949  // See DisassociateSkillGroupFromRoom for more information on using the DisassociateSkillGroupFromRoom
  2950  // API call, and error handling.
  2951  //
  2952  // This method is useful when you want to inject custom logic or configuration
  2953  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  2954  //
  2955  //
  2956  //    // Example sending a request using the DisassociateSkillGroupFromRoomRequest method.
  2957  //    req, resp := client.DisassociateSkillGroupFromRoomRequest(params)
  2958  //
  2959  //    err := req.Send()
  2960  //    if err == nil { // resp is now filled
  2961  //        fmt.Println(resp)
  2962  //    }
  2963  //
  2964  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillGroupFromRoom
  2965  func (c *AlexaForBusiness) DisassociateSkillGroupFromRoomRequest(input *DisassociateSkillGroupFromRoomInput) (req *request.Request, output *DisassociateSkillGroupFromRoomOutput) {
  2966  	op := &request.Operation{
  2967  		Name:       opDisassociateSkillGroupFromRoom,
  2968  		HTTPMethod: "POST",
  2969  		HTTPPath:   "/",
  2970  	}
  2971  
  2972  	if input == nil {
  2973  		input = &DisassociateSkillGroupFromRoomInput{}
  2974  	}
  2975  
  2976  	output = &DisassociateSkillGroupFromRoomOutput{}
  2977  	req = c.newRequest(op, input, output)
  2978  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  2979  	return
  2980  }
  2981  
  2982  // DisassociateSkillGroupFromRoom API operation for Alexa For Business.
  2983  //
  2984  // Disassociates a skill group from a specified room. This disables all skills
  2985  // in the skill group on all devices in the room.
  2986  //
  2987  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  2988  // with awserr.Error's Code and Message methods to get detailed information about
  2989  // the error.
  2990  //
  2991  // See the AWS API reference guide for Alexa For Business's
  2992  // API operation DisassociateSkillGroupFromRoom for usage and error information.
  2993  //
  2994  // Returned Error Types:
  2995  //   * ConcurrentModificationException
  2996  //   There is a concurrent modification of resources.
  2997  //
  2998  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/DisassociateSkillGroupFromRoom
  2999  func (c *AlexaForBusiness) DisassociateSkillGroupFromRoom(input *DisassociateSkillGroupFromRoomInput) (*DisassociateSkillGroupFromRoomOutput, error) {
  3000  	req, out := c.DisassociateSkillGroupFromRoomRequest(input)
  3001  	return out, req.Send()
  3002  }
  3003  
  3004  // DisassociateSkillGroupFromRoomWithContext is the same as DisassociateSkillGroupFromRoom with the addition of
  3005  // the ability to pass a context and additional request options.
  3006  //
  3007  // See DisassociateSkillGroupFromRoom for details on how to use this API operation.
  3008  //
  3009  // The context must be non-nil and will be used for request cancellation. If
  3010  // the context is nil a panic will occur. In the future the SDK may create
  3011  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3012  // for more information on using Contexts.
  3013  func (c *AlexaForBusiness) DisassociateSkillGroupFromRoomWithContext(ctx aws.Context, input *DisassociateSkillGroupFromRoomInput, opts ...request.Option) (*DisassociateSkillGroupFromRoomOutput, error) {
  3014  	req, out := c.DisassociateSkillGroupFromRoomRequest(input)
  3015  	req.SetContext(ctx)
  3016  	req.ApplyOptions(opts...)
  3017  	return out, req.Send()
  3018  }
  3019  
  3020  const opForgetSmartHomeAppliances = "ForgetSmartHomeAppliances"
  3021  
  3022  // ForgetSmartHomeAppliancesRequest generates a "aws/request.Request" representing the
  3023  // client's request for the ForgetSmartHomeAppliances operation. The "output" return
  3024  // value will be populated with the request's response once the request completes
  3025  // successfully.
  3026  //
  3027  // Use "Send" method on the returned Request to send the API call to the service.
  3028  // the "output" return value is not valid until after Send returns without error.
  3029  //
  3030  // See ForgetSmartHomeAppliances for more information on using the ForgetSmartHomeAppliances
  3031  // API call, and error handling.
  3032  //
  3033  // This method is useful when you want to inject custom logic or configuration
  3034  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3035  //
  3036  //
  3037  //    // Example sending a request using the ForgetSmartHomeAppliancesRequest method.
  3038  //    req, resp := client.ForgetSmartHomeAppliancesRequest(params)
  3039  //
  3040  //    err := req.Send()
  3041  //    if err == nil { // resp is now filled
  3042  //        fmt.Println(resp)
  3043  //    }
  3044  //
  3045  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ForgetSmartHomeAppliances
  3046  func (c *AlexaForBusiness) ForgetSmartHomeAppliancesRequest(input *ForgetSmartHomeAppliancesInput) (req *request.Request, output *ForgetSmartHomeAppliancesOutput) {
  3047  	op := &request.Operation{
  3048  		Name:       opForgetSmartHomeAppliances,
  3049  		HTTPMethod: "POST",
  3050  		HTTPPath:   "/",
  3051  	}
  3052  
  3053  	if input == nil {
  3054  		input = &ForgetSmartHomeAppliancesInput{}
  3055  	}
  3056  
  3057  	output = &ForgetSmartHomeAppliancesOutput{}
  3058  	req = c.newRequest(op, input, output)
  3059  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  3060  	return
  3061  }
  3062  
  3063  // ForgetSmartHomeAppliances API operation for Alexa For Business.
  3064  //
  3065  // Forgets smart home appliances associated to a room.
  3066  //
  3067  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3068  // with awserr.Error's Code and Message methods to get detailed information about
  3069  // the error.
  3070  //
  3071  // See the AWS API reference guide for Alexa For Business's
  3072  // API operation ForgetSmartHomeAppliances for usage and error information.
  3073  //
  3074  // Returned Error Types:
  3075  //   * NotFoundException
  3076  //   The resource is not found.
  3077  //
  3078  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ForgetSmartHomeAppliances
  3079  func (c *AlexaForBusiness) ForgetSmartHomeAppliances(input *ForgetSmartHomeAppliancesInput) (*ForgetSmartHomeAppliancesOutput, error) {
  3080  	req, out := c.ForgetSmartHomeAppliancesRequest(input)
  3081  	return out, req.Send()
  3082  }
  3083  
  3084  // ForgetSmartHomeAppliancesWithContext is the same as ForgetSmartHomeAppliances with the addition of
  3085  // the ability to pass a context and additional request options.
  3086  //
  3087  // See ForgetSmartHomeAppliances for details on how to use this API operation.
  3088  //
  3089  // The context must be non-nil and will be used for request cancellation. If
  3090  // the context is nil a panic will occur. In the future the SDK may create
  3091  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3092  // for more information on using Contexts.
  3093  func (c *AlexaForBusiness) ForgetSmartHomeAppliancesWithContext(ctx aws.Context, input *ForgetSmartHomeAppliancesInput, opts ...request.Option) (*ForgetSmartHomeAppliancesOutput, error) {
  3094  	req, out := c.ForgetSmartHomeAppliancesRequest(input)
  3095  	req.SetContext(ctx)
  3096  	req.ApplyOptions(opts...)
  3097  	return out, req.Send()
  3098  }
  3099  
  3100  const opGetAddressBook = "GetAddressBook"
  3101  
  3102  // GetAddressBookRequest generates a "aws/request.Request" representing the
  3103  // client's request for the GetAddressBook operation. The "output" return
  3104  // value will be populated with the request's response once the request completes
  3105  // successfully.
  3106  //
  3107  // Use "Send" method on the returned Request to send the API call to the service.
  3108  // the "output" return value is not valid until after Send returns without error.
  3109  //
  3110  // See GetAddressBook for more information on using the GetAddressBook
  3111  // API call, and error handling.
  3112  //
  3113  // This method is useful when you want to inject custom logic or configuration
  3114  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3115  //
  3116  //
  3117  //    // Example sending a request using the GetAddressBookRequest method.
  3118  //    req, resp := client.GetAddressBookRequest(params)
  3119  //
  3120  //    err := req.Send()
  3121  //    if err == nil { // resp is now filled
  3122  //        fmt.Println(resp)
  3123  //    }
  3124  //
  3125  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetAddressBook
  3126  func (c *AlexaForBusiness) GetAddressBookRequest(input *GetAddressBookInput) (req *request.Request, output *GetAddressBookOutput) {
  3127  	op := &request.Operation{
  3128  		Name:       opGetAddressBook,
  3129  		HTTPMethod: "POST",
  3130  		HTTPPath:   "/",
  3131  	}
  3132  
  3133  	if input == nil {
  3134  		input = &GetAddressBookInput{}
  3135  	}
  3136  
  3137  	output = &GetAddressBookOutput{}
  3138  	req = c.newRequest(op, input, output)
  3139  	return
  3140  }
  3141  
  3142  // GetAddressBook API operation for Alexa For Business.
  3143  //
  3144  // Gets address the book details by the address book ARN.
  3145  //
  3146  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3147  // with awserr.Error's Code and Message methods to get detailed information about
  3148  // the error.
  3149  //
  3150  // See the AWS API reference guide for Alexa For Business's
  3151  // API operation GetAddressBook for usage and error information.
  3152  //
  3153  // Returned Error Types:
  3154  //   * NotFoundException
  3155  //   The resource is not found.
  3156  //
  3157  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetAddressBook
  3158  func (c *AlexaForBusiness) GetAddressBook(input *GetAddressBookInput) (*GetAddressBookOutput, error) {
  3159  	req, out := c.GetAddressBookRequest(input)
  3160  	return out, req.Send()
  3161  }
  3162  
  3163  // GetAddressBookWithContext is the same as GetAddressBook with the addition of
  3164  // the ability to pass a context and additional request options.
  3165  //
  3166  // See GetAddressBook for details on how to use this API operation.
  3167  //
  3168  // The context must be non-nil and will be used for request cancellation. If
  3169  // the context is nil a panic will occur. In the future the SDK may create
  3170  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3171  // for more information on using Contexts.
  3172  func (c *AlexaForBusiness) GetAddressBookWithContext(ctx aws.Context, input *GetAddressBookInput, opts ...request.Option) (*GetAddressBookOutput, error) {
  3173  	req, out := c.GetAddressBookRequest(input)
  3174  	req.SetContext(ctx)
  3175  	req.ApplyOptions(opts...)
  3176  	return out, req.Send()
  3177  }
  3178  
  3179  const opGetConferencePreference = "GetConferencePreference"
  3180  
  3181  // GetConferencePreferenceRequest generates a "aws/request.Request" representing the
  3182  // client's request for the GetConferencePreference operation. The "output" return
  3183  // value will be populated with the request's response once the request completes
  3184  // successfully.
  3185  //
  3186  // Use "Send" method on the returned Request to send the API call to the service.
  3187  // the "output" return value is not valid until after Send returns without error.
  3188  //
  3189  // See GetConferencePreference for more information on using the GetConferencePreference
  3190  // API call, and error handling.
  3191  //
  3192  // This method is useful when you want to inject custom logic or configuration
  3193  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3194  //
  3195  //
  3196  //    // Example sending a request using the GetConferencePreferenceRequest method.
  3197  //    req, resp := client.GetConferencePreferenceRequest(params)
  3198  //
  3199  //    err := req.Send()
  3200  //    if err == nil { // resp is now filled
  3201  //        fmt.Println(resp)
  3202  //    }
  3203  //
  3204  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetConferencePreference
  3205  func (c *AlexaForBusiness) GetConferencePreferenceRequest(input *GetConferencePreferenceInput) (req *request.Request, output *GetConferencePreferenceOutput) {
  3206  	op := &request.Operation{
  3207  		Name:       opGetConferencePreference,
  3208  		HTTPMethod: "POST",
  3209  		HTTPPath:   "/",
  3210  	}
  3211  
  3212  	if input == nil {
  3213  		input = &GetConferencePreferenceInput{}
  3214  	}
  3215  
  3216  	output = &GetConferencePreferenceOutput{}
  3217  	req = c.newRequest(op, input, output)
  3218  	return
  3219  }
  3220  
  3221  // GetConferencePreference API operation for Alexa For Business.
  3222  //
  3223  // Retrieves the existing conference preferences.
  3224  //
  3225  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3226  // with awserr.Error's Code and Message methods to get detailed information about
  3227  // the error.
  3228  //
  3229  // See the AWS API reference guide for Alexa For Business's
  3230  // API operation GetConferencePreference for usage and error information.
  3231  //
  3232  // Returned Error Types:
  3233  //   * NotFoundException
  3234  //   The resource is not found.
  3235  //
  3236  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetConferencePreference
  3237  func (c *AlexaForBusiness) GetConferencePreference(input *GetConferencePreferenceInput) (*GetConferencePreferenceOutput, error) {
  3238  	req, out := c.GetConferencePreferenceRequest(input)
  3239  	return out, req.Send()
  3240  }
  3241  
  3242  // GetConferencePreferenceWithContext is the same as GetConferencePreference with the addition of
  3243  // the ability to pass a context and additional request options.
  3244  //
  3245  // See GetConferencePreference for details on how to use this API operation.
  3246  //
  3247  // The context must be non-nil and will be used for request cancellation. If
  3248  // the context is nil a panic will occur. In the future the SDK may create
  3249  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3250  // for more information on using Contexts.
  3251  func (c *AlexaForBusiness) GetConferencePreferenceWithContext(ctx aws.Context, input *GetConferencePreferenceInput, opts ...request.Option) (*GetConferencePreferenceOutput, error) {
  3252  	req, out := c.GetConferencePreferenceRequest(input)
  3253  	req.SetContext(ctx)
  3254  	req.ApplyOptions(opts...)
  3255  	return out, req.Send()
  3256  }
  3257  
  3258  const opGetConferenceProvider = "GetConferenceProvider"
  3259  
  3260  // GetConferenceProviderRequest generates a "aws/request.Request" representing the
  3261  // client's request for the GetConferenceProvider operation. The "output" return
  3262  // value will be populated with the request's response once the request completes
  3263  // successfully.
  3264  //
  3265  // Use "Send" method on the returned Request to send the API call to the service.
  3266  // the "output" return value is not valid until after Send returns without error.
  3267  //
  3268  // See GetConferenceProvider for more information on using the GetConferenceProvider
  3269  // API call, and error handling.
  3270  //
  3271  // This method is useful when you want to inject custom logic or configuration
  3272  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3273  //
  3274  //
  3275  //    // Example sending a request using the GetConferenceProviderRequest method.
  3276  //    req, resp := client.GetConferenceProviderRequest(params)
  3277  //
  3278  //    err := req.Send()
  3279  //    if err == nil { // resp is now filled
  3280  //        fmt.Println(resp)
  3281  //    }
  3282  //
  3283  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetConferenceProvider
  3284  func (c *AlexaForBusiness) GetConferenceProviderRequest(input *GetConferenceProviderInput) (req *request.Request, output *GetConferenceProviderOutput) {
  3285  	op := &request.Operation{
  3286  		Name:       opGetConferenceProvider,
  3287  		HTTPMethod: "POST",
  3288  		HTTPPath:   "/",
  3289  	}
  3290  
  3291  	if input == nil {
  3292  		input = &GetConferenceProviderInput{}
  3293  	}
  3294  
  3295  	output = &GetConferenceProviderOutput{}
  3296  	req = c.newRequest(op, input, output)
  3297  	return
  3298  }
  3299  
  3300  // GetConferenceProvider API operation for Alexa For Business.
  3301  //
  3302  // Gets details about a specific conference provider.
  3303  //
  3304  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3305  // with awserr.Error's Code and Message methods to get detailed information about
  3306  // the error.
  3307  //
  3308  // See the AWS API reference guide for Alexa For Business's
  3309  // API operation GetConferenceProvider for usage and error information.
  3310  //
  3311  // Returned Error Types:
  3312  //   * NotFoundException
  3313  //   The resource is not found.
  3314  //
  3315  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetConferenceProvider
  3316  func (c *AlexaForBusiness) GetConferenceProvider(input *GetConferenceProviderInput) (*GetConferenceProviderOutput, error) {
  3317  	req, out := c.GetConferenceProviderRequest(input)
  3318  	return out, req.Send()
  3319  }
  3320  
  3321  // GetConferenceProviderWithContext is the same as GetConferenceProvider with the addition of
  3322  // the ability to pass a context and additional request options.
  3323  //
  3324  // See GetConferenceProvider for details on how to use this API operation.
  3325  //
  3326  // The context must be non-nil and will be used for request cancellation. If
  3327  // the context is nil a panic will occur. In the future the SDK may create
  3328  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3329  // for more information on using Contexts.
  3330  func (c *AlexaForBusiness) GetConferenceProviderWithContext(ctx aws.Context, input *GetConferenceProviderInput, opts ...request.Option) (*GetConferenceProviderOutput, error) {
  3331  	req, out := c.GetConferenceProviderRequest(input)
  3332  	req.SetContext(ctx)
  3333  	req.ApplyOptions(opts...)
  3334  	return out, req.Send()
  3335  }
  3336  
  3337  const opGetContact = "GetContact"
  3338  
  3339  // GetContactRequest generates a "aws/request.Request" representing the
  3340  // client's request for the GetContact operation. The "output" return
  3341  // value will be populated with the request's response once the request completes
  3342  // successfully.
  3343  //
  3344  // Use "Send" method on the returned Request to send the API call to the service.
  3345  // the "output" return value is not valid until after Send returns without error.
  3346  //
  3347  // See GetContact for more information on using the GetContact
  3348  // API call, and error handling.
  3349  //
  3350  // This method is useful when you want to inject custom logic or configuration
  3351  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3352  //
  3353  //
  3354  //    // Example sending a request using the GetContactRequest method.
  3355  //    req, resp := client.GetContactRequest(params)
  3356  //
  3357  //    err := req.Send()
  3358  //    if err == nil { // resp is now filled
  3359  //        fmt.Println(resp)
  3360  //    }
  3361  //
  3362  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetContact
  3363  func (c *AlexaForBusiness) GetContactRequest(input *GetContactInput) (req *request.Request, output *GetContactOutput) {
  3364  	op := &request.Operation{
  3365  		Name:       opGetContact,
  3366  		HTTPMethod: "POST",
  3367  		HTTPPath:   "/",
  3368  	}
  3369  
  3370  	if input == nil {
  3371  		input = &GetContactInput{}
  3372  	}
  3373  
  3374  	output = &GetContactOutput{}
  3375  	req = c.newRequest(op, input, output)
  3376  	return
  3377  }
  3378  
  3379  // GetContact API operation for Alexa For Business.
  3380  //
  3381  // Gets the contact details by the contact ARN.
  3382  //
  3383  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3384  // with awserr.Error's Code and Message methods to get detailed information about
  3385  // the error.
  3386  //
  3387  // See the AWS API reference guide for Alexa For Business's
  3388  // API operation GetContact for usage and error information.
  3389  //
  3390  // Returned Error Types:
  3391  //   * NotFoundException
  3392  //   The resource is not found.
  3393  //
  3394  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetContact
  3395  func (c *AlexaForBusiness) GetContact(input *GetContactInput) (*GetContactOutput, error) {
  3396  	req, out := c.GetContactRequest(input)
  3397  	return out, req.Send()
  3398  }
  3399  
  3400  // GetContactWithContext is the same as GetContact with the addition of
  3401  // the ability to pass a context and additional request options.
  3402  //
  3403  // See GetContact for details on how to use this API operation.
  3404  //
  3405  // The context must be non-nil and will be used for request cancellation. If
  3406  // the context is nil a panic will occur. In the future the SDK may create
  3407  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3408  // for more information on using Contexts.
  3409  func (c *AlexaForBusiness) GetContactWithContext(ctx aws.Context, input *GetContactInput, opts ...request.Option) (*GetContactOutput, error) {
  3410  	req, out := c.GetContactRequest(input)
  3411  	req.SetContext(ctx)
  3412  	req.ApplyOptions(opts...)
  3413  	return out, req.Send()
  3414  }
  3415  
  3416  const opGetDevice = "GetDevice"
  3417  
  3418  // GetDeviceRequest generates a "aws/request.Request" representing the
  3419  // client's request for the GetDevice operation. The "output" return
  3420  // value will be populated with the request's response once the request completes
  3421  // successfully.
  3422  //
  3423  // Use "Send" method on the returned Request to send the API call to the service.
  3424  // the "output" return value is not valid until after Send returns without error.
  3425  //
  3426  // See GetDevice for more information on using the GetDevice
  3427  // API call, and error handling.
  3428  //
  3429  // This method is useful when you want to inject custom logic or configuration
  3430  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3431  //
  3432  //
  3433  //    // Example sending a request using the GetDeviceRequest method.
  3434  //    req, resp := client.GetDeviceRequest(params)
  3435  //
  3436  //    err := req.Send()
  3437  //    if err == nil { // resp is now filled
  3438  //        fmt.Println(resp)
  3439  //    }
  3440  //
  3441  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetDevice
  3442  func (c *AlexaForBusiness) GetDeviceRequest(input *GetDeviceInput) (req *request.Request, output *GetDeviceOutput) {
  3443  	op := &request.Operation{
  3444  		Name:       opGetDevice,
  3445  		HTTPMethod: "POST",
  3446  		HTTPPath:   "/",
  3447  	}
  3448  
  3449  	if input == nil {
  3450  		input = &GetDeviceInput{}
  3451  	}
  3452  
  3453  	output = &GetDeviceOutput{}
  3454  	req = c.newRequest(op, input, output)
  3455  	return
  3456  }
  3457  
  3458  // GetDevice API operation for Alexa For Business.
  3459  //
  3460  // Gets the details of a device by device ARN.
  3461  //
  3462  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3463  // with awserr.Error's Code and Message methods to get detailed information about
  3464  // the error.
  3465  //
  3466  // See the AWS API reference guide for Alexa For Business's
  3467  // API operation GetDevice for usage and error information.
  3468  //
  3469  // Returned Error Types:
  3470  //   * NotFoundException
  3471  //   The resource is not found.
  3472  //
  3473  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetDevice
  3474  func (c *AlexaForBusiness) GetDevice(input *GetDeviceInput) (*GetDeviceOutput, error) {
  3475  	req, out := c.GetDeviceRequest(input)
  3476  	return out, req.Send()
  3477  }
  3478  
  3479  // GetDeviceWithContext is the same as GetDevice with the addition of
  3480  // the ability to pass a context and additional request options.
  3481  //
  3482  // See GetDevice for details on how to use this API operation.
  3483  //
  3484  // The context must be non-nil and will be used for request cancellation. If
  3485  // the context is nil a panic will occur. In the future the SDK may create
  3486  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3487  // for more information on using Contexts.
  3488  func (c *AlexaForBusiness) GetDeviceWithContext(ctx aws.Context, input *GetDeviceInput, opts ...request.Option) (*GetDeviceOutput, error) {
  3489  	req, out := c.GetDeviceRequest(input)
  3490  	req.SetContext(ctx)
  3491  	req.ApplyOptions(opts...)
  3492  	return out, req.Send()
  3493  }
  3494  
  3495  const opGetGateway = "GetGateway"
  3496  
  3497  // GetGatewayRequest generates a "aws/request.Request" representing the
  3498  // client's request for the GetGateway operation. The "output" return
  3499  // value will be populated with the request's response once the request completes
  3500  // successfully.
  3501  //
  3502  // Use "Send" method on the returned Request to send the API call to the service.
  3503  // the "output" return value is not valid until after Send returns without error.
  3504  //
  3505  // See GetGateway for more information on using the GetGateway
  3506  // API call, and error handling.
  3507  //
  3508  // This method is useful when you want to inject custom logic or configuration
  3509  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3510  //
  3511  //
  3512  //    // Example sending a request using the GetGatewayRequest method.
  3513  //    req, resp := client.GetGatewayRequest(params)
  3514  //
  3515  //    err := req.Send()
  3516  //    if err == nil { // resp is now filled
  3517  //        fmt.Println(resp)
  3518  //    }
  3519  //
  3520  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetGateway
  3521  func (c *AlexaForBusiness) GetGatewayRequest(input *GetGatewayInput) (req *request.Request, output *GetGatewayOutput) {
  3522  	op := &request.Operation{
  3523  		Name:       opGetGateway,
  3524  		HTTPMethod: "POST",
  3525  		HTTPPath:   "/",
  3526  	}
  3527  
  3528  	if input == nil {
  3529  		input = &GetGatewayInput{}
  3530  	}
  3531  
  3532  	output = &GetGatewayOutput{}
  3533  	req = c.newRequest(op, input, output)
  3534  	return
  3535  }
  3536  
  3537  // GetGateway API operation for Alexa For Business.
  3538  //
  3539  // Retrieves the details of a gateway.
  3540  //
  3541  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3542  // with awserr.Error's Code and Message methods to get detailed information about
  3543  // the error.
  3544  //
  3545  // See the AWS API reference guide for Alexa For Business's
  3546  // API operation GetGateway for usage and error information.
  3547  //
  3548  // Returned Error Types:
  3549  //   * NotFoundException
  3550  //   The resource is not found.
  3551  //
  3552  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetGateway
  3553  func (c *AlexaForBusiness) GetGateway(input *GetGatewayInput) (*GetGatewayOutput, error) {
  3554  	req, out := c.GetGatewayRequest(input)
  3555  	return out, req.Send()
  3556  }
  3557  
  3558  // GetGatewayWithContext is the same as GetGateway with the addition of
  3559  // the ability to pass a context and additional request options.
  3560  //
  3561  // See GetGateway for details on how to use this API operation.
  3562  //
  3563  // The context must be non-nil and will be used for request cancellation. If
  3564  // the context is nil a panic will occur. In the future the SDK may create
  3565  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3566  // for more information on using Contexts.
  3567  func (c *AlexaForBusiness) GetGatewayWithContext(ctx aws.Context, input *GetGatewayInput, opts ...request.Option) (*GetGatewayOutput, error) {
  3568  	req, out := c.GetGatewayRequest(input)
  3569  	req.SetContext(ctx)
  3570  	req.ApplyOptions(opts...)
  3571  	return out, req.Send()
  3572  }
  3573  
  3574  const opGetGatewayGroup = "GetGatewayGroup"
  3575  
  3576  // GetGatewayGroupRequest generates a "aws/request.Request" representing the
  3577  // client's request for the GetGatewayGroup operation. The "output" return
  3578  // value will be populated with the request's response once the request completes
  3579  // successfully.
  3580  //
  3581  // Use "Send" method on the returned Request to send the API call to the service.
  3582  // the "output" return value is not valid until after Send returns without error.
  3583  //
  3584  // See GetGatewayGroup for more information on using the GetGatewayGroup
  3585  // API call, and error handling.
  3586  //
  3587  // This method is useful when you want to inject custom logic or configuration
  3588  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3589  //
  3590  //
  3591  //    // Example sending a request using the GetGatewayGroupRequest method.
  3592  //    req, resp := client.GetGatewayGroupRequest(params)
  3593  //
  3594  //    err := req.Send()
  3595  //    if err == nil { // resp is now filled
  3596  //        fmt.Println(resp)
  3597  //    }
  3598  //
  3599  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetGatewayGroup
  3600  func (c *AlexaForBusiness) GetGatewayGroupRequest(input *GetGatewayGroupInput) (req *request.Request, output *GetGatewayGroupOutput) {
  3601  	op := &request.Operation{
  3602  		Name:       opGetGatewayGroup,
  3603  		HTTPMethod: "POST",
  3604  		HTTPPath:   "/",
  3605  	}
  3606  
  3607  	if input == nil {
  3608  		input = &GetGatewayGroupInput{}
  3609  	}
  3610  
  3611  	output = &GetGatewayGroupOutput{}
  3612  	req = c.newRequest(op, input, output)
  3613  	return
  3614  }
  3615  
  3616  // GetGatewayGroup API operation for Alexa For Business.
  3617  //
  3618  // Retrieves the details of a gateway group.
  3619  //
  3620  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3621  // with awserr.Error's Code and Message methods to get detailed information about
  3622  // the error.
  3623  //
  3624  // See the AWS API reference guide for Alexa For Business's
  3625  // API operation GetGatewayGroup for usage and error information.
  3626  //
  3627  // Returned Error Types:
  3628  //   * NotFoundException
  3629  //   The resource is not found.
  3630  //
  3631  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetGatewayGroup
  3632  func (c *AlexaForBusiness) GetGatewayGroup(input *GetGatewayGroupInput) (*GetGatewayGroupOutput, error) {
  3633  	req, out := c.GetGatewayGroupRequest(input)
  3634  	return out, req.Send()
  3635  }
  3636  
  3637  // GetGatewayGroupWithContext is the same as GetGatewayGroup with the addition of
  3638  // the ability to pass a context and additional request options.
  3639  //
  3640  // See GetGatewayGroup for details on how to use this API operation.
  3641  //
  3642  // The context must be non-nil and will be used for request cancellation. If
  3643  // the context is nil a panic will occur. In the future the SDK may create
  3644  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3645  // for more information on using Contexts.
  3646  func (c *AlexaForBusiness) GetGatewayGroupWithContext(ctx aws.Context, input *GetGatewayGroupInput, opts ...request.Option) (*GetGatewayGroupOutput, error) {
  3647  	req, out := c.GetGatewayGroupRequest(input)
  3648  	req.SetContext(ctx)
  3649  	req.ApplyOptions(opts...)
  3650  	return out, req.Send()
  3651  }
  3652  
  3653  const opGetInvitationConfiguration = "GetInvitationConfiguration"
  3654  
  3655  // GetInvitationConfigurationRequest generates a "aws/request.Request" representing the
  3656  // client's request for the GetInvitationConfiguration operation. The "output" return
  3657  // value will be populated with the request's response once the request completes
  3658  // successfully.
  3659  //
  3660  // Use "Send" method on the returned Request to send the API call to the service.
  3661  // the "output" return value is not valid until after Send returns without error.
  3662  //
  3663  // See GetInvitationConfiguration for more information on using the GetInvitationConfiguration
  3664  // API call, and error handling.
  3665  //
  3666  // This method is useful when you want to inject custom logic or configuration
  3667  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3668  //
  3669  //
  3670  //    // Example sending a request using the GetInvitationConfigurationRequest method.
  3671  //    req, resp := client.GetInvitationConfigurationRequest(params)
  3672  //
  3673  //    err := req.Send()
  3674  //    if err == nil { // resp is now filled
  3675  //        fmt.Println(resp)
  3676  //    }
  3677  //
  3678  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetInvitationConfiguration
  3679  func (c *AlexaForBusiness) GetInvitationConfigurationRequest(input *GetInvitationConfigurationInput) (req *request.Request, output *GetInvitationConfigurationOutput) {
  3680  	op := &request.Operation{
  3681  		Name:       opGetInvitationConfiguration,
  3682  		HTTPMethod: "POST",
  3683  		HTTPPath:   "/",
  3684  	}
  3685  
  3686  	if input == nil {
  3687  		input = &GetInvitationConfigurationInput{}
  3688  	}
  3689  
  3690  	output = &GetInvitationConfigurationOutput{}
  3691  	req = c.newRequest(op, input, output)
  3692  	return
  3693  }
  3694  
  3695  // GetInvitationConfiguration API operation for Alexa For Business.
  3696  //
  3697  // Retrieves the configured values for the user enrollment invitation email
  3698  // template.
  3699  //
  3700  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3701  // with awserr.Error's Code and Message methods to get detailed information about
  3702  // the error.
  3703  //
  3704  // See the AWS API reference guide for Alexa For Business's
  3705  // API operation GetInvitationConfiguration for usage and error information.
  3706  //
  3707  // Returned Error Types:
  3708  //   * NotFoundException
  3709  //   The resource is not found.
  3710  //
  3711  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetInvitationConfiguration
  3712  func (c *AlexaForBusiness) GetInvitationConfiguration(input *GetInvitationConfigurationInput) (*GetInvitationConfigurationOutput, error) {
  3713  	req, out := c.GetInvitationConfigurationRequest(input)
  3714  	return out, req.Send()
  3715  }
  3716  
  3717  // GetInvitationConfigurationWithContext is the same as GetInvitationConfiguration with the addition of
  3718  // the ability to pass a context and additional request options.
  3719  //
  3720  // See GetInvitationConfiguration for details on how to use this API operation.
  3721  //
  3722  // The context must be non-nil and will be used for request cancellation. If
  3723  // the context is nil a panic will occur. In the future the SDK may create
  3724  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3725  // for more information on using Contexts.
  3726  func (c *AlexaForBusiness) GetInvitationConfigurationWithContext(ctx aws.Context, input *GetInvitationConfigurationInput, opts ...request.Option) (*GetInvitationConfigurationOutput, error) {
  3727  	req, out := c.GetInvitationConfigurationRequest(input)
  3728  	req.SetContext(ctx)
  3729  	req.ApplyOptions(opts...)
  3730  	return out, req.Send()
  3731  }
  3732  
  3733  const opGetNetworkProfile = "GetNetworkProfile"
  3734  
  3735  // GetNetworkProfileRequest generates a "aws/request.Request" representing the
  3736  // client's request for the GetNetworkProfile operation. The "output" return
  3737  // value will be populated with the request's response once the request completes
  3738  // successfully.
  3739  //
  3740  // Use "Send" method on the returned Request to send the API call to the service.
  3741  // the "output" return value is not valid until after Send returns without error.
  3742  //
  3743  // See GetNetworkProfile for more information on using the GetNetworkProfile
  3744  // API call, and error handling.
  3745  //
  3746  // This method is useful when you want to inject custom logic or configuration
  3747  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3748  //
  3749  //
  3750  //    // Example sending a request using the GetNetworkProfileRequest method.
  3751  //    req, resp := client.GetNetworkProfileRequest(params)
  3752  //
  3753  //    err := req.Send()
  3754  //    if err == nil { // resp is now filled
  3755  //        fmt.Println(resp)
  3756  //    }
  3757  //
  3758  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetNetworkProfile
  3759  func (c *AlexaForBusiness) GetNetworkProfileRequest(input *GetNetworkProfileInput) (req *request.Request, output *GetNetworkProfileOutput) {
  3760  	op := &request.Operation{
  3761  		Name:       opGetNetworkProfile,
  3762  		HTTPMethod: "POST",
  3763  		HTTPPath:   "/",
  3764  	}
  3765  
  3766  	if input == nil {
  3767  		input = &GetNetworkProfileInput{}
  3768  	}
  3769  
  3770  	output = &GetNetworkProfileOutput{}
  3771  	req = c.newRequest(op, input, output)
  3772  	return
  3773  }
  3774  
  3775  // GetNetworkProfile API operation for Alexa For Business.
  3776  //
  3777  // Gets the network profile details by the network profile ARN.
  3778  //
  3779  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3780  // with awserr.Error's Code and Message methods to get detailed information about
  3781  // the error.
  3782  //
  3783  // See the AWS API reference guide for Alexa For Business's
  3784  // API operation GetNetworkProfile for usage and error information.
  3785  //
  3786  // Returned Error Types:
  3787  //   * NotFoundException
  3788  //   The resource is not found.
  3789  //
  3790  //   * InvalidSecretsManagerResourceException
  3791  //   A password in SecretsManager is in an invalid state.
  3792  //
  3793  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetNetworkProfile
  3794  func (c *AlexaForBusiness) GetNetworkProfile(input *GetNetworkProfileInput) (*GetNetworkProfileOutput, error) {
  3795  	req, out := c.GetNetworkProfileRequest(input)
  3796  	return out, req.Send()
  3797  }
  3798  
  3799  // GetNetworkProfileWithContext is the same as GetNetworkProfile with the addition of
  3800  // the ability to pass a context and additional request options.
  3801  //
  3802  // See GetNetworkProfile for details on how to use this API operation.
  3803  //
  3804  // The context must be non-nil and will be used for request cancellation. If
  3805  // the context is nil a panic will occur. In the future the SDK may create
  3806  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3807  // for more information on using Contexts.
  3808  func (c *AlexaForBusiness) GetNetworkProfileWithContext(ctx aws.Context, input *GetNetworkProfileInput, opts ...request.Option) (*GetNetworkProfileOutput, error) {
  3809  	req, out := c.GetNetworkProfileRequest(input)
  3810  	req.SetContext(ctx)
  3811  	req.ApplyOptions(opts...)
  3812  	return out, req.Send()
  3813  }
  3814  
  3815  const opGetProfile = "GetProfile"
  3816  
  3817  // GetProfileRequest generates a "aws/request.Request" representing the
  3818  // client's request for the GetProfile operation. The "output" return
  3819  // value will be populated with the request's response once the request completes
  3820  // successfully.
  3821  //
  3822  // Use "Send" method on the returned Request to send the API call to the service.
  3823  // the "output" return value is not valid until after Send returns without error.
  3824  //
  3825  // See GetProfile for more information on using the GetProfile
  3826  // API call, and error handling.
  3827  //
  3828  // This method is useful when you want to inject custom logic or configuration
  3829  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3830  //
  3831  //
  3832  //    // Example sending a request using the GetProfileRequest method.
  3833  //    req, resp := client.GetProfileRequest(params)
  3834  //
  3835  //    err := req.Send()
  3836  //    if err == nil { // resp is now filled
  3837  //        fmt.Println(resp)
  3838  //    }
  3839  //
  3840  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetProfile
  3841  func (c *AlexaForBusiness) GetProfileRequest(input *GetProfileInput) (req *request.Request, output *GetProfileOutput) {
  3842  	op := &request.Operation{
  3843  		Name:       opGetProfile,
  3844  		HTTPMethod: "POST",
  3845  		HTTPPath:   "/",
  3846  	}
  3847  
  3848  	if input == nil {
  3849  		input = &GetProfileInput{}
  3850  	}
  3851  
  3852  	output = &GetProfileOutput{}
  3853  	req = c.newRequest(op, input, output)
  3854  	return
  3855  }
  3856  
  3857  // GetProfile API operation for Alexa For Business.
  3858  //
  3859  // Gets the details of a room profile by profile ARN.
  3860  //
  3861  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3862  // with awserr.Error's Code and Message methods to get detailed information about
  3863  // the error.
  3864  //
  3865  // See the AWS API reference guide for Alexa For Business's
  3866  // API operation GetProfile for usage and error information.
  3867  //
  3868  // Returned Error Types:
  3869  //   * NotFoundException
  3870  //   The resource is not found.
  3871  //
  3872  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetProfile
  3873  func (c *AlexaForBusiness) GetProfile(input *GetProfileInput) (*GetProfileOutput, error) {
  3874  	req, out := c.GetProfileRequest(input)
  3875  	return out, req.Send()
  3876  }
  3877  
  3878  // GetProfileWithContext is the same as GetProfile with the addition of
  3879  // the ability to pass a context and additional request options.
  3880  //
  3881  // See GetProfile for details on how to use this API operation.
  3882  //
  3883  // The context must be non-nil and will be used for request cancellation. If
  3884  // the context is nil a panic will occur. In the future the SDK may create
  3885  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3886  // for more information on using Contexts.
  3887  func (c *AlexaForBusiness) GetProfileWithContext(ctx aws.Context, input *GetProfileInput, opts ...request.Option) (*GetProfileOutput, error) {
  3888  	req, out := c.GetProfileRequest(input)
  3889  	req.SetContext(ctx)
  3890  	req.ApplyOptions(opts...)
  3891  	return out, req.Send()
  3892  }
  3893  
  3894  const opGetRoom = "GetRoom"
  3895  
  3896  // GetRoomRequest generates a "aws/request.Request" representing the
  3897  // client's request for the GetRoom operation. The "output" return
  3898  // value will be populated with the request's response once the request completes
  3899  // successfully.
  3900  //
  3901  // Use "Send" method on the returned Request to send the API call to the service.
  3902  // the "output" return value is not valid until after Send returns without error.
  3903  //
  3904  // See GetRoom for more information on using the GetRoom
  3905  // API call, and error handling.
  3906  //
  3907  // This method is useful when you want to inject custom logic or configuration
  3908  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3909  //
  3910  //
  3911  //    // Example sending a request using the GetRoomRequest method.
  3912  //    req, resp := client.GetRoomRequest(params)
  3913  //
  3914  //    err := req.Send()
  3915  //    if err == nil { // resp is now filled
  3916  //        fmt.Println(resp)
  3917  //    }
  3918  //
  3919  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoom
  3920  func (c *AlexaForBusiness) GetRoomRequest(input *GetRoomInput) (req *request.Request, output *GetRoomOutput) {
  3921  	op := &request.Operation{
  3922  		Name:       opGetRoom,
  3923  		HTTPMethod: "POST",
  3924  		HTTPPath:   "/",
  3925  	}
  3926  
  3927  	if input == nil {
  3928  		input = &GetRoomInput{}
  3929  	}
  3930  
  3931  	output = &GetRoomOutput{}
  3932  	req = c.newRequest(op, input, output)
  3933  	return
  3934  }
  3935  
  3936  // GetRoom API operation for Alexa For Business.
  3937  //
  3938  // Gets room details by room ARN.
  3939  //
  3940  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  3941  // with awserr.Error's Code and Message methods to get detailed information about
  3942  // the error.
  3943  //
  3944  // See the AWS API reference guide for Alexa For Business's
  3945  // API operation GetRoom for usage and error information.
  3946  //
  3947  // Returned Error Types:
  3948  //   * NotFoundException
  3949  //   The resource is not found.
  3950  //
  3951  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoom
  3952  func (c *AlexaForBusiness) GetRoom(input *GetRoomInput) (*GetRoomOutput, error) {
  3953  	req, out := c.GetRoomRequest(input)
  3954  	return out, req.Send()
  3955  }
  3956  
  3957  // GetRoomWithContext is the same as GetRoom with the addition of
  3958  // the ability to pass a context and additional request options.
  3959  //
  3960  // See GetRoom for details on how to use this API operation.
  3961  //
  3962  // The context must be non-nil and will be used for request cancellation. If
  3963  // the context is nil a panic will occur. In the future the SDK may create
  3964  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  3965  // for more information on using Contexts.
  3966  func (c *AlexaForBusiness) GetRoomWithContext(ctx aws.Context, input *GetRoomInput, opts ...request.Option) (*GetRoomOutput, error) {
  3967  	req, out := c.GetRoomRequest(input)
  3968  	req.SetContext(ctx)
  3969  	req.ApplyOptions(opts...)
  3970  	return out, req.Send()
  3971  }
  3972  
  3973  const opGetRoomSkillParameter = "GetRoomSkillParameter"
  3974  
  3975  // GetRoomSkillParameterRequest generates a "aws/request.Request" representing the
  3976  // client's request for the GetRoomSkillParameter operation. The "output" return
  3977  // value will be populated with the request's response once the request completes
  3978  // successfully.
  3979  //
  3980  // Use "Send" method on the returned Request to send the API call to the service.
  3981  // the "output" return value is not valid until after Send returns without error.
  3982  //
  3983  // See GetRoomSkillParameter for more information on using the GetRoomSkillParameter
  3984  // API call, and error handling.
  3985  //
  3986  // This method is useful when you want to inject custom logic or configuration
  3987  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  3988  //
  3989  //
  3990  //    // Example sending a request using the GetRoomSkillParameterRequest method.
  3991  //    req, resp := client.GetRoomSkillParameterRequest(params)
  3992  //
  3993  //    err := req.Send()
  3994  //    if err == nil { // resp is now filled
  3995  //        fmt.Println(resp)
  3996  //    }
  3997  //
  3998  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoomSkillParameter
  3999  func (c *AlexaForBusiness) GetRoomSkillParameterRequest(input *GetRoomSkillParameterInput) (req *request.Request, output *GetRoomSkillParameterOutput) {
  4000  	op := &request.Operation{
  4001  		Name:       opGetRoomSkillParameter,
  4002  		HTTPMethod: "POST",
  4003  		HTTPPath:   "/",
  4004  	}
  4005  
  4006  	if input == nil {
  4007  		input = &GetRoomSkillParameterInput{}
  4008  	}
  4009  
  4010  	output = &GetRoomSkillParameterOutput{}
  4011  	req = c.newRequest(op, input, output)
  4012  	return
  4013  }
  4014  
  4015  // GetRoomSkillParameter API operation for Alexa For Business.
  4016  //
  4017  // Gets room skill parameter details by room, skill, and parameter key ARN.
  4018  //
  4019  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4020  // with awserr.Error's Code and Message methods to get detailed information about
  4021  // the error.
  4022  //
  4023  // See the AWS API reference guide for Alexa For Business's
  4024  // API operation GetRoomSkillParameter for usage and error information.
  4025  //
  4026  // Returned Error Types:
  4027  //   * NotFoundException
  4028  //   The resource is not found.
  4029  //
  4030  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetRoomSkillParameter
  4031  func (c *AlexaForBusiness) GetRoomSkillParameter(input *GetRoomSkillParameterInput) (*GetRoomSkillParameterOutput, error) {
  4032  	req, out := c.GetRoomSkillParameterRequest(input)
  4033  	return out, req.Send()
  4034  }
  4035  
  4036  // GetRoomSkillParameterWithContext is the same as GetRoomSkillParameter with the addition of
  4037  // the ability to pass a context and additional request options.
  4038  //
  4039  // See GetRoomSkillParameter for details on how to use this API operation.
  4040  //
  4041  // The context must be non-nil and will be used for request cancellation. If
  4042  // the context is nil a panic will occur. In the future the SDK may create
  4043  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4044  // for more information on using Contexts.
  4045  func (c *AlexaForBusiness) GetRoomSkillParameterWithContext(ctx aws.Context, input *GetRoomSkillParameterInput, opts ...request.Option) (*GetRoomSkillParameterOutput, error) {
  4046  	req, out := c.GetRoomSkillParameterRequest(input)
  4047  	req.SetContext(ctx)
  4048  	req.ApplyOptions(opts...)
  4049  	return out, req.Send()
  4050  }
  4051  
  4052  const opGetSkillGroup = "GetSkillGroup"
  4053  
  4054  // GetSkillGroupRequest generates a "aws/request.Request" representing the
  4055  // client's request for the GetSkillGroup operation. The "output" return
  4056  // value will be populated with the request's response once the request completes
  4057  // successfully.
  4058  //
  4059  // Use "Send" method on the returned Request to send the API call to the service.
  4060  // the "output" return value is not valid until after Send returns without error.
  4061  //
  4062  // See GetSkillGroup for more information on using the GetSkillGroup
  4063  // API call, and error handling.
  4064  //
  4065  // This method is useful when you want to inject custom logic or configuration
  4066  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4067  //
  4068  //
  4069  //    // Example sending a request using the GetSkillGroupRequest method.
  4070  //    req, resp := client.GetSkillGroupRequest(params)
  4071  //
  4072  //    err := req.Send()
  4073  //    if err == nil { // resp is now filled
  4074  //        fmt.Println(resp)
  4075  //    }
  4076  //
  4077  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetSkillGroup
  4078  func (c *AlexaForBusiness) GetSkillGroupRequest(input *GetSkillGroupInput) (req *request.Request, output *GetSkillGroupOutput) {
  4079  	op := &request.Operation{
  4080  		Name:       opGetSkillGroup,
  4081  		HTTPMethod: "POST",
  4082  		HTTPPath:   "/",
  4083  	}
  4084  
  4085  	if input == nil {
  4086  		input = &GetSkillGroupInput{}
  4087  	}
  4088  
  4089  	output = &GetSkillGroupOutput{}
  4090  	req = c.newRequest(op, input, output)
  4091  	return
  4092  }
  4093  
  4094  // GetSkillGroup API operation for Alexa For Business.
  4095  //
  4096  // Gets skill group details by skill group ARN.
  4097  //
  4098  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4099  // with awserr.Error's Code and Message methods to get detailed information about
  4100  // the error.
  4101  //
  4102  // See the AWS API reference guide for Alexa For Business's
  4103  // API operation GetSkillGroup for usage and error information.
  4104  //
  4105  // Returned Error Types:
  4106  //   * NotFoundException
  4107  //   The resource is not found.
  4108  //
  4109  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/GetSkillGroup
  4110  func (c *AlexaForBusiness) GetSkillGroup(input *GetSkillGroupInput) (*GetSkillGroupOutput, error) {
  4111  	req, out := c.GetSkillGroupRequest(input)
  4112  	return out, req.Send()
  4113  }
  4114  
  4115  // GetSkillGroupWithContext is the same as GetSkillGroup with the addition of
  4116  // the ability to pass a context and additional request options.
  4117  //
  4118  // See GetSkillGroup for details on how to use this API operation.
  4119  //
  4120  // The context must be non-nil and will be used for request cancellation. If
  4121  // the context is nil a panic will occur. In the future the SDK may create
  4122  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4123  // for more information on using Contexts.
  4124  func (c *AlexaForBusiness) GetSkillGroupWithContext(ctx aws.Context, input *GetSkillGroupInput, opts ...request.Option) (*GetSkillGroupOutput, error) {
  4125  	req, out := c.GetSkillGroupRequest(input)
  4126  	req.SetContext(ctx)
  4127  	req.ApplyOptions(opts...)
  4128  	return out, req.Send()
  4129  }
  4130  
  4131  const opListBusinessReportSchedules = "ListBusinessReportSchedules"
  4132  
  4133  // ListBusinessReportSchedulesRequest generates a "aws/request.Request" representing the
  4134  // client's request for the ListBusinessReportSchedules operation. The "output" return
  4135  // value will be populated with the request's response once the request completes
  4136  // successfully.
  4137  //
  4138  // Use "Send" method on the returned Request to send the API call to the service.
  4139  // the "output" return value is not valid until after Send returns without error.
  4140  //
  4141  // See ListBusinessReportSchedules for more information on using the ListBusinessReportSchedules
  4142  // API call, and error handling.
  4143  //
  4144  // This method is useful when you want to inject custom logic or configuration
  4145  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4146  //
  4147  //
  4148  //    // Example sending a request using the ListBusinessReportSchedulesRequest method.
  4149  //    req, resp := client.ListBusinessReportSchedulesRequest(params)
  4150  //
  4151  //    err := req.Send()
  4152  //    if err == nil { // resp is now filled
  4153  //        fmt.Println(resp)
  4154  //    }
  4155  //
  4156  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListBusinessReportSchedules
  4157  func (c *AlexaForBusiness) ListBusinessReportSchedulesRequest(input *ListBusinessReportSchedulesInput) (req *request.Request, output *ListBusinessReportSchedulesOutput) {
  4158  	op := &request.Operation{
  4159  		Name:       opListBusinessReportSchedules,
  4160  		HTTPMethod: "POST",
  4161  		HTTPPath:   "/",
  4162  		Paginator: &request.Paginator{
  4163  			InputTokens:     []string{"NextToken"},
  4164  			OutputTokens:    []string{"NextToken"},
  4165  			LimitToken:      "MaxResults",
  4166  			TruncationToken: "",
  4167  		},
  4168  	}
  4169  
  4170  	if input == nil {
  4171  		input = &ListBusinessReportSchedulesInput{}
  4172  	}
  4173  
  4174  	output = &ListBusinessReportSchedulesOutput{}
  4175  	req = c.newRequest(op, input, output)
  4176  	return
  4177  }
  4178  
  4179  // ListBusinessReportSchedules API operation for Alexa For Business.
  4180  //
  4181  // Lists the details of the schedules that a user configured. A download URL
  4182  // of the report associated with each schedule is returned every time this action
  4183  // is called. A new download URL is returned each time, and is valid for 24
  4184  // hours.
  4185  //
  4186  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4187  // with awserr.Error's Code and Message methods to get detailed information about
  4188  // the error.
  4189  //
  4190  // See the AWS API reference guide for Alexa For Business's
  4191  // API operation ListBusinessReportSchedules for usage and error information.
  4192  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListBusinessReportSchedules
  4193  func (c *AlexaForBusiness) ListBusinessReportSchedules(input *ListBusinessReportSchedulesInput) (*ListBusinessReportSchedulesOutput, error) {
  4194  	req, out := c.ListBusinessReportSchedulesRequest(input)
  4195  	return out, req.Send()
  4196  }
  4197  
  4198  // ListBusinessReportSchedulesWithContext is the same as ListBusinessReportSchedules with the addition of
  4199  // the ability to pass a context and additional request options.
  4200  //
  4201  // See ListBusinessReportSchedules for details on how to use this API operation.
  4202  //
  4203  // The context must be non-nil and will be used for request cancellation. If
  4204  // the context is nil a panic will occur. In the future the SDK may create
  4205  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4206  // for more information on using Contexts.
  4207  func (c *AlexaForBusiness) ListBusinessReportSchedulesWithContext(ctx aws.Context, input *ListBusinessReportSchedulesInput, opts ...request.Option) (*ListBusinessReportSchedulesOutput, error) {
  4208  	req, out := c.ListBusinessReportSchedulesRequest(input)
  4209  	req.SetContext(ctx)
  4210  	req.ApplyOptions(opts...)
  4211  	return out, req.Send()
  4212  }
  4213  
  4214  // ListBusinessReportSchedulesPages iterates over the pages of a ListBusinessReportSchedules operation,
  4215  // calling the "fn" function with the response data for each page. To stop
  4216  // iterating, return false from the fn function.
  4217  //
  4218  // See ListBusinessReportSchedules method for more information on how to use this operation.
  4219  //
  4220  // Note: This operation can generate multiple requests to a service.
  4221  //
  4222  //    // Example iterating over at most 3 pages of a ListBusinessReportSchedules operation.
  4223  //    pageNum := 0
  4224  //    err := client.ListBusinessReportSchedulesPages(params,
  4225  //        func(page *alexaforbusiness.ListBusinessReportSchedulesOutput, lastPage bool) bool {
  4226  //            pageNum++
  4227  //            fmt.Println(page)
  4228  //            return pageNum <= 3
  4229  //        })
  4230  //
  4231  func (c *AlexaForBusiness) ListBusinessReportSchedulesPages(input *ListBusinessReportSchedulesInput, fn func(*ListBusinessReportSchedulesOutput, bool) bool) error {
  4232  	return c.ListBusinessReportSchedulesPagesWithContext(aws.BackgroundContext(), input, fn)
  4233  }
  4234  
  4235  // ListBusinessReportSchedulesPagesWithContext same as ListBusinessReportSchedulesPages except
  4236  // it takes a Context and allows setting request options on the pages.
  4237  //
  4238  // The context must be non-nil and will be used for request cancellation. If
  4239  // the context is nil a panic will occur. In the future the SDK may create
  4240  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4241  // for more information on using Contexts.
  4242  func (c *AlexaForBusiness) ListBusinessReportSchedulesPagesWithContext(ctx aws.Context, input *ListBusinessReportSchedulesInput, fn func(*ListBusinessReportSchedulesOutput, bool) bool, opts ...request.Option) error {
  4243  	p := request.Pagination{
  4244  		NewRequest: func() (*request.Request, error) {
  4245  			var inCpy *ListBusinessReportSchedulesInput
  4246  			if input != nil {
  4247  				tmp := *input
  4248  				inCpy = &tmp
  4249  			}
  4250  			req, _ := c.ListBusinessReportSchedulesRequest(inCpy)
  4251  			req.SetContext(ctx)
  4252  			req.ApplyOptions(opts...)
  4253  			return req, nil
  4254  		},
  4255  	}
  4256  
  4257  	for p.Next() {
  4258  		if !fn(p.Page().(*ListBusinessReportSchedulesOutput), !p.HasNextPage()) {
  4259  			break
  4260  		}
  4261  	}
  4262  
  4263  	return p.Err()
  4264  }
  4265  
  4266  const opListConferenceProviders = "ListConferenceProviders"
  4267  
  4268  // ListConferenceProvidersRequest generates a "aws/request.Request" representing the
  4269  // client's request for the ListConferenceProviders operation. The "output" return
  4270  // value will be populated with the request's response once the request completes
  4271  // successfully.
  4272  //
  4273  // Use "Send" method on the returned Request to send the API call to the service.
  4274  // the "output" return value is not valid until after Send returns without error.
  4275  //
  4276  // See ListConferenceProviders for more information on using the ListConferenceProviders
  4277  // API call, and error handling.
  4278  //
  4279  // This method is useful when you want to inject custom logic or configuration
  4280  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4281  //
  4282  //
  4283  //    // Example sending a request using the ListConferenceProvidersRequest method.
  4284  //    req, resp := client.ListConferenceProvidersRequest(params)
  4285  //
  4286  //    err := req.Send()
  4287  //    if err == nil { // resp is now filled
  4288  //        fmt.Println(resp)
  4289  //    }
  4290  //
  4291  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListConferenceProviders
  4292  func (c *AlexaForBusiness) ListConferenceProvidersRequest(input *ListConferenceProvidersInput) (req *request.Request, output *ListConferenceProvidersOutput) {
  4293  	op := &request.Operation{
  4294  		Name:       opListConferenceProviders,
  4295  		HTTPMethod: "POST",
  4296  		HTTPPath:   "/",
  4297  		Paginator: &request.Paginator{
  4298  			InputTokens:     []string{"NextToken"},
  4299  			OutputTokens:    []string{"NextToken"},
  4300  			LimitToken:      "MaxResults",
  4301  			TruncationToken: "",
  4302  		},
  4303  	}
  4304  
  4305  	if input == nil {
  4306  		input = &ListConferenceProvidersInput{}
  4307  	}
  4308  
  4309  	output = &ListConferenceProvidersOutput{}
  4310  	req = c.newRequest(op, input, output)
  4311  	return
  4312  }
  4313  
  4314  // ListConferenceProviders API operation for Alexa For Business.
  4315  //
  4316  // Lists conference providers under a specific AWS account.
  4317  //
  4318  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4319  // with awserr.Error's Code and Message methods to get detailed information about
  4320  // the error.
  4321  //
  4322  // See the AWS API reference guide for Alexa For Business's
  4323  // API operation ListConferenceProviders for usage and error information.
  4324  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListConferenceProviders
  4325  func (c *AlexaForBusiness) ListConferenceProviders(input *ListConferenceProvidersInput) (*ListConferenceProvidersOutput, error) {
  4326  	req, out := c.ListConferenceProvidersRequest(input)
  4327  	return out, req.Send()
  4328  }
  4329  
  4330  // ListConferenceProvidersWithContext is the same as ListConferenceProviders with the addition of
  4331  // the ability to pass a context and additional request options.
  4332  //
  4333  // See ListConferenceProviders for details on how to use this API operation.
  4334  //
  4335  // The context must be non-nil and will be used for request cancellation. If
  4336  // the context is nil a panic will occur. In the future the SDK may create
  4337  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4338  // for more information on using Contexts.
  4339  func (c *AlexaForBusiness) ListConferenceProvidersWithContext(ctx aws.Context, input *ListConferenceProvidersInput, opts ...request.Option) (*ListConferenceProvidersOutput, error) {
  4340  	req, out := c.ListConferenceProvidersRequest(input)
  4341  	req.SetContext(ctx)
  4342  	req.ApplyOptions(opts...)
  4343  	return out, req.Send()
  4344  }
  4345  
  4346  // ListConferenceProvidersPages iterates over the pages of a ListConferenceProviders operation,
  4347  // calling the "fn" function with the response data for each page. To stop
  4348  // iterating, return false from the fn function.
  4349  //
  4350  // See ListConferenceProviders method for more information on how to use this operation.
  4351  //
  4352  // Note: This operation can generate multiple requests to a service.
  4353  //
  4354  //    // Example iterating over at most 3 pages of a ListConferenceProviders operation.
  4355  //    pageNum := 0
  4356  //    err := client.ListConferenceProvidersPages(params,
  4357  //        func(page *alexaforbusiness.ListConferenceProvidersOutput, lastPage bool) bool {
  4358  //            pageNum++
  4359  //            fmt.Println(page)
  4360  //            return pageNum <= 3
  4361  //        })
  4362  //
  4363  func (c *AlexaForBusiness) ListConferenceProvidersPages(input *ListConferenceProvidersInput, fn func(*ListConferenceProvidersOutput, bool) bool) error {
  4364  	return c.ListConferenceProvidersPagesWithContext(aws.BackgroundContext(), input, fn)
  4365  }
  4366  
  4367  // ListConferenceProvidersPagesWithContext same as ListConferenceProvidersPages except
  4368  // it takes a Context and allows setting request options on the pages.
  4369  //
  4370  // The context must be non-nil and will be used for request cancellation. If
  4371  // the context is nil a panic will occur. In the future the SDK may create
  4372  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4373  // for more information on using Contexts.
  4374  func (c *AlexaForBusiness) ListConferenceProvidersPagesWithContext(ctx aws.Context, input *ListConferenceProvidersInput, fn func(*ListConferenceProvidersOutput, bool) bool, opts ...request.Option) error {
  4375  	p := request.Pagination{
  4376  		NewRequest: func() (*request.Request, error) {
  4377  			var inCpy *ListConferenceProvidersInput
  4378  			if input != nil {
  4379  				tmp := *input
  4380  				inCpy = &tmp
  4381  			}
  4382  			req, _ := c.ListConferenceProvidersRequest(inCpy)
  4383  			req.SetContext(ctx)
  4384  			req.ApplyOptions(opts...)
  4385  			return req, nil
  4386  		},
  4387  	}
  4388  
  4389  	for p.Next() {
  4390  		if !fn(p.Page().(*ListConferenceProvidersOutput), !p.HasNextPage()) {
  4391  			break
  4392  		}
  4393  	}
  4394  
  4395  	return p.Err()
  4396  }
  4397  
  4398  const opListDeviceEvents = "ListDeviceEvents"
  4399  
  4400  // ListDeviceEventsRequest generates a "aws/request.Request" representing the
  4401  // client's request for the ListDeviceEvents operation. The "output" return
  4402  // value will be populated with the request's response once the request completes
  4403  // successfully.
  4404  //
  4405  // Use "Send" method on the returned Request to send the API call to the service.
  4406  // the "output" return value is not valid until after Send returns without error.
  4407  //
  4408  // See ListDeviceEvents for more information on using the ListDeviceEvents
  4409  // API call, and error handling.
  4410  //
  4411  // This method is useful when you want to inject custom logic or configuration
  4412  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4413  //
  4414  //
  4415  //    // Example sending a request using the ListDeviceEventsRequest method.
  4416  //    req, resp := client.ListDeviceEventsRequest(params)
  4417  //
  4418  //    err := req.Send()
  4419  //    if err == nil { // resp is now filled
  4420  //        fmt.Println(resp)
  4421  //    }
  4422  //
  4423  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListDeviceEvents
  4424  func (c *AlexaForBusiness) ListDeviceEventsRequest(input *ListDeviceEventsInput) (req *request.Request, output *ListDeviceEventsOutput) {
  4425  	op := &request.Operation{
  4426  		Name:       opListDeviceEvents,
  4427  		HTTPMethod: "POST",
  4428  		HTTPPath:   "/",
  4429  		Paginator: &request.Paginator{
  4430  			InputTokens:     []string{"NextToken"},
  4431  			OutputTokens:    []string{"NextToken"},
  4432  			LimitToken:      "MaxResults",
  4433  			TruncationToken: "",
  4434  		},
  4435  	}
  4436  
  4437  	if input == nil {
  4438  		input = &ListDeviceEventsInput{}
  4439  	}
  4440  
  4441  	output = &ListDeviceEventsOutput{}
  4442  	req = c.newRequest(op, input, output)
  4443  	return
  4444  }
  4445  
  4446  // ListDeviceEvents API operation for Alexa For Business.
  4447  //
  4448  // Lists the device event history, including device connection status, for up
  4449  // to 30 days.
  4450  //
  4451  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4452  // with awserr.Error's Code and Message methods to get detailed information about
  4453  // the error.
  4454  //
  4455  // See the AWS API reference guide for Alexa For Business's
  4456  // API operation ListDeviceEvents for usage and error information.
  4457  //
  4458  // Returned Error Types:
  4459  //   * NotFoundException
  4460  //   The resource is not found.
  4461  //
  4462  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListDeviceEvents
  4463  func (c *AlexaForBusiness) ListDeviceEvents(input *ListDeviceEventsInput) (*ListDeviceEventsOutput, error) {
  4464  	req, out := c.ListDeviceEventsRequest(input)
  4465  	return out, req.Send()
  4466  }
  4467  
  4468  // ListDeviceEventsWithContext is the same as ListDeviceEvents with the addition of
  4469  // the ability to pass a context and additional request options.
  4470  //
  4471  // See ListDeviceEvents for details on how to use this API operation.
  4472  //
  4473  // The context must be non-nil and will be used for request cancellation. If
  4474  // the context is nil a panic will occur. In the future the SDK may create
  4475  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4476  // for more information on using Contexts.
  4477  func (c *AlexaForBusiness) ListDeviceEventsWithContext(ctx aws.Context, input *ListDeviceEventsInput, opts ...request.Option) (*ListDeviceEventsOutput, error) {
  4478  	req, out := c.ListDeviceEventsRequest(input)
  4479  	req.SetContext(ctx)
  4480  	req.ApplyOptions(opts...)
  4481  	return out, req.Send()
  4482  }
  4483  
  4484  // ListDeviceEventsPages iterates over the pages of a ListDeviceEvents operation,
  4485  // calling the "fn" function with the response data for each page. To stop
  4486  // iterating, return false from the fn function.
  4487  //
  4488  // See ListDeviceEvents method for more information on how to use this operation.
  4489  //
  4490  // Note: This operation can generate multiple requests to a service.
  4491  //
  4492  //    // Example iterating over at most 3 pages of a ListDeviceEvents operation.
  4493  //    pageNum := 0
  4494  //    err := client.ListDeviceEventsPages(params,
  4495  //        func(page *alexaforbusiness.ListDeviceEventsOutput, lastPage bool) bool {
  4496  //            pageNum++
  4497  //            fmt.Println(page)
  4498  //            return pageNum <= 3
  4499  //        })
  4500  //
  4501  func (c *AlexaForBusiness) ListDeviceEventsPages(input *ListDeviceEventsInput, fn func(*ListDeviceEventsOutput, bool) bool) error {
  4502  	return c.ListDeviceEventsPagesWithContext(aws.BackgroundContext(), input, fn)
  4503  }
  4504  
  4505  // ListDeviceEventsPagesWithContext same as ListDeviceEventsPages except
  4506  // it takes a Context and allows setting request options on the pages.
  4507  //
  4508  // The context must be non-nil and will be used for request cancellation. If
  4509  // the context is nil a panic will occur. In the future the SDK may create
  4510  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4511  // for more information on using Contexts.
  4512  func (c *AlexaForBusiness) ListDeviceEventsPagesWithContext(ctx aws.Context, input *ListDeviceEventsInput, fn func(*ListDeviceEventsOutput, bool) bool, opts ...request.Option) error {
  4513  	p := request.Pagination{
  4514  		NewRequest: func() (*request.Request, error) {
  4515  			var inCpy *ListDeviceEventsInput
  4516  			if input != nil {
  4517  				tmp := *input
  4518  				inCpy = &tmp
  4519  			}
  4520  			req, _ := c.ListDeviceEventsRequest(inCpy)
  4521  			req.SetContext(ctx)
  4522  			req.ApplyOptions(opts...)
  4523  			return req, nil
  4524  		},
  4525  	}
  4526  
  4527  	for p.Next() {
  4528  		if !fn(p.Page().(*ListDeviceEventsOutput), !p.HasNextPage()) {
  4529  			break
  4530  		}
  4531  	}
  4532  
  4533  	return p.Err()
  4534  }
  4535  
  4536  const opListGatewayGroups = "ListGatewayGroups"
  4537  
  4538  // ListGatewayGroupsRequest generates a "aws/request.Request" representing the
  4539  // client's request for the ListGatewayGroups operation. The "output" return
  4540  // value will be populated with the request's response once the request completes
  4541  // successfully.
  4542  //
  4543  // Use "Send" method on the returned Request to send the API call to the service.
  4544  // the "output" return value is not valid until after Send returns without error.
  4545  //
  4546  // See ListGatewayGroups for more information on using the ListGatewayGroups
  4547  // API call, and error handling.
  4548  //
  4549  // This method is useful when you want to inject custom logic or configuration
  4550  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4551  //
  4552  //
  4553  //    // Example sending a request using the ListGatewayGroupsRequest method.
  4554  //    req, resp := client.ListGatewayGroupsRequest(params)
  4555  //
  4556  //    err := req.Send()
  4557  //    if err == nil { // resp is now filled
  4558  //        fmt.Println(resp)
  4559  //    }
  4560  //
  4561  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListGatewayGroups
  4562  func (c *AlexaForBusiness) ListGatewayGroupsRequest(input *ListGatewayGroupsInput) (req *request.Request, output *ListGatewayGroupsOutput) {
  4563  	op := &request.Operation{
  4564  		Name:       opListGatewayGroups,
  4565  		HTTPMethod: "POST",
  4566  		HTTPPath:   "/",
  4567  		Paginator: &request.Paginator{
  4568  			InputTokens:     []string{"NextToken"},
  4569  			OutputTokens:    []string{"NextToken"},
  4570  			LimitToken:      "MaxResults",
  4571  			TruncationToken: "",
  4572  		},
  4573  	}
  4574  
  4575  	if input == nil {
  4576  		input = &ListGatewayGroupsInput{}
  4577  	}
  4578  
  4579  	output = &ListGatewayGroupsOutput{}
  4580  	req = c.newRequest(op, input, output)
  4581  	return
  4582  }
  4583  
  4584  // ListGatewayGroups API operation for Alexa For Business.
  4585  //
  4586  // Retrieves a list of gateway group summaries. Use GetGatewayGroup to retrieve
  4587  // details of a specific gateway group.
  4588  //
  4589  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4590  // with awserr.Error's Code and Message methods to get detailed information about
  4591  // the error.
  4592  //
  4593  // See the AWS API reference guide for Alexa For Business's
  4594  // API operation ListGatewayGroups for usage and error information.
  4595  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListGatewayGroups
  4596  func (c *AlexaForBusiness) ListGatewayGroups(input *ListGatewayGroupsInput) (*ListGatewayGroupsOutput, error) {
  4597  	req, out := c.ListGatewayGroupsRequest(input)
  4598  	return out, req.Send()
  4599  }
  4600  
  4601  // ListGatewayGroupsWithContext is the same as ListGatewayGroups with the addition of
  4602  // the ability to pass a context and additional request options.
  4603  //
  4604  // See ListGatewayGroups for details on how to use this API operation.
  4605  //
  4606  // The context must be non-nil and will be used for request cancellation. If
  4607  // the context is nil a panic will occur. In the future the SDK may create
  4608  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4609  // for more information on using Contexts.
  4610  func (c *AlexaForBusiness) ListGatewayGroupsWithContext(ctx aws.Context, input *ListGatewayGroupsInput, opts ...request.Option) (*ListGatewayGroupsOutput, error) {
  4611  	req, out := c.ListGatewayGroupsRequest(input)
  4612  	req.SetContext(ctx)
  4613  	req.ApplyOptions(opts...)
  4614  	return out, req.Send()
  4615  }
  4616  
  4617  // ListGatewayGroupsPages iterates over the pages of a ListGatewayGroups operation,
  4618  // calling the "fn" function with the response data for each page. To stop
  4619  // iterating, return false from the fn function.
  4620  //
  4621  // See ListGatewayGroups method for more information on how to use this operation.
  4622  //
  4623  // Note: This operation can generate multiple requests to a service.
  4624  //
  4625  //    // Example iterating over at most 3 pages of a ListGatewayGroups operation.
  4626  //    pageNum := 0
  4627  //    err := client.ListGatewayGroupsPages(params,
  4628  //        func(page *alexaforbusiness.ListGatewayGroupsOutput, lastPage bool) bool {
  4629  //            pageNum++
  4630  //            fmt.Println(page)
  4631  //            return pageNum <= 3
  4632  //        })
  4633  //
  4634  func (c *AlexaForBusiness) ListGatewayGroupsPages(input *ListGatewayGroupsInput, fn func(*ListGatewayGroupsOutput, bool) bool) error {
  4635  	return c.ListGatewayGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
  4636  }
  4637  
  4638  // ListGatewayGroupsPagesWithContext same as ListGatewayGroupsPages except
  4639  // it takes a Context and allows setting request options on the pages.
  4640  //
  4641  // The context must be non-nil and will be used for request cancellation. If
  4642  // the context is nil a panic will occur. In the future the SDK may create
  4643  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4644  // for more information on using Contexts.
  4645  func (c *AlexaForBusiness) ListGatewayGroupsPagesWithContext(ctx aws.Context, input *ListGatewayGroupsInput, fn func(*ListGatewayGroupsOutput, bool) bool, opts ...request.Option) error {
  4646  	p := request.Pagination{
  4647  		NewRequest: func() (*request.Request, error) {
  4648  			var inCpy *ListGatewayGroupsInput
  4649  			if input != nil {
  4650  				tmp := *input
  4651  				inCpy = &tmp
  4652  			}
  4653  			req, _ := c.ListGatewayGroupsRequest(inCpy)
  4654  			req.SetContext(ctx)
  4655  			req.ApplyOptions(opts...)
  4656  			return req, nil
  4657  		},
  4658  	}
  4659  
  4660  	for p.Next() {
  4661  		if !fn(p.Page().(*ListGatewayGroupsOutput), !p.HasNextPage()) {
  4662  			break
  4663  		}
  4664  	}
  4665  
  4666  	return p.Err()
  4667  }
  4668  
  4669  const opListGateways = "ListGateways"
  4670  
  4671  // ListGatewaysRequest generates a "aws/request.Request" representing the
  4672  // client's request for the ListGateways operation. The "output" return
  4673  // value will be populated with the request's response once the request completes
  4674  // successfully.
  4675  //
  4676  // Use "Send" method on the returned Request to send the API call to the service.
  4677  // the "output" return value is not valid until after Send returns without error.
  4678  //
  4679  // See ListGateways for more information on using the ListGateways
  4680  // API call, and error handling.
  4681  //
  4682  // This method is useful when you want to inject custom logic or configuration
  4683  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4684  //
  4685  //
  4686  //    // Example sending a request using the ListGatewaysRequest method.
  4687  //    req, resp := client.ListGatewaysRequest(params)
  4688  //
  4689  //    err := req.Send()
  4690  //    if err == nil { // resp is now filled
  4691  //        fmt.Println(resp)
  4692  //    }
  4693  //
  4694  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListGateways
  4695  func (c *AlexaForBusiness) ListGatewaysRequest(input *ListGatewaysInput) (req *request.Request, output *ListGatewaysOutput) {
  4696  	op := &request.Operation{
  4697  		Name:       opListGateways,
  4698  		HTTPMethod: "POST",
  4699  		HTTPPath:   "/",
  4700  		Paginator: &request.Paginator{
  4701  			InputTokens:     []string{"NextToken"},
  4702  			OutputTokens:    []string{"NextToken"},
  4703  			LimitToken:      "MaxResults",
  4704  			TruncationToken: "",
  4705  		},
  4706  	}
  4707  
  4708  	if input == nil {
  4709  		input = &ListGatewaysInput{}
  4710  	}
  4711  
  4712  	output = &ListGatewaysOutput{}
  4713  	req = c.newRequest(op, input, output)
  4714  	return
  4715  }
  4716  
  4717  // ListGateways API operation for Alexa For Business.
  4718  //
  4719  // Retrieves a list of gateway summaries. Use GetGateway to retrieve details
  4720  // of a specific gateway. An optional gateway group ARN can be provided to only
  4721  // retrieve gateway summaries of gateways that are associated with that gateway
  4722  // group ARN.
  4723  //
  4724  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4725  // with awserr.Error's Code and Message methods to get detailed information about
  4726  // the error.
  4727  //
  4728  // See the AWS API reference guide for Alexa For Business's
  4729  // API operation ListGateways for usage and error information.
  4730  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListGateways
  4731  func (c *AlexaForBusiness) ListGateways(input *ListGatewaysInput) (*ListGatewaysOutput, error) {
  4732  	req, out := c.ListGatewaysRequest(input)
  4733  	return out, req.Send()
  4734  }
  4735  
  4736  // ListGatewaysWithContext is the same as ListGateways with the addition of
  4737  // the ability to pass a context and additional request options.
  4738  //
  4739  // See ListGateways for details on how to use this API operation.
  4740  //
  4741  // The context must be non-nil and will be used for request cancellation. If
  4742  // the context is nil a panic will occur. In the future the SDK may create
  4743  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4744  // for more information on using Contexts.
  4745  func (c *AlexaForBusiness) ListGatewaysWithContext(ctx aws.Context, input *ListGatewaysInput, opts ...request.Option) (*ListGatewaysOutput, error) {
  4746  	req, out := c.ListGatewaysRequest(input)
  4747  	req.SetContext(ctx)
  4748  	req.ApplyOptions(opts...)
  4749  	return out, req.Send()
  4750  }
  4751  
  4752  // ListGatewaysPages iterates over the pages of a ListGateways operation,
  4753  // calling the "fn" function with the response data for each page. To stop
  4754  // iterating, return false from the fn function.
  4755  //
  4756  // See ListGateways method for more information on how to use this operation.
  4757  //
  4758  // Note: This operation can generate multiple requests to a service.
  4759  //
  4760  //    // Example iterating over at most 3 pages of a ListGateways operation.
  4761  //    pageNum := 0
  4762  //    err := client.ListGatewaysPages(params,
  4763  //        func(page *alexaforbusiness.ListGatewaysOutput, lastPage bool) bool {
  4764  //            pageNum++
  4765  //            fmt.Println(page)
  4766  //            return pageNum <= 3
  4767  //        })
  4768  //
  4769  func (c *AlexaForBusiness) ListGatewaysPages(input *ListGatewaysInput, fn func(*ListGatewaysOutput, bool) bool) error {
  4770  	return c.ListGatewaysPagesWithContext(aws.BackgroundContext(), input, fn)
  4771  }
  4772  
  4773  // ListGatewaysPagesWithContext same as ListGatewaysPages except
  4774  // it takes a Context and allows setting request options on the pages.
  4775  //
  4776  // The context must be non-nil and will be used for request cancellation. If
  4777  // the context is nil a panic will occur. In the future the SDK may create
  4778  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4779  // for more information on using Contexts.
  4780  func (c *AlexaForBusiness) ListGatewaysPagesWithContext(ctx aws.Context, input *ListGatewaysInput, fn func(*ListGatewaysOutput, bool) bool, opts ...request.Option) error {
  4781  	p := request.Pagination{
  4782  		NewRequest: func() (*request.Request, error) {
  4783  			var inCpy *ListGatewaysInput
  4784  			if input != nil {
  4785  				tmp := *input
  4786  				inCpy = &tmp
  4787  			}
  4788  			req, _ := c.ListGatewaysRequest(inCpy)
  4789  			req.SetContext(ctx)
  4790  			req.ApplyOptions(opts...)
  4791  			return req, nil
  4792  		},
  4793  	}
  4794  
  4795  	for p.Next() {
  4796  		if !fn(p.Page().(*ListGatewaysOutput), !p.HasNextPage()) {
  4797  			break
  4798  		}
  4799  	}
  4800  
  4801  	return p.Err()
  4802  }
  4803  
  4804  const opListSkills = "ListSkills"
  4805  
  4806  // ListSkillsRequest generates a "aws/request.Request" representing the
  4807  // client's request for the ListSkills operation. The "output" return
  4808  // value will be populated with the request's response once the request completes
  4809  // successfully.
  4810  //
  4811  // Use "Send" method on the returned Request to send the API call to the service.
  4812  // the "output" return value is not valid until after Send returns without error.
  4813  //
  4814  // See ListSkills for more information on using the ListSkills
  4815  // API call, and error handling.
  4816  //
  4817  // This method is useful when you want to inject custom logic or configuration
  4818  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4819  //
  4820  //
  4821  //    // Example sending a request using the ListSkillsRequest method.
  4822  //    req, resp := client.ListSkillsRequest(params)
  4823  //
  4824  //    err := req.Send()
  4825  //    if err == nil { // resp is now filled
  4826  //        fmt.Println(resp)
  4827  //    }
  4828  //
  4829  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkills
  4830  func (c *AlexaForBusiness) ListSkillsRequest(input *ListSkillsInput) (req *request.Request, output *ListSkillsOutput) {
  4831  	op := &request.Operation{
  4832  		Name:       opListSkills,
  4833  		HTTPMethod: "POST",
  4834  		HTTPPath:   "/",
  4835  		Paginator: &request.Paginator{
  4836  			InputTokens:     []string{"NextToken"},
  4837  			OutputTokens:    []string{"NextToken"},
  4838  			LimitToken:      "MaxResults",
  4839  			TruncationToken: "",
  4840  		},
  4841  	}
  4842  
  4843  	if input == nil {
  4844  		input = &ListSkillsInput{}
  4845  	}
  4846  
  4847  	output = &ListSkillsOutput{}
  4848  	req = c.newRequest(op, input, output)
  4849  	return
  4850  }
  4851  
  4852  // ListSkills API operation for Alexa For Business.
  4853  //
  4854  // Lists all enabled skills in a specific skill group.
  4855  //
  4856  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4857  // with awserr.Error's Code and Message methods to get detailed information about
  4858  // the error.
  4859  //
  4860  // See the AWS API reference guide for Alexa For Business's
  4861  // API operation ListSkills for usage and error information.
  4862  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkills
  4863  func (c *AlexaForBusiness) ListSkills(input *ListSkillsInput) (*ListSkillsOutput, error) {
  4864  	req, out := c.ListSkillsRequest(input)
  4865  	return out, req.Send()
  4866  }
  4867  
  4868  // ListSkillsWithContext is the same as ListSkills with the addition of
  4869  // the ability to pass a context and additional request options.
  4870  //
  4871  // See ListSkills for details on how to use this API operation.
  4872  //
  4873  // The context must be non-nil and will be used for request cancellation. If
  4874  // the context is nil a panic will occur. In the future the SDK may create
  4875  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4876  // for more information on using Contexts.
  4877  func (c *AlexaForBusiness) ListSkillsWithContext(ctx aws.Context, input *ListSkillsInput, opts ...request.Option) (*ListSkillsOutput, error) {
  4878  	req, out := c.ListSkillsRequest(input)
  4879  	req.SetContext(ctx)
  4880  	req.ApplyOptions(opts...)
  4881  	return out, req.Send()
  4882  }
  4883  
  4884  // ListSkillsPages iterates over the pages of a ListSkills operation,
  4885  // calling the "fn" function with the response data for each page. To stop
  4886  // iterating, return false from the fn function.
  4887  //
  4888  // See ListSkills method for more information on how to use this operation.
  4889  //
  4890  // Note: This operation can generate multiple requests to a service.
  4891  //
  4892  //    // Example iterating over at most 3 pages of a ListSkills operation.
  4893  //    pageNum := 0
  4894  //    err := client.ListSkillsPages(params,
  4895  //        func(page *alexaforbusiness.ListSkillsOutput, lastPage bool) bool {
  4896  //            pageNum++
  4897  //            fmt.Println(page)
  4898  //            return pageNum <= 3
  4899  //        })
  4900  //
  4901  func (c *AlexaForBusiness) ListSkillsPages(input *ListSkillsInput, fn func(*ListSkillsOutput, bool) bool) error {
  4902  	return c.ListSkillsPagesWithContext(aws.BackgroundContext(), input, fn)
  4903  }
  4904  
  4905  // ListSkillsPagesWithContext same as ListSkillsPages except
  4906  // it takes a Context and allows setting request options on the pages.
  4907  //
  4908  // The context must be non-nil and will be used for request cancellation. If
  4909  // the context is nil a panic will occur. In the future the SDK may create
  4910  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  4911  // for more information on using Contexts.
  4912  func (c *AlexaForBusiness) ListSkillsPagesWithContext(ctx aws.Context, input *ListSkillsInput, fn func(*ListSkillsOutput, bool) bool, opts ...request.Option) error {
  4913  	p := request.Pagination{
  4914  		NewRequest: func() (*request.Request, error) {
  4915  			var inCpy *ListSkillsInput
  4916  			if input != nil {
  4917  				tmp := *input
  4918  				inCpy = &tmp
  4919  			}
  4920  			req, _ := c.ListSkillsRequest(inCpy)
  4921  			req.SetContext(ctx)
  4922  			req.ApplyOptions(opts...)
  4923  			return req, nil
  4924  		},
  4925  	}
  4926  
  4927  	for p.Next() {
  4928  		if !fn(p.Page().(*ListSkillsOutput), !p.HasNextPage()) {
  4929  			break
  4930  		}
  4931  	}
  4932  
  4933  	return p.Err()
  4934  }
  4935  
  4936  const opListSkillsStoreCategories = "ListSkillsStoreCategories"
  4937  
  4938  // ListSkillsStoreCategoriesRequest generates a "aws/request.Request" representing the
  4939  // client's request for the ListSkillsStoreCategories operation. The "output" return
  4940  // value will be populated with the request's response once the request completes
  4941  // successfully.
  4942  //
  4943  // Use "Send" method on the returned Request to send the API call to the service.
  4944  // the "output" return value is not valid until after Send returns without error.
  4945  //
  4946  // See ListSkillsStoreCategories for more information on using the ListSkillsStoreCategories
  4947  // API call, and error handling.
  4948  //
  4949  // This method is useful when you want to inject custom logic or configuration
  4950  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  4951  //
  4952  //
  4953  //    // Example sending a request using the ListSkillsStoreCategoriesRequest method.
  4954  //    req, resp := client.ListSkillsStoreCategoriesRequest(params)
  4955  //
  4956  //    err := req.Send()
  4957  //    if err == nil { // resp is now filled
  4958  //        fmt.Println(resp)
  4959  //    }
  4960  //
  4961  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkillsStoreCategories
  4962  func (c *AlexaForBusiness) ListSkillsStoreCategoriesRequest(input *ListSkillsStoreCategoriesInput) (req *request.Request, output *ListSkillsStoreCategoriesOutput) {
  4963  	op := &request.Operation{
  4964  		Name:       opListSkillsStoreCategories,
  4965  		HTTPMethod: "POST",
  4966  		HTTPPath:   "/",
  4967  		Paginator: &request.Paginator{
  4968  			InputTokens:     []string{"NextToken"},
  4969  			OutputTokens:    []string{"NextToken"},
  4970  			LimitToken:      "MaxResults",
  4971  			TruncationToken: "",
  4972  		},
  4973  	}
  4974  
  4975  	if input == nil {
  4976  		input = &ListSkillsStoreCategoriesInput{}
  4977  	}
  4978  
  4979  	output = &ListSkillsStoreCategoriesOutput{}
  4980  	req = c.newRequest(op, input, output)
  4981  	return
  4982  }
  4983  
  4984  // ListSkillsStoreCategories API operation for Alexa For Business.
  4985  //
  4986  // Lists all categories in the Alexa skill store.
  4987  //
  4988  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  4989  // with awserr.Error's Code and Message methods to get detailed information about
  4990  // the error.
  4991  //
  4992  // See the AWS API reference guide for Alexa For Business's
  4993  // API operation ListSkillsStoreCategories for usage and error information.
  4994  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkillsStoreCategories
  4995  func (c *AlexaForBusiness) ListSkillsStoreCategories(input *ListSkillsStoreCategoriesInput) (*ListSkillsStoreCategoriesOutput, error) {
  4996  	req, out := c.ListSkillsStoreCategoriesRequest(input)
  4997  	return out, req.Send()
  4998  }
  4999  
  5000  // ListSkillsStoreCategoriesWithContext is the same as ListSkillsStoreCategories with the addition of
  5001  // the ability to pass a context and additional request options.
  5002  //
  5003  // See ListSkillsStoreCategories for details on how to use this API operation.
  5004  //
  5005  // The context must be non-nil and will be used for request cancellation. If
  5006  // the context is nil a panic will occur. In the future the SDK may create
  5007  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5008  // for more information on using Contexts.
  5009  func (c *AlexaForBusiness) ListSkillsStoreCategoriesWithContext(ctx aws.Context, input *ListSkillsStoreCategoriesInput, opts ...request.Option) (*ListSkillsStoreCategoriesOutput, error) {
  5010  	req, out := c.ListSkillsStoreCategoriesRequest(input)
  5011  	req.SetContext(ctx)
  5012  	req.ApplyOptions(opts...)
  5013  	return out, req.Send()
  5014  }
  5015  
  5016  // ListSkillsStoreCategoriesPages iterates over the pages of a ListSkillsStoreCategories operation,
  5017  // calling the "fn" function with the response data for each page. To stop
  5018  // iterating, return false from the fn function.
  5019  //
  5020  // See ListSkillsStoreCategories method for more information on how to use this operation.
  5021  //
  5022  // Note: This operation can generate multiple requests to a service.
  5023  //
  5024  //    // Example iterating over at most 3 pages of a ListSkillsStoreCategories operation.
  5025  //    pageNum := 0
  5026  //    err := client.ListSkillsStoreCategoriesPages(params,
  5027  //        func(page *alexaforbusiness.ListSkillsStoreCategoriesOutput, lastPage bool) bool {
  5028  //            pageNum++
  5029  //            fmt.Println(page)
  5030  //            return pageNum <= 3
  5031  //        })
  5032  //
  5033  func (c *AlexaForBusiness) ListSkillsStoreCategoriesPages(input *ListSkillsStoreCategoriesInput, fn func(*ListSkillsStoreCategoriesOutput, bool) bool) error {
  5034  	return c.ListSkillsStoreCategoriesPagesWithContext(aws.BackgroundContext(), input, fn)
  5035  }
  5036  
  5037  // ListSkillsStoreCategoriesPagesWithContext same as ListSkillsStoreCategoriesPages except
  5038  // it takes a Context and allows setting request options on the pages.
  5039  //
  5040  // The context must be non-nil and will be used for request cancellation. If
  5041  // the context is nil a panic will occur. In the future the SDK may create
  5042  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5043  // for more information on using Contexts.
  5044  func (c *AlexaForBusiness) ListSkillsStoreCategoriesPagesWithContext(ctx aws.Context, input *ListSkillsStoreCategoriesInput, fn func(*ListSkillsStoreCategoriesOutput, bool) bool, opts ...request.Option) error {
  5045  	p := request.Pagination{
  5046  		NewRequest: func() (*request.Request, error) {
  5047  			var inCpy *ListSkillsStoreCategoriesInput
  5048  			if input != nil {
  5049  				tmp := *input
  5050  				inCpy = &tmp
  5051  			}
  5052  			req, _ := c.ListSkillsStoreCategoriesRequest(inCpy)
  5053  			req.SetContext(ctx)
  5054  			req.ApplyOptions(opts...)
  5055  			return req, nil
  5056  		},
  5057  	}
  5058  
  5059  	for p.Next() {
  5060  		if !fn(p.Page().(*ListSkillsStoreCategoriesOutput), !p.HasNextPage()) {
  5061  			break
  5062  		}
  5063  	}
  5064  
  5065  	return p.Err()
  5066  }
  5067  
  5068  const opListSkillsStoreSkillsByCategory = "ListSkillsStoreSkillsByCategory"
  5069  
  5070  // ListSkillsStoreSkillsByCategoryRequest generates a "aws/request.Request" representing the
  5071  // client's request for the ListSkillsStoreSkillsByCategory operation. The "output" return
  5072  // value will be populated with the request's response once the request completes
  5073  // successfully.
  5074  //
  5075  // Use "Send" method on the returned Request to send the API call to the service.
  5076  // the "output" return value is not valid until after Send returns without error.
  5077  //
  5078  // See ListSkillsStoreSkillsByCategory for more information on using the ListSkillsStoreSkillsByCategory
  5079  // API call, and error handling.
  5080  //
  5081  // This method is useful when you want to inject custom logic or configuration
  5082  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5083  //
  5084  //
  5085  //    // Example sending a request using the ListSkillsStoreSkillsByCategoryRequest method.
  5086  //    req, resp := client.ListSkillsStoreSkillsByCategoryRequest(params)
  5087  //
  5088  //    err := req.Send()
  5089  //    if err == nil { // resp is now filled
  5090  //        fmt.Println(resp)
  5091  //    }
  5092  //
  5093  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkillsStoreSkillsByCategory
  5094  func (c *AlexaForBusiness) ListSkillsStoreSkillsByCategoryRequest(input *ListSkillsStoreSkillsByCategoryInput) (req *request.Request, output *ListSkillsStoreSkillsByCategoryOutput) {
  5095  	op := &request.Operation{
  5096  		Name:       opListSkillsStoreSkillsByCategory,
  5097  		HTTPMethod: "POST",
  5098  		HTTPPath:   "/",
  5099  		Paginator: &request.Paginator{
  5100  			InputTokens:     []string{"NextToken"},
  5101  			OutputTokens:    []string{"NextToken"},
  5102  			LimitToken:      "MaxResults",
  5103  			TruncationToken: "",
  5104  		},
  5105  	}
  5106  
  5107  	if input == nil {
  5108  		input = &ListSkillsStoreSkillsByCategoryInput{}
  5109  	}
  5110  
  5111  	output = &ListSkillsStoreSkillsByCategoryOutput{}
  5112  	req = c.newRequest(op, input, output)
  5113  	return
  5114  }
  5115  
  5116  // ListSkillsStoreSkillsByCategory API operation for Alexa For Business.
  5117  //
  5118  // Lists all skills in the Alexa skill store by category.
  5119  //
  5120  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5121  // with awserr.Error's Code and Message methods to get detailed information about
  5122  // the error.
  5123  //
  5124  // See the AWS API reference guide for Alexa For Business's
  5125  // API operation ListSkillsStoreSkillsByCategory for usage and error information.
  5126  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSkillsStoreSkillsByCategory
  5127  func (c *AlexaForBusiness) ListSkillsStoreSkillsByCategory(input *ListSkillsStoreSkillsByCategoryInput) (*ListSkillsStoreSkillsByCategoryOutput, error) {
  5128  	req, out := c.ListSkillsStoreSkillsByCategoryRequest(input)
  5129  	return out, req.Send()
  5130  }
  5131  
  5132  // ListSkillsStoreSkillsByCategoryWithContext is the same as ListSkillsStoreSkillsByCategory with the addition of
  5133  // the ability to pass a context and additional request options.
  5134  //
  5135  // See ListSkillsStoreSkillsByCategory for details on how to use this API operation.
  5136  //
  5137  // The context must be non-nil and will be used for request cancellation. If
  5138  // the context is nil a panic will occur. In the future the SDK may create
  5139  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5140  // for more information on using Contexts.
  5141  func (c *AlexaForBusiness) ListSkillsStoreSkillsByCategoryWithContext(ctx aws.Context, input *ListSkillsStoreSkillsByCategoryInput, opts ...request.Option) (*ListSkillsStoreSkillsByCategoryOutput, error) {
  5142  	req, out := c.ListSkillsStoreSkillsByCategoryRequest(input)
  5143  	req.SetContext(ctx)
  5144  	req.ApplyOptions(opts...)
  5145  	return out, req.Send()
  5146  }
  5147  
  5148  // ListSkillsStoreSkillsByCategoryPages iterates over the pages of a ListSkillsStoreSkillsByCategory operation,
  5149  // calling the "fn" function with the response data for each page. To stop
  5150  // iterating, return false from the fn function.
  5151  //
  5152  // See ListSkillsStoreSkillsByCategory method for more information on how to use this operation.
  5153  //
  5154  // Note: This operation can generate multiple requests to a service.
  5155  //
  5156  //    // Example iterating over at most 3 pages of a ListSkillsStoreSkillsByCategory operation.
  5157  //    pageNum := 0
  5158  //    err := client.ListSkillsStoreSkillsByCategoryPages(params,
  5159  //        func(page *alexaforbusiness.ListSkillsStoreSkillsByCategoryOutput, lastPage bool) bool {
  5160  //            pageNum++
  5161  //            fmt.Println(page)
  5162  //            return pageNum <= 3
  5163  //        })
  5164  //
  5165  func (c *AlexaForBusiness) ListSkillsStoreSkillsByCategoryPages(input *ListSkillsStoreSkillsByCategoryInput, fn func(*ListSkillsStoreSkillsByCategoryOutput, bool) bool) error {
  5166  	return c.ListSkillsStoreSkillsByCategoryPagesWithContext(aws.BackgroundContext(), input, fn)
  5167  }
  5168  
  5169  // ListSkillsStoreSkillsByCategoryPagesWithContext same as ListSkillsStoreSkillsByCategoryPages except
  5170  // it takes a Context and allows setting request options on the pages.
  5171  //
  5172  // The context must be non-nil and will be used for request cancellation. If
  5173  // the context is nil a panic will occur. In the future the SDK may create
  5174  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5175  // for more information on using Contexts.
  5176  func (c *AlexaForBusiness) ListSkillsStoreSkillsByCategoryPagesWithContext(ctx aws.Context, input *ListSkillsStoreSkillsByCategoryInput, fn func(*ListSkillsStoreSkillsByCategoryOutput, bool) bool, opts ...request.Option) error {
  5177  	p := request.Pagination{
  5178  		NewRequest: func() (*request.Request, error) {
  5179  			var inCpy *ListSkillsStoreSkillsByCategoryInput
  5180  			if input != nil {
  5181  				tmp := *input
  5182  				inCpy = &tmp
  5183  			}
  5184  			req, _ := c.ListSkillsStoreSkillsByCategoryRequest(inCpy)
  5185  			req.SetContext(ctx)
  5186  			req.ApplyOptions(opts...)
  5187  			return req, nil
  5188  		},
  5189  	}
  5190  
  5191  	for p.Next() {
  5192  		if !fn(p.Page().(*ListSkillsStoreSkillsByCategoryOutput), !p.HasNextPage()) {
  5193  			break
  5194  		}
  5195  	}
  5196  
  5197  	return p.Err()
  5198  }
  5199  
  5200  const opListSmartHomeAppliances = "ListSmartHomeAppliances"
  5201  
  5202  // ListSmartHomeAppliancesRequest generates a "aws/request.Request" representing the
  5203  // client's request for the ListSmartHomeAppliances operation. The "output" return
  5204  // value will be populated with the request's response once the request completes
  5205  // successfully.
  5206  //
  5207  // Use "Send" method on the returned Request to send the API call to the service.
  5208  // the "output" return value is not valid until after Send returns without error.
  5209  //
  5210  // See ListSmartHomeAppliances for more information on using the ListSmartHomeAppliances
  5211  // API call, and error handling.
  5212  //
  5213  // This method is useful when you want to inject custom logic or configuration
  5214  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5215  //
  5216  //
  5217  //    // Example sending a request using the ListSmartHomeAppliancesRequest method.
  5218  //    req, resp := client.ListSmartHomeAppliancesRequest(params)
  5219  //
  5220  //    err := req.Send()
  5221  //    if err == nil { // resp is now filled
  5222  //        fmt.Println(resp)
  5223  //    }
  5224  //
  5225  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSmartHomeAppliances
  5226  func (c *AlexaForBusiness) ListSmartHomeAppliancesRequest(input *ListSmartHomeAppliancesInput) (req *request.Request, output *ListSmartHomeAppliancesOutput) {
  5227  	op := &request.Operation{
  5228  		Name:       opListSmartHomeAppliances,
  5229  		HTTPMethod: "POST",
  5230  		HTTPPath:   "/",
  5231  		Paginator: &request.Paginator{
  5232  			InputTokens:     []string{"NextToken"},
  5233  			OutputTokens:    []string{"NextToken"},
  5234  			LimitToken:      "MaxResults",
  5235  			TruncationToken: "",
  5236  		},
  5237  	}
  5238  
  5239  	if input == nil {
  5240  		input = &ListSmartHomeAppliancesInput{}
  5241  	}
  5242  
  5243  	output = &ListSmartHomeAppliancesOutput{}
  5244  	req = c.newRequest(op, input, output)
  5245  	return
  5246  }
  5247  
  5248  // ListSmartHomeAppliances API operation for Alexa For Business.
  5249  //
  5250  // Lists all of the smart home appliances associated with a room.
  5251  //
  5252  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5253  // with awserr.Error's Code and Message methods to get detailed information about
  5254  // the error.
  5255  //
  5256  // See the AWS API reference guide for Alexa For Business's
  5257  // API operation ListSmartHomeAppliances for usage and error information.
  5258  //
  5259  // Returned Error Types:
  5260  //   * NotFoundException
  5261  //   The resource is not found.
  5262  //
  5263  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListSmartHomeAppliances
  5264  func (c *AlexaForBusiness) ListSmartHomeAppliances(input *ListSmartHomeAppliancesInput) (*ListSmartHomeAppliancesOutput, error) {
  5265  	req, out := c.ListSmartHomeAppliancesRequest(input)
  5266  	return out, req.Send()
  5267  }
  5268  
  5269  // ListSmartHomeAppliancesWithContext is the same as ListSmartHomeAppliances with the addition of
  5270  // the ability to pass a context and additional request options.
  5271  //
  5272  // See ListSmartHomeAppliances for details on how to use this API operation.
  5273  //
  5274  // The context must be non-nil and will be used for request cancellation. If
  5275  // the context is nil a panic will occur. In the future the SDK may create
  5276  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5277  // for more information on using Contexts.
  5278  func (c *AlexaForBusiness) ListSmartHomeAppliancesWithContext(ctx aws.Context, input *ListSmartHomeAppliancesInput, opts ...request.Option) (*ListSmartHomeAppliancesOutput, error) {
  5279  	req, out := c.ListSmartHomeAppliancesRequest(input)
  5280  	req.SetContext(ctx)
  5281  	req.ApplyOptions(opts...)
  5282  	return out, req.Send()
  5283  }
  5284  
  5285  // ListSmartHomeAppliancesPages iterates over the pages of a ListSmartHomeAppliances operation,
  5286  // calling the "fn" function with the response data for each page. To stop
  5287  // iterating, return false from the fn function.
  5288  //
  5289  // See ListSmartHomeAppliances method for more information on how to use this operation.
  5290  //
  5291  // Note: This operation can generate multiple requests to a service.
  5292  //
  5293  //    // Example iterating over at most 3 pages of a ListSmartHomeAppliances operation.
  5294  //    pageNum := 0
  5295  //    err := client.ListSmartHomeAppliancesPages(params,
  5296  //        func(page *alexaforbusiness.ListSmartHomeAppliancesOutput, lastPage bool) bool {
  5297  //            pageNum++
  5298  //            fmt.Println(page)
  5299  //            return pageNum <= 3
  5300  //        })
  5301  //
  5302  func (c *AlexaForBusiness) ListSmartHomeAppliancesPages(input *ListSmartHomeAppliancesInput, fn func(*ListSmartHomeAppliancesOutput, bool) bool) error {
  5303  	return c.ListSmartHomeAppliancesPagesWithContext(aws.BackgroundContext(), input, fn)
  5304  }
  5305  
  5306  // ListSmartHomeAppliancesPagesWithContext same as ListSmartHomeAppliancesPages except
  5307  // it takes a Context and allows setting request options on the pages.
  5308  //
  5309  // The context must be non-nil and will be used for request cancellation. If
  5310  // the context is nil a panic will occur. In the future the SDK may create
  5311  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5312  // for more information on using Contexts.
  5313  func (c *AlexaForBusiness) ListSmartHomeAppliancesPagesWithContext(ctx aws.Context, input *ListSmartHomeAppliancesInput, fn func(*ListSmartHomeAppliancesOutput, bool) bool, opts ...request.Option) error {
  5314  	p := request.Pagination{
  5315  		NewRequest: func() (*request.Request, error) {
  5316  			var inCpy *ListSmartHomeAppliancesInput
  5317  			if input != nil {
  5318  				tmp := *input
  5319  				inCpy = &tmp
  5320  			}
  5321  			req, _ := c.ListSmartHomeAppliancesRequest(inCpy)
  5322  			req.SetContext(ctx)
  5323  			req.ApplyOptions(opts...)
  5324  			return req, nil
  5325  		},
  5326  	}
  5327  
  5328  	for p.Next() {
  5329  		if !fn(p.Page().(*ListSmartHomeAppliancesOutput), !p.HasNextPage()) {
  5330  			break
  5331  		}
  5332  	}
  5333  
  5334  	return p.Err()
  5335  }
  5336  
  5337  const opListTags = "ListTags"
  5338  
  5339  // ListTagsRequest generates a "aws/request.Request" representing the
  5340  // client's request for the ListTags operation. The "output" return
  5341  // value will be populated with the request's response once the request completes
  5342  // successfully.
  5343  //
  5344  // Use "Send" method on the returned Request to send the API call to the service.
  5345  // the "output" return value is not valid until after Send returns without error.
  5346  //
  5347  // See ListTags for more information on using the ListTags
  5348  // API call, and error handling.
  5349  //
  5350  // This method is useful when you want to inject custom logic or configuration
  5351  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5352  //
  5353  //
  5354  //    // Example sending a request using the ListTagsRequest method.
  5355  //    req, resp := client.ListTagsRequest(params)
  5356  //
  5357  //    err := req.Send()
  5358  //    if err == nil { // resp is now filled
  5359  //        fmt.Println(resp)
  5360  //    }
  5361  //
  5362  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListTags
  5363  func (c *AlexaForBusiness) ListTagsRequest(input *ListTagsInput) (req *request.Request, output *ListTagsOutput) {
  5364  	op := &request.Operation{
  5365  		Name:       opListTags,
  5366  		HTTPMethod: "POST",
  5367  		HTTPPath:   "/",
  5368  		Paginator: &request.Paginator{
  5369  			InputTokens:     []string{"NextToken"},
  5370  			OutputTokens:    []string{"NextToken"},
  5371  			LimitToken:      "MaxResults",
  5372  			TruncationToken: "",
  5373  		},
  5374  	}
  5375  
  5376  	if input == nil {
  5377  		input = &ListTagsInput{}
  5378  	}
  5379  
  5380  	output = &ListTagsOutput{}
  5381  	req = c.newRequest(op, input, output)
  5382  	return
  5383  }
  5384  
  5385  // ListTags API operation for Alexa For Business.
  5386  //
  5387  // Lists all tags for the specified resource.
  5388  //
  5389  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5390  // with awserr.Error's Code and Message methods to get detailed information about
  5391  // the error.
  5392  //
  5393  // See the AWS API reference guide for Alexa For Business's
  5394  // API operation ListTags for usage and error information.
  5395  //
  5396  // Returned Error Types:
  5397  //   * NotFoundException
  5398  //   The resource is not found.
  5399  //
  5400  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ListTags
  5401  func (c *AlexaForBusiness) ListTags(input *ListTagsInput) (*ListTagsOutput, error) {
  5402  	req, out := c.ListTagsRequest(input)
  5403  	return out, req.Send()
  5404  }
  5405  
  5406  // ListTagsWithContext is the same as ListTags with the addition of
  5407  // the ability to pass a context and additional request options.
  5408  //
  5409  // See ListTags for details on how to use this API operation.
  5410  //
  5411  // The context must be non-nil and will be used for request cancellation. If
  5412  // the context is nil a panic will occur. In the future the SDK may create
  5413  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5414  // for more information on using Contexts.
  5415  func (c *AlexaForBusiness) ListTagsWithContext(ctx aws.Context, input *ListTagsInput, opts ...request.Option) (*ListTagsOutput, error) {
  5416  	req, out := c.ListTagsRequest(input)
  5417  	req.SetContext(ctx)
  5418  	req.ApplyOptions(opts...)
  5419  	return out, req.Send()
  5420  }
  5421  
  5422  // ListTagsPages iterates over the pages of a ListTags operation,
  5423  // calling the "fn" function with the response data for each page. To stop
  5424  // iterating, return false from the fn function.
  5425  //
  5426  // See ListTags method for more information on how to use this operation.
  5427  //
  5428  // Note: This operation can generate multiple requests to a service.
  5429  //
  5430  //    // Example iterating over at most 3 pages of a ListTags operation.
  5431  //    pageNum := 0
  5432  //    err := client.ListTagsPages(params,
  5433  //        func(page *alexaforbusiness.ListTagsOutput, lastPage bool) bool {
  5434  //            pageNum++
  5435  //            fmt.Println(page)
  5436  //            return pageNum <= 3
  5437  //        })
  5438  //
  5439  func (c *AlexaForBusiness) ListTagsPages(input *ListTagsInput, fn func(*ListTagsOutput, bool) bool) error {
  5440  	return c.ListTagsPagesWithContext(aws.BackgroundContext(), input, fn)
  5441  }
  5442  
  5443  // ListTagsPagesWithContext same as ListTagsPages except
  5444  // it takes a Context and allows setting request options on the pages.
  5445  //
  5446  // The context must be non-nil and will be used for request cancellation. If
  5447  // the context is nil a panic will occur. In the future the SDK may create
  5448  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5449  // for more information on using Contexts.
  5450  func (c *AlexaForBusiness) ListTagsPagesWithContext(ctx aws.Context, input *ListTagsInput, fn func(*ListTagsOutput, bool) bool, opts ...request.Option) error {
  5451  	p := request.Pagination{
  5452  		NewRequest: func() (*request.Request, error) {
  5453  			var inCpy *ListTagsInput
  5454  			if input != nil {
  5455  				tmp := *input
  5456  				inCpy = &tmp
  5457  			}
  5458  			req, _ := c.ListTagsRequest(inCpy)
  5459  			req.SetContext(ctx)
  5460  			req.ApplyOptions(opts...)
  5461  			return req, nil
  5462  		},
  5463  	}
  5464  
  5465  	for p.Next() {
  5466  		if !fn(p.Page().(*ListTagsOutput), !p.HasNextPage()) {
  5467  			break
  5468  		}
  5469  	}
  5470  
  5471  	return p.Err()
  5472  }
  5473  
  5474  const opPutConferencePreference = "PutConferencePreference"
  5475  
  5476  // PutConferencePreferenceRequest generates a "aws/request.Request" representing the
  5477  // client's request for the PutConferencePreference operation. The "output" return
  5478  // value will be populated with the request's response once the request completes
  5479  // successfully.
  5480  //
  5481  // Use "Send" method on the returned Request to send the API call to the service.
  5482  // the "output" return value is not valid until after Send returns without error.
  5483  //
  5484  // See PutConferencePreference for more information on using the PutConferencePreference
  5485  // API call, and error handling.
  5486  //
  5487  // This method is useful when you want to inject custom logic or configuration
  5488  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5489  //
  5490  //
  5491  //    // Example sending a request using the PutConferencePreferenceRequest method.
  5492  //    req, resp := client.PutConferencePreferenceRequest(params)
  5493  //
  5494  //    err := req.Send()
  5495  //    if err == nil { // resp is now filled
  5496  //        fmt.Println(resp)
  5497  //    }
  5498  //
  5499  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutConferencePreference
  5500  func (c *AlexaForBusiness) PutConferencePreferenceRequest(input *PutConferencePreferenceInput) (req *request.Request, output *PutConferencePreferenceOutput) {
  5501  	op := &request.Operation{
  5502  		Name:       opPutConferencePreference,
  5503  		HTTPMethod: "POST",
  5504  		HTTPPath:   "/",
  5505  	}
  5506  
  5507  	if input == nil {
  5508  		input = &PutConferencePreferenceInput{}
  5509  	}
  5510  
  5511  	output = &PutConferencePreferenceOutput{}
  5512  	req = c.newRequest(op, input, output)
  5513  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5514  	return
  5515  }
  5516  
  5517  // PutConferencePreference API operation for Alexa For Business.
  5518  //
  5519  // Sets the conference preferences on a specific conference provider at the
  5520  // account level.
  5521  //
  5522  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5523  // with awserr.Error's Code and Message methods to get detailed information about
  5524  // the error.
  5525  //
  5526  // See the AWS API reference guide for Alexa For Business's
  5527  // API operation PutConferencePreference for usage and error information.
  5528  //
  5529  // Returned Error Types:
  5530  //   * NotFoundException
  5531  //   The resource is not found.
  5532  //
  5533  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutConferencePreference
  5534  func (c *AlexaForBusiness) PutConferencePreference(input *PutConferencePreferenceInput) (*PutConferencePreferenceOutput, error) {
  5535  	req, out := c.PutConferencePreferenceRequest(input)
  5536  	return out, req.Send()
  5537  }
  5538  
  5539  // PutConferencePreferenceWithContext is the same as PutConferencePreference with the addition of
  5540  // the ability to pass a context and additional request options.
  5541  //
  5542  // See PutConferencePreference for details on how to use this API operation.
  5543  //
  5544  // The context must be non-nil and will be used for request cancellation. If
  5545  // the context is nil a panic will occur. In the future the SDK may create
  5546  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5547  // for more information on using Contexts.
  5548  func (c *AlexaForBusiness) PutConferencePreferenceWithContext(ctx aws.Context, input *PutConferencePreferenceInput, opts ...request.Option) (*PutConferencePreferenceOutput, error) {
  5549  	req, out := c.PutConferencePreferenceRequest(input)
  5550  	req.SetContext(ctx)
  5551  	req.ApplyOptions(opts...)
  5552  	return out, req.Send()
  5553  }
  5554  
  5555  const opPutInvitationConfiguration = "PutInvitationConfiguration"
  5556  
  5557  // PutInvitationConfigurationRequest generates a "aws/request.Request" representing the
  5558  // client's request for the PutInvitationConfiguration operation. The "output" return
  5559  // value will be populated with the request's response once the request completes
  5560  // successfully.
  5561  //
  5562  // Use "Send" method on the returned Request to send the API call to the service.
  5563  // the "output" return value is not valid until after Send returns without error.
  5564  //
  5565  // See PutInvitationConfiguration for more information on using the PutInvitationConfiguration
  5566  // API call, and error handling.
  5567  //
  5568  // This method is useful when you want to inject custom logic or configuration
  5569  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5570  //
  5571  //
  5572  //    // Example sending a request using the PutInvitationConfigurationRequest method.
  5573  //    req, resp := client.PutInvitationConfigurationRequest(params)
  5574  //
  5575  //    err := req.Send()
  5576  //    if err == nil { // resp is now filled
  5577  //        fmt.Println(resp)
  5578  //    }
  5579  //
  5580  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutInvitationConfiguration
  5581  func (c *AlexaForBusiness) PutInvitationConfigurationRequest(input *PutInvitationConfigurationInput) (req *request.Request, output *PutInvitationConfigurationOutput) {
  5582  	op := &request.Operation{
  5583  		Name:       opPutInvitationConfiguration,
  5584  		HTTPMethod: "POST",
  5585  		HTTPPath:   "/",
  5586  	}
  5587  
  5588  	if input == nil {
  5589  		input = &PutInvitationConfigurationInput{}
  5590  	}
  5591  
  5592  	output = &PutInvitationConfigurationOutput{}
  5593  	req = c.newRequest(op, input, output)
  5594  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5595  	return
  5596  }
  5597  
  5598  // PutInvitationConfiguration API operation for Alexa For Business.
  5599  //
  5600  // Configures the email template for the user enrollment invitation with the
  5601  // specified attributes.
  5602  //
  5603  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5604  // with awserr.Error's Code and Message methods to get detailed information about
  5605  // the error.
  5606  //
  5607  // See the AWS API reference guide for Alexa For Business's
  5608  // API operation PutInvitationConfiguration for usage and error information.
  5609  //
  5610  // Returned Error Types:
  5611  //   * NotFoundException
  5612  //   The resource is not found.
  5613  //
  5614  //   * ConcurrentModificationException
  5615  //   There is a concurrent modification of resources.
  5616  //
  5617  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutInvitationConfiguration
  5618  func (c *AlexaForBusiness) PutInvitationConfiguration(input *PutInvitationConfigurationInput) (*PutInvitationConfigurationOutput, error) {
  5619  	req, out := c.PutInvitationConfigurationRequest(input)
  5620  	return out, req.Send()
  5621  }
  5622  
  5623  // PutInvitationConfigurationWithContext is the same as PutInvitationConfiguration with the addition of
  5624  // the ability to pass a context and additional request options.
  5625  //
  5626  // See PutInvitationConfiguration for details on how to use this API operation.
  5627  //
  5628  // The context must be non-nil and will be used for request cancellation. If
  5629  // the context is nil a panic will occur. In the future the SDK may create
  5630  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5631  // for more information on using Contexts.
  5632  func (c *AlexaForBusiness) PutInvitationConfigurationWithContext(ctx aws.Context, input *PutInvitationConfigurationInput, opts ...request.Option) (*PutInvitationConfigurationOutput, error) {
  5633  	req, out := c.PutInvitationConfigurationRequest(input)
  5634  	req.SetContext(ctx)
  5635  	req.ApplyOptions(opts...)
  5636  	return out, req.Send()
  5637  }
  5638  
  5639  const opPutRoomSkillParameter = "PutRoomSkillParameter"
  5640  
  5641  // PutRoomSkillParameterRequest generates a "aws/request.Request" representing the
  5642  // client's request for the PutRoomSkillParameter operation. The "output" return
  5643  // value will be populated with the request's response once the request completes
  5644  // successfully.
  5645  //
  5646  // Use "Send" method on the returned Request to send the API call to the service.
  5647  // the "output" return value is not valid until after Send returns without error.
  5648  //
  5649  // See PutRoomSkillParameter for more information on using the PutRoomSkillParameter
  5650  // API call, and error handling.
  5651  //
  5652  // This method is useful when you want to inject custom logic or configuration
  5653  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5654  //
  5655  //
  5656  //    // Example sending a request using the PutRoomSkillParameterRequest method.
  5657  //    req, resp := client.PutRoomSkillParameterRequest(params)
  5658  //
  5659  //    err := req.Send()
  5660  //    if err == nil { // resp is now filled
  5661  //        fmt.Println(resp)
  5662  //    }
  5663  //
  5664  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutRoomSkillParameter
  5665  func (c *AlexaForBusiness) PutRoomSkillParameterRequest(input *PutRoomSkillParameterInput) (req *request.Request, output *PutRoomSkillParameterOutput) {
  5666  	op := &request.Operation{
  5667  		Name:       opPutRoomSkillParameter,
  5668  		HTTPMethod: "POST",
  5669  		HTTPPath:   "/",
  5670  	}
  5671  
  5672  	if input == nil {
  5673  		input = &PutRoomSkillParameterInput{}
  5674  	}
  5675  
  5676  	output = &PutRoomSkillParameterOutput{}
  5677  	req = c.newRequest(op, input, output)
  5678  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5679  	return
  5680  }
  5681  
  5682  // PutRoomSkillParameter API operation for Alexa For Business.
  5683  //
  5684  // Updates room skill parameter details by room, skill, and parameter key ID.
  5685  // Not all skills have a room skill parameter.
  5686  //
  5687  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5688  // with awserr.Error's Code and Message methods to get detailed information about
  5689  // the error.
  5690  //
  5691  // See the AWS API reference guide for Alexa For Business's
  5692  // API operation PutRoomSkillParameter for usage and error information.
  5693  //
  5694  // Returned Error Types:
  5695  //   * ConcurrentModificationException
  5696  //   There is a concurrent modification of resources.
  5697  //
  5698  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutRoomSkillParameter
  5699  func (c *AlexaForBusiness) PutRoomSkillParameter(input *PutRoomSkillParameterInput) (*PutRoomSkillParameterOutput, error) {
  5700  	req, out := c.PutRoomSkillParameterRequest(input)
  5701  	return out, req.Send()
  5702  }
  5703  
  5704  // PutRoomSkillParameterWithContext is the same as PutRoomSkillParameter with the addition of
  5705  // the ability to pass a context and additional request options.
  5706  //
  5707  // See PutRoomSkillParameter for details on how to use this API operation.
  5708  //
  5709  // The context must be non-nil and will be used for request cancellation. If
  5710  // the context is nil a panic will occur. In the future the SDK may create
  5711  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5712  // for more information on using Contexts.
  5713  func (c *AlexaForBusiness) PutRoomSkillParameterWithContext(ctx aws.Context, input *PutRoomSkillParameterInput, opts ...request.Option) (*PutRoomSkillParameterOutput, error) {
  5714  	req, out := c.PutRoomSkillParameterRequest(input)
  5715  	req.SetContext(ctx)
  5716  	req.ApplyOptions(opts...)
  5717  	return out, req.Send()
  5718  }
  5719  
  5720  const opPutSkillAuthorization = "PutSkillAuthorization"
  5721  
  5722  // PutSkillAuthorizationRequest generates a "aws/request.Request" representing the
  5723  // client's request for the PutSkillAuthorization operation. The "output" return
  5724  // value will be populated with the request's response once the request completes
  5725  // successfully.
  5726  //
  5727  // Use "Send" method on the returned Request to send the API call to the service.
  5728  // the "output" return value is not valid until after Send returns without error.
  5729  //
  5730  // See PutSkillAuthorization for more information on using the PutSkillAuthorization
  5731  // API call, and error handling.
  5732  //
  5733  // This method is useful when you want to inject custom logic or configuration
  5734  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5735  //
  5736  //
  5737  //    // Example sending a request using the PutSkillAuthorizationRequest method.
  5738  //    req, resp := client.PutSkillAuthorizationRequest(params)
  5739  //
  5740  //    err := req.Send()
  5741  //    if err == nil { // resp is now filled
  5742  //        fmt.Println(resp)
  5743  //    }
  5744  //
  5745  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutSkillAuthorization
  5746  func (c *AlexaForBusiness) PutSkillAuthorizationRequest(input *PutSkillAuthorizationInput) (req *request.Request, output *PutSkillAuthorizationOutput) {
  5747  	op := &request.Operation{
  5748  		Name:       opPutSkillAuthorization,
  5749  		HTTPMethod: "POST",
  5750  		HTTPPath:   "/",
  5751  	}
  5752  
  5753  	if input == nil {
  5754  		input = &PutSkillAuthorizationInput{}
  5755  	}
  5756  
  5757  	output = &PutSkillAuthorizationOutput{}
  5758  	req = c.newRequest(op, input, output)
  5759  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5760  	return
  5761  }
  5762  
  5763  // PutSkillAuthorization API operation for Alexa For Business.
  5764  //
  5765  // Links a user's account to a third-party skill provider. If this API operation
  5766  // is called by an assumed IAM role, the skill being linked must be a private
  5767  // skill. Also, the skill must be owned by the AWS account that assumed the
  5768  // IAM role.
  5769  //
  5770  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5771  // with awserr.Error's Code and Message methods to get detailed information about
  5772  // the error.
  5773  //
  5774  // See the AWS API reference guide for Alexa For Business's
  5775  // API operation PutSkillAuthorization for usage and error information.
  5776  //
  5777  // Returned Error Types:
  5778  //   * UnauthorizedException
  5779  //   The caller has no permissions to operate on the resource involved in the
  5780  //   API call.
  5781  //
  5782  //   * ConcurrentModificationException
  5783  //   There is a concurrent modification of resources.
  5784  //
  5785  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/PutSkillAuthorization
  5786  func (c *AlexaForBusiness) PutSkillAuthorization(input *PutSkillAuthorizationInput) (*PutSkillAuthorizationOutput, error) {
  5787  	req, out := c.PutSkillAuthorizationRequest(input)
  5788  	return out, req.Send()
  5789  }
  5790  
  5791  // PutSkillAuthorizationWithContext is the same as PutSkillAuthorization with the addition of
  5792  // the ability to pass a context and additional request options.
  5793  //
  5794  // See PutSkillAuthorization for details on how to use this API operation.
  5795  //
  5796  // The context must be non-nil and will be used for request cancellation. If
  5797  // the context is nil a panic will occur. In the future the SDK may create
  5798  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5799  // for more information on using Contexts.
  5800  func (c *AlexaForBusiness) PutSkillAuthorizationWithContext(ctx aws.Context, input *PutSkillAuthorizationInput, opts ...request.Option) (*PutSkillAuthorizationOutput, error) {
  5801  	req, out := c.PutSkillAuthorizationRequest(input)
  5802  	req.SetContext(ctx)
  5803  	req.ApplyOptions(opts...)
  5804  	return out, req.Send()
  5805  }
  5806  
  5807  const opRegisterAVSDevice = "RegisterAVSDevice"
  5808  
  5809  // RegisterAVSDeviceRequest generates a "aws/request.Request" representing the
  5810  // client's request for the RegisterAVSDevice operation. The "output" return
  5811  // value will be populated with the request's response once the request completes
  5812  // successfully.
  5813  //
  5814  // Use "Send" method on the returned Request to send the API call to the service.
  5815  // the "output" return value is not valid until after Send returns without error.
  5816  //
  5817  // See RegisterAVSDevice for more information on using the RegisterAVSDevice
  5818  // API call, and error handling.
  5819  //
  5820  // This method is useful when you want to inject custom logic or configuration
  5821  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5822  //
  5823  //
  5824  //    // Example sending a request using the RegisterAVSDeviceRequest method.
  5825  //    req, resp := client.RegisterAVSDeviceRequest(params)
  5826  //
  5827  //    err := req.Send()
  5828  //    if err == nil { // resp is now filled
  5829  //        fmt.Println(resp)
  5830  //    }
  5831  //
  5832  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RegisterAVSDevice
  5833  func (c *AlexaForBusiness) RegisterAVSDeviceRequest(input *RegisterAVSDeviceInput) (req *request.Request, output *RegisterAVSDeviceOutput) {
  5834  	op := &request.Operation{
  5835  		Name:       opRegisterAVSDevice,
  5836  		HTTPMethod: "POST",
  5837  		HTTPPath:   "/",
  5838  	}
  5839  
  5840  	if input == nil {
  5841  		input = &RegisterAVSDeviceInput{}
  5842  	}
  5843  
  5844  	output = &RegisterAVSDeviceOutput{}
  5845  	req = c.newRequest(op, input, output)
  5846  	return
  5847  }
  5848  
  5849  // RegisterAVSDevice API operation for Alexa For Business.
  5850  //
  5851  // Registers an Alexa-enabled device built by an Original Equipment Manufacturer
  5852  // (OEM) using Alexa Voice Service (AVS).
  5853  //
  5854  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5855  // with awserr.Error's Code and Message methods to get detailed information about
  5856  // the error.
  5857  //
  5858  // See the AWS API reference guide for Alexa For Business's
  5859  // API operation RegisterAVSDevice for usage and error information.
  5860  //
  5861  // Returned Error Types:
  5862  //   * LimitExceededException
  5863  //   You are performing an action that would put you beyond your account's limits.
  5864  //
  5865  //   * ConcurrentModificationException
  5866  //   There is a concurrent modification of resources.
  5867  //
  5868  //   * NotFoundException
  5869  //   The resource is not found.
  5870  //
  5871  //   * InvalidDeviceException
  5872  //   The device is in an invalid state.
  5873  //
  5874  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RegisterAVSDevice
  5875  func (c *AlexaForBusiness) RegisterAVSDevice(input *RegisterAVSDeviceInput) (*RegisterAVSDeviceOutput, error) {
  5876  	req, out := c.RegisterAVSDeviceRequest(input)
  5877  	return out, req.Send()
  5878  }
  5879  
  5880  // RegisterAVSDeviceWithContext is the same as RegisterAVSDevice with the addition of
  5881  // the ability to pass a context and additional request options.
  5882  //
  5883  // See RegisterAVSDevice for details on how to use this API operation.
  5884  //
  5885  // The context must be non-nil and will be used for request cancellation. If
  5886  // the context is nil a panic will occur. In the future the SDK may create
  5887  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5888  // for more information on using Contexts.
  5889  func (c *AlexaForBusiness) RegisterAVSDeviceWithContext(ctx aws.Context, input *RegisterAVSDeviceInput, opts ...request.Option) (*RegisterAVSDeviceOutput, error) {
  5890  	req, out := c.RegisterAVSDeviceRequest(input)
  5891  	req.SetContext(ctx)
  5892  	req.ApplyOptions(opts...)
  5893  	return out, req.Send()
  5894  }
  5895  
  5896  const opRejectSkill = "RejectSkill"
  5897  
  5898  // RejectSkillRequest generates a "aws/request.Request" representing the
  5899  // client's request for the RejectSkill operation. The "output" return
  5900  // value will be populated with the request's response once the request completes
  5901  // successfully.
  5902  //
  5903  // Use "Send" method on the returned Request to send the API call to the service.
  5904  // the "output" return value is not valid until after Send returns without error.
  5905  //
  5906  // See RejectSkill for more information on using the RejectSkill
  5907  // API call, and error handling.
  5908  //
  5909  // This method is useful when you want to inject custom logic or configuration
  5910  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5911  //
  5912  //
  5913  //    // Example sending a request using the RejectSkillRequest method.
  5914  //    req, resp := client.RejectSkillRequest(params)
  5915  //
  5916  //    err := req.Send()
  5917  //    if err == nil { // resp is now filled
  5918  //        fmt.Println(resp)
  5919  //    }
  5920  //
  5921  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RejectSkill
  5922  func (c *AlexaForBusiness) RejectSkillRequest(input *RejectSkillInput) (req *request.Request, output *RejectSkillOutput) {
  5923  	op := &request.Operation{
  5924  		Name:       opRejectSkill,
  5925  		HTTPMethod: "POST",
  5926  		HTTPPath:   "/",
  5927  	}
  5928  
  5929  	if input == nil {
  5930  		input = &RejectSkillInput{}
  5931  	}
  5932  
  5933  	output = &RejectSkillOutput{}
  5934  	req = c.newRequest(op, input, output)
  5935  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  5936  	return
  5937  }
  5938  
  5939  // RejectSkill API operation for Alexa For Business.
  5940  //
  5941  // Disassociates a skill from the organization under a user's AWS account. If
  5942  // the skill is a private skill, it moves to an AcceptStatus of PENDING. Any
  5943  // private or public skill that is rejected can be added later by calling the
  5944  // ApproveSkill API.
  5945  //
  5946  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  5947  // with awserr.Error's Code and Message methods to get detailed information about
  5948  // the error.
  5949  //
  5950  // See the AWS API reference guide for Alexa For Business's
  5951  // API operation RejectSkill for usage and error information.
  5952  //
  5953  // Returned Error Types:
  5954  //   * ConcurrentModificationException
  5955  //   There is a concurrent modification of resources.
  5956  //
  5957  //   * NotFoundException
  5958  //   The resource is not found.
  5959  //
  5960  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RejectSkill
  5961  func (c *AlexaForBusiness) RejectSkill(input *RejectSkillInput) (*RejectSkillOutput, error) {
  5962  	req, out := c.RejectSkillRequest(input)
  5963  	return out, req.Send()
  5964  }
  5965  
  5966  // RejectSkillWithContext is the same as RejectSkill with the addition of
  5967  // the ability to pass a context and additional request options.
  5968  //
  5969  // See RejectSkill for details on how to use this API operation.
  5970  //
  5971  // The context must be non-nil and will be used for request cancellation. If
  5972  // the context is nil a panic will occur. In the future the SDK may create
  5973  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  5974  // for more information on using Contexts.
  5975  func (c *AlexaForBusiness) RejectSkillWithContext(ctx aws.Context, input *RejectSkillInput, opts ...request.Option) (*RejectSkillOutput, error) {
  5976  	req, out := c.RejectSkillRequest(input)
  5977  	req.SetContext(ctx)
  5978  	req.ApplyOptions(opts...)
  5979  	return out, req.Send()
  5980  }
  5981  
  5982  const opResolveRoom = "ResolveRoom"
  5983  
  5984  // ResolveRoomRequest generates a "aws/request.Request" representing the
  5985  // client's request for the ResolveRoom operation. The "output" return
  5986  // value will be populated with the request's response once the request completes
  5987  // successfully.
  5988  //
  5989  // Use "Send" method on the returned Request to send the API call to the service.
  5990  // the "output" return value is not valid until after Send returns without error.
  5991  //
  5992  // See ResolveRoom for more information on using the ResolveRoom
  5993  // API call, and error handling.
  5994  //
  5995  // This method is useful when you want to inject custom logic or configuration
  5996  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  5997  //
  5998  //
  5999  //    // Example sending a request using the ResolveRoomRequest method.
  6000  //    req, resp := client.ResolveRoomRequest(params)
  6001  //
  6002  //    err := req.Send()
  6003  //    if err == nil { // resp is now filled
  6004  //        fmt.Println(resp)
  6005  //    }
  6006  //
  6007  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ResolveRoom
  6008  func (c *AlexaForBusiness) ResolveRoomRequest(input *ResolveRoomInput) (req *request.Request, output *ResolveRoomOutput) {
  6009  	op := &request.Operation{
  6010  		Name:       opResolveRoom,
  6011  		HTTPMethod: "POST",
  6012  		HTTPPath:   "/",
  6013  	}
  6014  
  6015  	if input == nil {
  6016  		input = &ResolveRoomInput{}
  6017  	}
  6018  
  6019  	output = &ResolveRoomOutput{}
  6020  	req = c.newRequest(op, input, output)
  6021  	return
  6022  }
  6023  
  6024  // ResolveRoom API operation for Alexa For Business.
  6025  //
  6026  // Determines the details for the room from which a skill request was invoked.
  6027  // This operation is used by skill developers.
  6028  //
  6029  // To query ResolveRoom from an Alexa skill, the skill ID needs to be authorized.
  6030  // When the skill is using an AWS Lambda function, the skill is automatically
  6031  // authorized when you publish your skill as a private skill to your AWS account.
  6032  // Skills that are hosted using a custom web service must be manually authorized.
  6033  // To get your skill authorized, contact AWS Support with your AWS account ID
  6034  // that queries the ResolveRoom API and skill ID.
  6035  //
  6036  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6037  // with awserr.Error's Code and Message methods to get detailed information about
  6038  // the error.
  6039  //
  6040  // See the AWS API reference guide for Alexa For Business's
  6041  // API operation ResolveRoom for usage and error information.
  6042  //
  6043  // Returned Error Types:
  6044  //   * NotFoundException
  6045  //   The resource is not found.
  6046  //
  6047  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/ResolveRoom
  6048  func (c *AlexaForBusiness) ResolveRoom(input *ResolveRoomInput) (*ResolveRoomOutput, error) {
  6049  	req, out := c.ResolveRoomRequest(input)
  6050  	return out, req.Send()
  6051  }
  6052  
  6053  // ResolveRoomWithContext is the same as ResolveRoom with the addition of
  6054  // the ability to pass a context and additional request options.
  6055  //
  6056  // See ResolveRoom for details on how to use this API operation.
  6057  //
  6058  // The context must be non-nil and will be used for request cancellation. If
  6059  // the context is nil a panic will occur. In the future the SDK may create
  6060  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6061  // for more information on using Contexts.
  6062  func (c *AlexaForBusiness) ResolveRoomWithContext(ctx aws.Context, input *ResolveRoomInput, opts ...request.Option) (*ResolveRoomOutput, error) {
  6063  	req, out := c.ResolveRoomRequest(input)
  6064  	req.SetContext(ctx)
  6065  	req.ApplyOptions(opts...)
  6066  	return out, req.Send()
  6067  }
  6068  
  6069  const opRevokeInvitation = "RevokeInvitation"
  6070  
  6071  // RevokeInvitationRequest generates a "aws/request.Request" representing the
  6072  // client's request for the RevokeInvitation operation. The "output" return
  6073  // value will be populated with the request's response once the request completes
  6074  // successfully.
  6075  //
  6076  // Use "Send" method on the returned Request to send the API call to the service.
  6077  // the "output" return value is not valid until after Send returns without error.
  6078  //
  6079  // See RevokeInvitation for more information on using the RevokeInvitation
  6080  // API call, and error handling.
  6081  //
  6082  // This method is useful when you want to inject custom logic or configuration
  6083  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6084  //
  6085  //
  6086  //    // Example sending a request using the RevokeInvitationRequest method.
  6087  //    req, resp := client.RevokeInvitationRequest(params)
  6088  //
  6089  //    err := req.Send()
  6090  //    if err == nil { // resp is now filled
  6091  //        fmt.Println(resp)
  6092  //    }
  6093  //
  6094  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RevokeInvitation
  6095  func (c *AlexaForBusiness) RevokeInvitationRequest(input *RevokeInvitationInput) (req *request.Request, output *RevokeInvitationOutput) {
  6096  	op := &request.Operation{
  6097  		Name:       opRevokeInvitation,
  6098  		HTTPMethod: "POST",
  6099  		HTTPPath:   "/",
  6100  	}
  6101  
  6102  	if input == nil {
  6103  		input = &RevokeInvitationInput{}
  6104  	}
  6105  
  6106  	output = &RevokeInvitationOutput{}
  6107  	req = c.newRequest(op, input, output)
  6108  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  6109  	return
  6110  }
  6111  
  6112  // RevokeInvitation API operation for Alexa For Business.
  6113  //
  6114  // Revokes an invitation and invalidates the enrollment URL.
  6115  //
  6116  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6117  // with awserr.Error's Code and Message methods to get detailed information about
  6118  // the error.
  6119  //
  6120  // See the AWS API reference guide for Alexa For Business's
  6121  // API operation RevokeInvitation for usage and error information.
  6122  //
  6123  // Returned Error Types:
  6124  //   * NotFoundException
  6125  //   The resource is not found.
  6126  //
  6127  //   * ConcurrentModificationException
  6128  //   There is a concurrent modification of resources.
  6129  //
  6130  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/RevokeInvitation
  6131  func (c *AlexaForBusiness) RevokeInvitation(input *RevokeInvitationInput) (*RevokeInvitationOutput, error) {
  6132  	req, out := c.RevokeInvitationRequest(input)
  6133  	return out, req.Send()
  6134  }
  6135  
  6136  // RevokeInvitationWithContext is the same as RevokeInvitation with the addition of
  6137  // the ability to pass a context and additional request options.
  6138  //
  6139  // See RevokeInvitation for details on how to use this API operation.
  6140  //
  6141  // The context must be non-nil and will be used for request cancellation. If
  6142  // the context is nil a panic will occur. In the future the SDK may create
  6143  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6144  // for more information on using Contexts.
  6145  func (c *AlexaForBusiness) RevokeInvitationWithContext(ctx aws.Context, input *RevokeInvitationInput, opts ...request.Option) (*RevokeInvitationOutput, error) {
  6146  	req, out := c.RevokeInvitationRequest(input)
  6147  	req.SetContext(ctx)
  6148  	req.ApplyOptions(opts...)
  6149  	return out, req.Send()
  6150  }
  6151  
  6152  const opSearchAddressBooks = "SearchAddressBooks"
  6153  
  6154  // SearchAddressBooksRequest generates a "aws/request.Request" representing the
  6155  // client's request for the SearchAddressBooks operation. The "output" return
  6156  // value will be populated with the request's response once the request completes
  6157  // successfully.
  6158  //
  6159  // Use "Send" method on the returned Request to send the API call to the service.
  6160  // the "output" return value is not valid until after Send returns without error.
  6161  //
  6162  // See SearchAddressBooks for more information on using the SearchAddressBooks
  6163  // API call, and error handling.
  6164  //
  6165  // This method is useful when you want to inject custom logic or configuration
  6166  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6167  //
  6168  //
  6169  //    // Example sending a request using the SearchAddressBooksRequest method.
  6170  //    req, resp := client.SearchAddressBooksRequest(params)
  6171  //
  6172  //    err := req.Send()
  6173  //    if err == nil { // resp is now filled
  6174  //        fmt.Println(resp)
  6175  //    }
  6176  //
  6177  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchAddressBooks
  6178  func (c *AlexaForBusiness) SearchAddressBooksRequest(input *SearchAddressBooksInput) (req *request.Request, output *SearchAddressBooksOutput) {
  6179  	op := &request.Operation{
  6180  		Name:       opSearchAddressBooks,
  6181  		HTTPMethod: "POST",
  6182  		HTTPPath:   "/",
  6183  		Paginator: &request.Paginator{
  6184  			InputTokens:     []string{"NextToken"},
  6185  			OutputTokens:    []string{"NextToken"},
  6186  			LimitToken:      "MaxResults",
  6187  			TruncationToken: "",
  6188  		},
  6189  	}
  6190  
  6191  	if input == nil {
  6192  		input = &SearchAddressBooksInput{}
  6193  	}
  6194  
  6195  	output = &SearchAddressBooksOutput{}
  6196  	req = c.newRequest(op, input, output)
  6197  	return
  6198  }
  6199  
  6200  // SearchAddressBooks API operation for Alexa For Business.
  6201  //
  6202  // Searches address books and lists the ones that meet a set of filter and sort
  6203  // criteria.
  6204  //
  6205  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6206  // with awserr.Error's Code and Message methods to get detailed information about
  6207  // the error.
  6208  //
  6209  // See the AWS API reference guide for Alexa For Business's
  6210  // API operation SearchAddressBooks for usage and error information.
  6211  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchAddressBooks
  6212  func (c *AlexaForBusiness) SearchAddressBooks(input *SearchAddressBooksInput) (*SearchAddressBooksOutput, error) {
  6213  	req, out := c.SearchAddressBooksRequest(input)
  6214  	return out, req.Send()
  6215  }
  6216  
  6217  // SearchAddressBooksWithContext is the same as SearchAddressBooks with the addition of
  6218  // the ability to pass a context and additional request options.
  6219  //
  6220  // See SearchAddressBooks for details on how to use this API operation.
  6221  //
  6222  // The context must be non-nil and will be used for request cancellation. If
  6223  // the context is nil a panic will occur. In the future the SDK may create
  6224  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6225  // for more information on using Contexts.
  6226  func (c *AlexaForBusiness) SearchAddressBooksWithContext(ctx aws.Context, input *SearchAddressBooksInput, opts ...request.Option) (*SearchAddressBooksOutput, error) {
  6227  	req, out := c.SearchAddressBooksRequest(input)
  6228  	req.SetContext(ctx)
  6229  	req.ApplyOptions(opts...)
  6230  	return out, req.Send()
  6231  }
  6232  
  6233  // SearchAddressBooksPages iterates over the pages of a SearchAddressBooks operation,
  6234  // calling the "fn" function with the response data for each page. To stop
  6235  // iterating, return false from the fn function.
  6236  //
  6237  // See SearchAddressBooks method for more information on how to use this operation.
  6238  //
  6239  // Note: This operation can generate multiple requests to a service.
  6240  //
  6241  //    // Example iterating over at most 3 pages of a SearchAddressBooks operation.
  6242  //    pageNum := 0
  6243  //    err := client.SearchAddressBooksPages(params,
  6244  //        func(page *alexaforbusiness.SearchAddressBooksOutput, lastPage bool) bool {
  6245  //            pageNum++
  6246  //            fmt.Println(page)
  6247  //            return pageNum <= 3
  6248  //        })
  6249  //
  6250  func (c *AlexaForBusiness) SearchAddressBooksPages(input *SearchAddressBooksInput, fn func(*SearchAddressBooksOutput, bool) bool) error {
  6251  	return c.SearchAddressBooksPagesWithContext(aws.BackgroundContext(), input, fn)
  6252  }
  6253  
  6254  // SearchAddressBooksPagesWithContext same as SearchAddressBooksPages except
  6255  // it takes a Context and allows setting request options on the pages.
  6256  //
  6257  // The context must be non-nil and will be used for request cancellation. If
  6258  // the context is nil a panic will occur. In the future the SDK may create
  6259  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6260  // for more information on using Contexts.
  6261  func (c *AlexaForBusiness) SearchAddressBooksPagesWithContext(ctx aws.Context, input *SearchAddressBooksInput, fn func(*SearchAddressBooksOutput, bool) bool, opts ...request.Option) error {
  6262  	p := request.Pagination{
  6263  		NewRequest: func() (*request.Request, error) {
  6264  			var inCpy *SearchAddressBooksInput
  6265  			if input != nil {
  6266  				tmp := *input
  6267  				inCpy = &tmp
  6268  			}
  6269  			req, _ := c.SearchAddressBooksRequest(inCpy)
  6270  			req.SetContext(ctx)
  6271  			req.ApplyOptions(opts...)
  6272  			return req, nil
  6273  		},
  6274  	}
  6275  
  6276  	for p.Next() {
  6277  		if !fn(p.Page().(*SearchAddressBooksOutput), !p.HasNextPage()) {
  6278  			break
  6279  		}
  6280  	}
  6281  
  6282  	return p.Err()
  6283  }
  6284  
  6285  const opSearchContacts = "SearchContacts"
  6286  
  6287  // SearchContactsRequest generates a "aws/request.Request" representing the
  6288  // client's request for the SearchContacts operation. The "output" return
  6289  // value will be populated with the request's response once the request completes
  6290  // successfully.
  6291  //
  6292  // Use "Send" method on the returned Request to send the API call to the service.
  6293  // the "output" return value is not valid until after Send returns without error.
  6294  //
  6295  // See SearchContacts for more information on using the SearchContacts
  6296  // API call, and error handling.
  6297  //
  6298  // This method is useful when you want to inject custom logic or configuration
  6299  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6300  //
  6301  //
  6302  //    // Example sending a request using the SearchContactsRequest method.
  6303  //    req, resp := client.SearchContactsRequest(params)
  6304  //
  6305  //    err := req.Send()
  6306  //    if err == nil { // resp is now filled
  6307  //        fmt.Println(resp)
  6308  //    }
  6309  //
  6310  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchContacts
  6311  func (c *AlexaForBusiness) SearchContactsRequest(input *SearchContactsInput) (req *request.Request, output *SearchContactsOutput) {
  6312  	op := &request.Operation{
  6313  		Name:       opSearchContacts,
  6314  		HTTPMethod: "POST",
  6315  		HTTPPath:   "/",
  6316  		Paginator: &request.Paginator{
  6317  			InputTokens:     []string{"NextToken"},
  6318  			OutputTokens:    []string{"NextToken"},
  6319  			LimitToken:      "MaxResults",
  6320  			TruncationToken: "",
  6321  		},
  6322  	}
  6323  
  6324  	if input == nil {
  6325  		input = &SearchContactsInput{}
  6326  	}
  6327  
  6328  	output = &SearchContactsOutput{}
  6329  	req = c.newRequest(op, input, output)
  6330  	return
  6331  }
  6332  
  6333  // SearchContacts API operation for Alexa For Business.
  6334  //
  6335  // Searches contacts and lists the ones that meet a set of filter and sort criteria.
  6336  //
  6337  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6338  // with awserr.Error's Code and Message methods to get detailed information about
  6339  // the error.
  6340  //
  6341  // See the AWS API reference guide for Alexa For Business's
  6342  // API operation SearchContacts for usage and error information.
  6343  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchContacts
  6344  func (c *AlexaForBusiness) SearchContacts(input *SearchContactsInput) (*SearchContactsOutput, error) {
  6345  	req, out := c.SearchContactsRequest(input)
  6346  	return out, req.Send()
  6347  }
  6348  
  6349  // SearchContactsWithContext is the same as SearchContacts with the addition of
  6350  // the ability to pass a context and additional request options.
  6351  //
  6352  // See SearchContacts for details on how to use this API operation.
  6353  //
  6354  // The context must be non-nil and will be used for request cancellation. If
  6355  // the context is nil a panic will occur. In the future the SDK may create
  6356  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6357  // for more information on using Contexts.
  6358  func (c *AlexaForBusiness) SearchContactsWithContext(ctx aws.Context, input *SearchContactsInput, opts ...request.Option) (*SearchContactsOutput, error) {
  6359  	req, out := c.SearchContactsRequest(input)
  6360  	req.SetContext(ctx)
  6361  	req.ApplyOptions(opts...)
  6362  	return out, req.Send()
  6363  }
  6364  
  6365  // SearchContactsPages iterates over the pages of a SearchContacts operation,
  6366  // calling the "fn" function with the response data for each page. To stop
  6367  // iterating, return false from the fn function.
  6368  //
  6369  // See SearchContacts method for more information on how to use this operation.
  6370  //
  6371  // Note: This operation can generate multiple requests to a service.
  6372  //
  6373  //    // Example iterating over at most 3 pages of a SearchContacts operation.
  6374  //    pageNum := 0
  6375  //    err := client.SearchContactsPages(params,
  6376  //        func(page *alexaforbusiness.SearchContactsOutput, lastPage bool) bool {
  6377  //            pageNum++
  6378  //            fmt.Println(page)
  6379  //            return pageNum <= 3
  6380  //        })
  6381  //
  6382  func (c *AlexaForBusiness) SearchContactsPages(input *SearchContactsInput, fn func(*SearchContactsOutput, bool) bool) error {
  6383  	return c.SearchContactsPagesWithContext(aws.BackgroundContext(), input, fn)
  6384  }
  6385  
  6386  // SearchContactsPagesWithContext same as SearchContactsPages except
  6387  // it takes a Context and allows setting request options on the pages.
  6388  //
  6389  // The context must be non-nil and will be used for request cancellation. If
  6390  // the context is nil a panic will occur. In the future the SDK may create
  6391  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6392  // for more information on using Contexts.
  6393  func (c *AlexaForBusiness) SearchContactsPagesWithContext(ctx aws.Context, input *SearchContactsInput, fn func(*SearchContactsOutput, bool) bool, opts ...request.Option) error {
  6394  	p := request.Pagination{
  6395  		NewRequest: func() (*request.Request, error) {
  6396  			var inCpy *SearchContactsInput
  6397  			if input != nil {
  6398  				tmp := *input
  6399  				inCpy = &tmp
  6400  			}
  6401  			req, _ := c.SearchContactsRequest(inCpy)
  6402  			req.SetContext(ctx)
  6403  			req.ApplyOptions(opts...)
  6404  			return req, nil
  6405  		},
  6406  	}
  6407  
  6408  	for p.Next() {
  6409  		if !fn(p.Page().(*SearchContactsOutput), !p.HasNextPage()) {
  6410  			break
  6411  		}
  6412  	}
  6413  
  6414  	return p.Err()
  6415  }
  6416  
  6417  const opSearchDevices = "SearchDevices"
  6418  
  6419  // SearchDevicesRequest generates a "aws/request.Request" representing the
  6420  // client's request for the SearchDevices operation. The "output" return
  6421  // value will be populated with the request's response once the request completes
  6422  // successfully.
  6423  //
  6424  // Use "Send" method on the returned Request to send the API call to the service.
  6425  // the "output" return value is not valid until after Send returns without error.
  6426  //
  6427  // See SearchDevices for more information on using the SearchDevices
  6428  // API call, and error handling.
  6429  //
  6430  // This method is useful when you want to inject custom logic or configuration
  6431  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6432  //
  6433  //
  6434  //    // Example sending a request using the SearchDevicesRequest method.
  6435  //    req, resp := client.SearchDevicesRequest(params)
  6436  //
  6437  //    err := req.Send()
  6438  //    if err == nil { // resp is now filled
  6439  //        fmt.Println(resp)
  6440  //    }
  6441  //
  6442  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchDevices
  6443  func (c *AlexaForBusiness) SearchDevicesRequest(input *SearchDevicesInput) (req *request.Request, output *SearchDevicesOutput) {
  6444  	op := &request.Operation{
  6445  		Name:       opSearchDevices,
  6446  		HTTPMethod: "POST",
  6447  		HTTPPath:   "/",
  6448  		Paginator: &request.Paginator{
  6449  			InputTokens:     []string{"NextToken"},
  6450  			OutputTokens:    []string{"NextToken"},
  6451  			LimitToken:      "MaxResults",
  6452  			TruncationToken: "",
  6453  		},
  6454  	}
  6455  
  6456  	if input == nil {
  6457  		input = &SearchDevicesInput{}
  6458  	}
  6459  
  6460  	output = &SearchDevicesOutput{}
  6461  	req = c.newRequest(op, input, output)
  6462  	return
  6463  }
  6464  
  6465  // SearchDevices API operation for Alexa For Business.
  6466  //
  6467  // Searches devices and lists the ones that meet a set of filter criteria.
  6468  //
  6469  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6470  // with awserr.Error's Code and Message methods to get detailed information about
  6471  // the error.
  6472  //
  6473  // See the AWS API reference guide for Alexa For Business's
  6474  // API operation SearchDevices for usage and error information.
  6475  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchDevices
  6476  func (c *AlexaForBusiness) SearchDevices(input *SearchDevicesInput) (*SearchDevicesOutput, error) {
  6477  	req, out := c.SearchDevicesRequest(input)
  6478  	return out, req.Send()
  6479  }
  6480  
  6481  // SearchDevicesWithContext is the same as SearchDevices with the addition of
  6482  // the ability to pass a context and additional request options.
  6483  //
  6484  // See SearchDevices for details on how to use this API operation.
  6485  //
  6486  // The context must be non-nil and will be used for request cancellation. If
  6487  // the context is nil a panic will occur. In the future the SDK may create
  6488  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6489  // for more information on using Contexts.
  6490  func (c *AlexaForBusiness) SearchDevicesWithContext(ctx aws.Context, input *SearchDevicesInput, opts ...request.Option) (*SearchDevicesOutput, error) {
  6491  	req, out := c.SearchDevicesRequest(input)
  6492  	req.SetContext(ctx)
  6493  	req.ApplyOptions(opts...)
  6494  	return out, req.Send()
  6495  }
  6496  
  6497  // SearchDevicesPages iterates over the pages of a SearchDevices operation,
  6498  // calling the "fn" function with the response data for each page. To stop
  6499  // iterating, return false from the fn function.
  6500  //
  6501  // See SearchDevices method for more information on how to use this operation.
  6502  //
  6503  // Note: This operation can generate multiple requests to a service.
  6504  //
  6505  //    // Example iterating over at most 3 pages of a SearchDevices operation.
  6506  //    pageNum := 0
  6507  //    err := client.SearchDevicesPages(params,
  6508  //        func(page *alexaforbusiness.SearchDevicesOutput, lastPage bool) bool {
  6509  //            pageNum++
  6510  //            fmt.Println(page)
  6511  //            return pageNum <= 3
  6512  //        })
  6513  //
  6514  func (c *AlexaForBusiness) SearchDevicesPages(input *SearchDevicesInput, fn func(*SearchDevicesOutput, bool) bool) error {
  6515  	return c.SearchDevicesPagesWithContext(aws.BackgroundContext(), input, fn)
  6516  }
  6517  
  6518  // SearchDevicesPagesWithContext same as SearchDevicesPages except
  6519  // it takes a Context and allows setting request options on the pages.
  6520  //
  6521  // The context must be non-nil and will be used for request cancellation. If
  6522  // the context is nil a panic will occur. In the future the SDK may create
  6523  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6524  // for more information on using Contexts.
  6525  func (c *AlexaForBusiness) SearchDevicesPagesWithContext(ctx aws.Context, input *SearchDevicesInput, fn func(*SearchDevicesOutput, bool) bool, opts ...request.Option) error {
  6526  	p := request.Pagination{
  6527  		NewRequest: func() (*request.Request, error) {
  6528  			var inCpy *SearchDevicesInput
  6529  			if input != nil {
  6530  				tmp := *input
  6531  				inCpy = &tmp
  6532  			}
  6533  			req, _ := c.SearchDevicesRequest(inCpy)
  6534  			req.SetContext(ctx)
  6535  			req.ApplyOptions(opts...)
  6536  			return req, nil
  6537  		},
  6538  	}
  6539  
  6540  	for p.Next() {
  6541  		if !fn(p.Page().(*SearchDevicesOutput), !p.HasNextPage()) {
  6542  			break
  6543  		}
  6544  	}
  6545  
  6546  	return p.Err()
  6547  }
  6548  
  6549  const opSearchNetworkProfiles = "SearchNetworkProfiles"
  6550  
  6551  // SearchNetworkProfilesRequest generates a "aws/request.Request" representing the
  6552  // client's request for the SearchNetworkProfiles operation. The "output" return
  6553  // value will be populated with the request's response once the request completes
  6554  // successfully.
  6555  //
  6556  // Use "Send" method on the returned Request to send the API call to the service.
  6557  // the "output" return value is not valid until after Send returns without error.
  6558  //
  6559  // See SearchNetworkProfiles for more information on using the SearchNetworkProfiles
  6560  // API call, and error handling.
  6561  //
  6562  // This method is useful when you want to inject custom logic or configuration
  6563  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6564  //
  6565  //
  6566  //    // Example sending a request using the SearchNetworkProfilesRequest method.
  6567  //    req, resp := client.SearchNetworkProfilesRequest(params)
  6568  //
  6569  //    err := req.Send()
  6570  //    if err == nil { // resp is now filled
  6571  //        fmt.Println(resp)
  6572  //    }
  6573  //
  6574  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchNetworkProfiles
  6575  func (c *AlexaForBusiness) SearchNetworkProfilesRequest(input *SearchNetworkProfilesInput) (req *request.Request, output *SearchNetworkProfilesOutput) {
  6576  	op := &request.Operation{
  6577  		Name:       opSearchNetworkProfiles,
  6578  		HTTPMethod: "POST",
  6579  		HTTPPath:   "/",
  6580  		Paginator: &request.Paginator{
  6581  			InputTokens:     []string{"NextToken"},
  6582  			OutputTokens:    []string{"NextToken"},
  6583  			LimitToken:      "MaxResults",
  6584  			TruncationToken: "",
  6585  		},
  6586  	}
  6587  
  6588  	if input == nil {
  6589  		input = &SearchNetworkProfilesInput{}
  6590  	}
  6591  
  6592  	output = &SearchNetworkProfilesOutput{}
  6593  	req = c.newRequest(op, input, output)
  6594  	return
  6595  }
  6596  
  6597  // SearchNetworkProfiles API operation for Alexa For Business.
  6598  //
  6599  // Searches network profiles and lists the ones that meet a set of filter and
  6600  // sort criteria.
  6601  //
  6602  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6603  // with awserr.Error's Code and Message methods to get detailed information about
  6604  // the error.
  6605  //
  6606  // See the AWS API reference guide for Alexa For Business's
  6607  // API operation SearchNetworkProfiles for usage and error information.
  6608  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchNetworkProfiles
  6609  func (c *AlexaForBusiness) SearchNetworkProfiles(input *SearchNetworkProfilesInput) (*SearchNetworkProfilesOutput, error) {
  6610  	req, out := c.SearchNetworkProfilesRequest(input)
  6611  	return out, req.Send()
  6612  }
  6613  
  6614  // SearchNetworkProfilesWithContext is the same as SearchNetworkProfiles with the addition of
  6615  // the ability to pass a context and additional request options.
  6616  //
  6617  // See SearchNetworkProfiles for details on how to use this API operation.
  6618  //
  6619  // The context must be non-nil and will be used for request cancellation. If
  6620  // the context is nil a panic will occur. In the future the SDK may create
  6621  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6622  // for more information on using Contexts.
  6623  func (c *AlexaForBusiness) SearchNetworkProfilesWithContext(ctx aws.Context, input *SearchNetworkProfilesInput, opts ...request.Option) (*SearchNetworkProfilesOutput, error) {
  6624  	req, out := c.SearchNetworkProfilesRequest(input)
  6625  	req.SetContext(ctx)
  6626  	req.ApplyOptions(opts...)
  6627  	return out, req.Send()
  6628  }
  6629  
  6630  // SearchNetworkProfilesPages iterates over the pages of a SearchNetworkProfiles operation,
  6631  // calling the "fn" function with the response data for each page. To stop
  6632  // iterating, return false from the fn function.
  6633  //
  6634  // See SearchNetworkProfiles method for more information on how to use this operation.
  6635  //
  6636  // Note: This operation can generate multiple requests to a service.
  6637  //
  6638  //    // Example iterating over at most 3 pages of a SearchNetworkProfiles operation.
  6639  //    pageNum := 0
  6640  //    err := client.SearchNetworkProfilesPages(params,
  6641  //        func(page *alexaforbusiness.SearchNetworkProfilesOutput, lastPage bool) bool {
  6642  //            pageNum++
  6643  //            fmt.Println(page)
  6644  //            return pageNum <= 3
  6645  //        })
  6646  //
  6647  func (c *AlexaForBusiness) SearchNetworkProfilesPages(input *SearchNetworkProfilesInput, fn func(*SearchNetworkProfilesOutput, bool) bool) error {
  6648  	return c.SearchNetworkProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  6649  }
  6650  
  6651  // SearchNetworkProfilesPagesWithContext same as SearchNetworkProfilesPages except
  6652  // it takes a Context and allows setting request options on the pages.
  6653  //
  6654  // The context must be non-nil and will be used for request cancellation. If
  6655  // the context is nil a panic will occur. In the future the SDK may create
  6656  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6657  // for more information on using Contexts.
  6658  func (c *AlexaForBusiness) SearchNetworkProfilesPagesWithContext(ctx aws.Context, input *SearchNetworkProfilesInput, fn func(*SearchNetworkProfilesOutput, bool) bool, opts ...request.Option) error {
  6659  	p := request.Pagination{
  6660  		NewRequest: func() (*request.Request, error) {
  6661  			var inCpy *SearchNetworkProfilesInput
  6662  			if input != nil {
  6663  				tmp := *input
  6664  				inCpy = &tmp
  6665  			}
  6666  			req, _ := c.SearchNetworkProfilesRequest(inCpy)
  6667  			req.SetContext(ctx)
  6668  			req.ApplyOptions(opts...)
  6669  			return req, nil
  6670  		},
  6671  	}
  6672  
  6673  	for p.Next() {
  6674  		if !fn(p.Page().(*SearchNetworkProfilesOutput), !p.HasNextPage()) {
  6675  			break
  6676  		}
  6677  	}
  6678  
  6679  	return p.Err()
  6680  }
  6681  
  6682  const opSearchProfiles = "SearchProfiles"
  6683  
  6684  // SearchProfilesRequest generates a "aws/request.Request" representing the
  6685  // client's request for the SearchProfiles operation. The "output" return
  6686  // value will be populated with the request's response once the request completes
  6687  // successfully.
  6688  //
  6689  // Use "Send" method on the returned Request to send the API call to the service.
  6690  // the "output" return value is not valid until after Send returns without error.
  6691  //
  6692  // See SearchProfiles for more information on using the SearchProfiles
  6693  // API call, and error handling.
  6694  //
  6695  // This method is useful when you want to inject custom logic or configuration
  6696  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6697  //
  6698  //
  6699  //    // Example sending a request using the SearchProfilesRequest method.
  6700  //    req, resp := client.SearchProfilesRequest(params)
  6701  //
  6702  //    err := req.Send()
  6703  //    if err == nil { // resp is now filled
  6704  //        fmt.Println(resp)
  6705  //    }
  6706  //
  6707  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchProfiles
  6708  func (c *AlexaForBusiness) SearchProfilesRequest(input *SearchProfilesInput) (req *request.Request, output *SearchProfilesOutput) {
  6709  	op := &request.Operation{
  6710  		Name:       opSearchProfiles,
  6711  		HTTPMethod: "POST",
  6712  		HTTPPath:   "/",
  6713  		Paginator: &request.Paginator{
  6714  			InputTokens:     []string{"NextToken"},
  6715  			OutputTokens:    []string{"NextToken"},
  6716  			LimitToken:      "MaxResults",
  6717  			TruncationToken: "",
  6718  		},
  6719  	}
  6720  
  6721  	if input == nil {
  6722  		input = &SearchProfilesInput{}
  6723  	}
  6724  
  6725  	output = &SearchProfilesOutput{}
  6726  	req = c.newRequest(op, input, output)
  6727  	return
  6728  }
  6729  
  6730  // SearchProfiles API operation for Alexa For Business.
  6731  //
  6732  // Searches room profiles and lists the ones that meet a set of filter criteria.
  6733  //
  6734  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6735  // with awserr.Error's Code and Message methods to get detailed information about
  6736  // the error.
  6737  //
  6738  // See the AWS API reference guide for Alexa For Business's
  6739  // API operation SearchProfiles for usage and error information.
  6740  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchProfiles
  6741  func (c *AlexaForBusiness) SearchProfiles(input *SearchProfilesInput) (*SearchProfilesOutput, error) {
  6742  	req, out := c.SearchProfilesRequest(input)
  6743  	return out, req.Send()
  6744  }
  6745  
  6746  // SearchProfilesWithContext is the same as SearchProfiles with the addition of
  6747  // the ability to pass a context and additional request options.
  6748  //
  6749  // See SearchProfiles for details on how to use this API operation.
  6750  //
  6751  // The context must be non-nil and will be used for request cancellation. If
  6752  // the context is nil a panic will occur. In the future the SDK may create
  6753  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6754  // for more information on using Contexts.
  6755  func (c *AlexaForBusiness) SearchProfilesWithContext(ctx aws.Context, input *SearchProfilesInput, opts ...request.Option) (*SearchProfilesOutput, error) {
  6756  	req, out := c.SearchProfilesRequest(input)
  6757  	req.SetContext(ctx)
  6758  	req.ApplyOptions(opts...)
  6759  	return out, req.Send()
  6760  }
  6761  
  6762  // SearchProfilesPages iterates over the pages of a SearchProfiles operation,
  6763  // calling the "fn" function with the response data for each page. To stop
  6764  // iterating, return false from the fn function.
  6765  //
  6766  // See SearchProfiles method for more information on how to use this operation.
  6767  //
  6768  // Note: This operation can generate multiple requests to a service.
  6769  //
  6770  //    // Example iterating over at most 3 pages of a SearchProfiles operation.
  6771  //    pageNum := 0
  6772  //    err := client.SearchProfilesPages(params,
  6773  //        func(page *alexaforbusiness.SearchProfilesOutput, lastPage bool) bool {
  6774  //            pageNum++
  6775  //            fmt.Println(page)
  6776  //            return pageNum <= 3
  6777  //        })
  6778  //
  6779  func (c *AlexaForBusiness) SearchProfilesPages(input *SearchProfilesInput, fn func(*SearchProfilesOutput, bool) bool) error {
  6780  	return c.SearchProfilesPagesWithContext(aws.BackgroundContext(), input, fn)
  6781  }
  6782  
  6783  // SearchProfilesPagesWithContext same as SearchProfilesPages except
  6784  // it takes a Context and allows setting request options on the pages.
  6785  //
  6786  // The context must be non-nil and will be used for request cancellation. If
  6787  // the context is nil a panic will occur. In the future the SDK may create
  6788  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6789  // for more information on using Contexts.
  6790  func (c *AlexaForBusiness) SearchProfilesPagesWithContext(ctx aws.Context, input *SearchProfilesInput, fn func(*SearchProfilesOutput, bool) bool, opts ...request.Option) error {
  6791  	p := request.Pagination{
  6792  		NewRequest: func() (*request.Request, error) {
  6793  			var inCpy *SearchProfilesInput
  6794  			if input != nil {
  6795  				tmp := *input
  6796  				inCpy = &tmp
  6797  			}
  6798  			req, _ := c.SearchProfilesRequest(inCpy)
  6799  			req.SetContext(ctx)
  6800  			req.ApplyOptions(opts...)
  6801  			return req, nil
  6802  		},
  6803  	}
  6804  
  6805  	for p.Next() {
  6806  		if !fn(p.Page().(*SearchProfilesOutput), !p.HasNextPage()) {
  6807  			break
  6808  		}
  6809  	}
  6810  
  6811  	return p.Err()
  6812  }
  6813  
  6814  const opSearchRooms = "SearchRooms"
  6815  
  6816  // SearchRoomsRequest generates a "aws/request.Request" representing the
  6817  // client's request for the SearchRooms operation. The "output" return
  6818  // value will be populated with the request's response once the request completes
  6819  // successfully.
  6820  //
  6821  // Use "Send" method on the returned Request to send the API call to the service.
  6822  // the "output" return value is not valid until after Send returns without error.
  6823  //
  6824  // See SearchRooms for more information on using the SearchRooms
  6825  // API call, and error handling.
  6826  //
  6827  // This method is useful when you want to inject custom logic or configuration
  6828  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6829  //
  6830  //
  6831  //    // Example sending a request using the SearchRoomsRequest method.
  6832  //    req, resp := client.SearchRoomsRequest(params)
  6833  //
  6834  //    err := req.Send()
  6835  //    if err == nil { // resp is now filled
  6836  //        fmt.Println(resp)
  6837  //    }
  6838  //
  6839  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchRooms
  6840  func (c *AlexaForBusiness) SearchRoomsRequest(input *SearchRoomsInput) (req *request.Request, output *SearchRoomsOutput) {
  6841  	op := &request.Operation{
  6842  		Name:       opSearchRooms,
  6843  		HTTPMethod: "POST",
  6844  		HTTPPath:   "/",
  6845  		Paginator: &request.Paginator{
  6846  			InputTokens:     []string{"NextToken"},
  6847  			OutputTokens:    []string{"NextToken"},
  6848  			LimitToken:      "MaxResults",
  6849  			TruncationToken: "",
  6850  		},
  6851  	}
  6852  
  6853  	if input == nil {
  6854  		input = &SearchRoomsInput{}
  6855  	}
  6856  
  6857  	output = &SearchRoomsOutput{}
  6858  	req = c.newRequest(op, input, output)
  6859  	return
  6860  }
  6861  
  6862  // SearchRooms API operation for Alexa For Business.
  6863  //
  6864  // Searches rooms and lists the ones that meet a set of filter and sort criteria.
  6865  //
  6866  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  6867  // with awserr.Error's Code and Message methods to get detailed information about
  6868  // the error.
  6869  //
  6870  // See the AWS API reference guide for Alexa For Business's
  6871  // API operation SearchRooms for usage and error information.
  6872  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchRooms
  6873  func (c *AlexaForBusiness) SearchRooms(input *SearchRoomsInput) (*SearchRoomsOutput, error) {
  6874  	req, out := c.SearchRoomsRequest(input)
  6875  	return out, req.Send()
  6876  }
  6877  
  6878  // SearchRoomsWithContext is the same as SearchRooms with the addition of
  6879  // the ability to pass a context and additional request options.
  6880  //
  6881  // See SearchRooms for details on how to use this API operation.
  6882  //
  6883  // The context must be non-nil and will be used for request cancellation. If
  6884  // the context is nil a panic will occur. In the future the SDK may create
  6885  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6886  // for more information on using Contexts.
  6887  func (c *AlexaForBusiness) SearchRoomsWithContext(ctx aws.Context, input *SearchRoomsInput, opts ...request.Option) (*SearchRoomsOutput, error) {
  6888  	req, out := c.SearchRoomsRequest(input)
  6889  	req.SetContext(ctx)
  6890  	req.ApplyOptions(opts...)
  6891  	return out, req.Send()
  6892  }
  6893  
  6894  // SearchRoomsPages iterates over the pages of a SearchRooms operation,
  6895  // calling the "fn" function with the response data for each page. To stop
  6896  // iterating, return false from the fn function.
  6897  //
  6898  // See SearchRooms method for more information on how to use this operation.
  6899  //
  6900  // Note: This operation can generate multiple requests to a service.
  6901  //
  6902  //    // Example iterating over at most 3 pages of a SearchRooms operation.
  6903  //    pageNum := 0
  6904  //    err := client.SearchRoomsPages(params,
  6905  //        func(page *alexaforbusiness.SearchRoomsOutput, lastPage bool) bool {
  6906  //            pageNum++
  6907  //            fmt.Println(page)
  6908  //            return pageNum <= 3
  6909  //        })
  6910  //
  6911  func (c *AlexaForBusiness) SearchRoomsPages(input *SearchRoomsInput, fn func(*SearchRoomsOutput, bool) bool) error {
  6912  	return c.SearchRoomsPagesWithContext(aws.BackgroundContext(), input, fn)
  6913  }
  6914  
  6915  // SearchRoomsPagesWithContext same as SearchRoomsPages except
  6916  // it takes a Context and allows setting request options on the pages.
  6917  //
  6918  // The context must be non-nil and will be used for request cancellation. If
  6919  // the context is nil a panic will occur. In the future the SDK may create
  6920  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  6921  // for more information on using Contexts.
  6922  func (c *AlexaForBusiness) SearchRoomsPagesWithContext(ctx aws.Context, input *SearchRoomsInput, fn func(*SearchRoomsOutput, bool) bool, opts ...request.Option) error {
  6923  	p := request.Pagination{
  6924  		NewRequest: func() (*request.Request, error) {
  6925  			var inCpy *SearchRoomsInput
  6926  			if input != nil {
  6927  				tmp := *input
  6928  				inCpy = &tmp
  6929  			}
  6930  			req, _ := c.SearchRoomsRequest(inCpy)
  6931  			req.SetContext(ctx)
  6932  			req.ApplyOptions(opts...)
  6933  			return req, nil
  6934  		},
  6935  	}
  6936  
  6937  	for p.Next() {
  6938  		if !fn(p.Page().(*SearchRoomsOutput), !p.HasNextPage()) {
  6939  			break
  6940  		}
  6941  	}
  6942  
  6943  	return p.Err()
  6944  }
  6945  
  6946  const opSearchSkillGroups = "SearchSkillGroups"
  6947  
  6948  // SearchSkillGroupsRequest generates a "aws/request.Request" representing the
  6949  // client's request for the SearchSkillGroups operation. The "output" return
  6950  // value will be populated with the request's response once the request completes
  6951  // successfully.
  6952  //
  6953  // Use "Send" method on the returned Request to send the API call to the service.
  6954  // the "output" return value is not valid until after Send returns without error.
  6955  //
  6956  // See SearchSkillGroups for more information on using the SearchSkillGroups
  6957  // API call, and error handling.
  6958  //
  6959  // This method is useful when you want to inject custom logic or configuration
  6960  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  6961  //
  6962  //
  6963  //    // Example sending a request using the SearchSkillGroupsRequest method.
  6964  //    req, resp := client.SearchSkillGroupsRequest(params)
  6965  //
  6966  //    err := req.Send()
  6967  //    if err == nil { // resp is now filled
  6968  //        fmt.Println(resp)
  6969  //    }
  6970  //
  6971  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchSkillGroups
  6972  func (c *AlexaForBusiness) SearchSkillGroupsRequest(input *SearchSkillGroupsInput) (req *request.Request, output *SearchSkillGroupsOutput) {
  6973  	op := &request.Operation{
  6974  		Name:       opSearchSkillGroups,
  6975  		HTTPMethod: "POST",
  6976  		HTTPPath:   "/",
  6977  		Paginator: &request.Paginator{
  6978  			InputTokens:     []string{"NextToken"},
  6979  			OutputTokens:    []string{"NextToken"},
  6980  			LimitToken:      "MaxResults",
  6981  			TruncationToken: "",
  6982  		},
  6983  	}
  6984  
  6985  	if input == nil {
  6986  		input = &SearchSkillGroupsInput{}
  6987  	}
  6988  
  6989  	output = &SearchSkillGroupsOutput{}
  6990  	req = c.newRequest(op, input, output)
  6991  	return
  6992  }
  6993  
  6994  // SearchSkillGroups API operation for Alexa For Business.
  6995  //
  6996  // Searches skill groups and lists the ones that meet a set of filter and sort
  6997  // criteria.
  6998  //
  6999  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7000  // with awserr.Error's Code and Message methods to get detailed information about
  7001  // the error.
  7002  //
  7003  // See the AWS API reference guide for Alexa For Business's
  7004  // API operation SearchSkillGroups for usage and error information.
  7005  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchSkillGroups
  7006  func (c *AlexaForBusiness) SearchSkillGroups(input *SearchSkillGroupsInput) (*SearchSkillGroupsOutput, error) {
  7007  	req, out := c.SearchSkillGroupsRequest(input)
  7008  	return out, req.Send()
  7009  }
  7010  
  7011  // SearchSkillGroupsWithContext is the same as SearchSkillGroups with the addition of
  7012  // the ability to pass a context and additional request options.
  7013  //
  7014  // See SearchSkillGroups for details on how to use this API operation.
  7015  //
  7016  // The context must be non-nil and will be used for request cancellation. If
  7017  // the context is nil a panic will occur. In the future the SDK may create
  7018  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7019  // for more information on using Contexts.
  7020  func (c *AlexaForBusiness) SearchSkillGroupsWithContext(ctx aws.Context, input *SearchSkillGroupsInput, opts ...request.Option) (*SearchSkillGroupsOutput, error) {
  7021  	req, out := c.SearchSkillGroupsRequest(input)
  7022  	req.SetContext(ctx)
  7023  	req.ApplyOptions(opts...)
  7024  	return out, req.Send()
  7025  }
  7026  
  7027  // SearchSkillGroupsPages iterates over the pages of a SearchSkillGroups operation,
  7028  // calling the "fn" function with the response data for each page. To stop
  7029  // iterating, return false from the fn function.
  7030  //
  7031  // See SearchSkillGroups method for more information on how to use this operation.
  7032  //
  7033  // Note: This operation can generate multiple requests to a service.
  7034  //
  7035  //    // Example iterating over at most 3 pages of a SearchSkillGroups operation.
  7036  //    pageNum := 0
  7037  //    err := client.SearchSkillGroupsPages(params,
  7038  //        func(page *alexaforbusiness.SearchSkillGroupsOutput, lastPage bool) bool {
  7039  //            pageNum++
  7040  //            fmt.Println(page)
  7041  //            return pageNum <= 3
  7042  //        })
  7043  //
  7044  func (c *AlexaForBusiness) SearchSkillGroupsPages(input *SearchSkillGroupsInput, fn func(*SearchSkillGroupsOutput, bool) bool) error {
  7045  	return c.SearchSkillGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
  7046  }
  7047  
  7048  // SearchSkillGroupsPagesWithContext same as SearchSkillGroupsPages except
  7049  // it takes a Context and allows setting request options on the pages.
  7050  //
  7051  // The context must be non-nil and will be used for request cancellation. If
  7052  // the context is nil a panic will occur. In the future the SDK may create
  7053  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7054  // for more information on using Contexts.
  7055  func (c *AlexaForBusiness) SearchSkillGroupsPagesWithContext(ctx aws.Context, input *SearchSkillGroupsInput, fn func(*SearchSkillGroupsOutput, bool) bool, opts ...request.Option) error {
  7056  	p := request.Pagination{
  7057  		NewRequest: func() (*request.Request, error) {
  7058  			var inCpy *SearchSkillGroupsInput
  7059  			if input != nil {
  7060  				tmp := *input
  7061  				inCpy = &tmp
  7062  			}
  7063  			req, _ := c.SearchSkillGroupsRequest(inCpy)
  7064  			req.SetContext(ctx)
  7065  			req.ApplyOptions(opts...)
  7066  			return req, nil
  7067  		},
  7068  	}
  7069  
  7070  	for p.Next() {
  7071  		if !fn(p.Page().(*SearchSkillGroupsOutput), !p.HasNextPage()) {
  7072  			break
  7073  		}
  7074  	}
  7075  
  7076  	return p.Err()
  7077  }
  7078  
  7079  const opSearchUsers = "SearchUsers"
  7080  
  7081  // SearchUsersRequest generates a "aws/request.Request" representing the
  7082  // client's request for the SearchUsers operation. The "output" return
  7083  // value will be populated with the request's response once the request completes
  7084  // successfully.
  7085  //
  7086  // Use "Send" method on the returned Request to send the API call to the service.
  7087  // the "output" return value is not valid until after Send returns without error.
  7088  //
  7089  // See SearchUsers for more information on using the SearchUsers
  7090  // API call, and error handling.
  7091  //
  7092  // This method is useful when you want to inject custom logic or configuration
  7093  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7094  //
  7095  //
  7096  //    // Example sending a request using the SearchUsersRequest method.
  7097  //    req, resp := client.SearchUsersRequest(params)
  7098  //
  7099  //    err := req.Send()
  7100  //    if err == nil { // resp is now filled
  7101  //        fmt.Println(resp)
  7102  //    }
  7103  //
  7104  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchUsers
  7105  func (c *AlexaForBusiness) SearchUsersRequest(input *SearchUsersInput) (req *request.Request, output *SearchUsersOutput) {
  7106  	op := &request.Operation{
  7107  		Name:       opSearchUsers,
  7108  		HTTPMethod: "POST",
  7109  		HTTPPath:   "/",
  7110  		Paginator: &request.Paginator{
  7111  			InputTokens:     []string{"NextToken"},
  7112  			OutputTokens:    []string{"NextToken"},
  7113  			LimitToken:      "MaxResults",
  7114  			TruncationToken: "",
  7115  		},
  7116  	}
  7117  
  7118  	if input == nil {
  7119  		input = &SearchUsersInput{}
  7120  	}
  7121  
  7122  	output = &SearchUsersOutput{}
  7123  	req = c.newRequest(op, input, output)
  7124  	return
  7125  }
  7126  
  7127  // SearchUsers API operation for Alexa For Business.
  7128  //
  7129  // Searches users and lists the ones that meet a set of filter and sort criteria.
  7130  //
  7131  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7132  // with awserr.Error's Code and Message methods to get detailed information about
  7133  // the error.
  7134  //
  7135  // See the AWS API reference guide for Alexa For Business's
  7136  // API operation SearchUsers for usage and error information.
  7137  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SearchUsers
  7138  func (c *AlexaForBusiness) SearchUsers(input *SearchUsersInput) (*SearchUsersOutput, error) {
  7139  	req, out := c.SearchUsersRequest(input)
  7140  	return out, req.Send()
  7141  }
  7142  
  7143  // SearchUsersWithContext is the same as SearchUsers with the addition of
  7144  // the ability to pass a context and additional request options.
  7145  //
  7146  // See SearchUsers for details on how to use this API operation.
  7147  //
  7148  // The context must be non-nil and will be used for request cancellation. If
  7149  // the context is nil a panic will occur. In the future the SDK may create
  7150  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7151  // for more information on using Contexts.
  7152  func (c *AlexaForBusiness) SearchUsersWithContext(ctx aws.Context, input *SearchUsersInput, opts ...request.Option) (*SearchUsersOutput, error) {
  7153  	req, out := c.SearchUsersRequest(input)
  7154  	req.SetContext(ctx)
  7155  	req.ApplyOptions(opts...)
  7156  	return out, req.Send()
  7157  }
  7158  
  7159  // SearchUsersPages iterates over the pages of a SearchUsers operation,
  7160  // calling the "fn" function with the response data for each page. To stop
  7161  // iterating, return false from the fn function.
  7162  //
  7163  // See SearchUsers method for more information on how to use this operation.
  7164  //
  7165  // Note: This operation can generate multiple requests to a service.
  7166  //
  7167  //    // Example iterating over at most 3 pages of a SearchUsers operation.
  7168  //    pageNum := 0
  7169  //    err := client.SearchUsersPages(params,
  7170  //        func(page *alexaforbusiness.SearchUsersOutput, lastPage bool) bool {
  7171  //            pageNum++
  7172  //            fmt.Println(page)
  7173  //            return pageNum <= 3
  7174  //        })
  7175  //
  7176  func (c *AlexaForBusiness) SearchUsersPages(input *SearchUsersInput, fn func(*SearchUsersOutput, bool) bool) error {
  7177  	return c.SearchUsersPagesWithContext(aws.BackgroundContext(), input, fn)
  7178  }
  7179  
  7180  // SearchUsersPagesWithContext same as SearchUsersPages except
  7181  // it takes a Context and allows setting request options on the pages.
  7182  //
  7183  // The context must be non-nil and will be used for request cancellation. If
  7184  // the context is nil a panic will occur. In the future the SDK may create
  7185  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7186  // for more information on using Contexts.
  7187  func (c *AlexaForBusiness) SearchUsersPagesWithContext(ctx aws.Context, input *SearchUsersInput, fn func(*SearchUsersOutput, bool) bool, opts ...request.Option) error {
  7188  	p := request.Pagination{
  7189  		NewRequest: func() (*request.Request, error) {
  7190  			var inCpy *SearchUsersInput
  7191  			if input != nil {
  7192  				tmp := *input
  7193  				inCpy = &tmp
  7194  			}
  7195  			req, _ := c.SearchUsersRequest(inCpy)
  7196  			req.SetContext(ctx)
  7197  			req.ApplyOptions(opts...)
  7198  			return req, nil
  7199  		},
  7200  	}
  7201  
  7202  	for p.Next() {
  7203  		if !fn(p.Page().(*SearchUsersOutput), !p.HasNextPage()) {
  7204  			break
  7205  		}
  7206  	}
  7207  
  7208  	return p.Err()
  7209  }
  7210  
  7211  const opSendAnnouncement = "SendAnnouncement"
  7212  
  7213  // SendAnnouncementRequest generates a "aws/request.Request" representing the
  7214  // client's request for the SendAnnouncement operation. The "output" return
  7215  // value will be populated with the request's response once the request completes
  7216  // successfully.
  7217  //
  7218  // Use "Send" method on the returned Request to send the API call to the service.
  7219  // the "output" return value is not valid until after Send returns without error.
  7220  //
  7221  // See SendAnnouncement for more information on using the SendAnnouncement
  7222  // API call, and error handling.
  7223  //
  7224  // This method is useful when you want to inject custom logic or configuration
  7225  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7226  //
  7227  //
  7228  //    // Example sending a request using the SendAnnouncementRequest method.
  7229  //    req, resp := client.SendAnnouncementRequest(params)
  7230  //
  7231  //    err := req.Send()
  7232  //    if err == nil { // resp is now filled
  7233  //        fmt.Println(resp)
  7234  //    }
  7235  //
  7236  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SendAnnouncement
  7237  func (c *AlexaForBusiness) SendAnnouncementRequest(input *SendAnnouncementInput) (req *request.Request, output *SendAnnouncementOutput) {
  7238  	op := &request.Operation{
  7239  		Name:       opSendAnnouncement,
  7240  		HTTPMethod: "POST",
  7241  		HTTPPath:   "/",
  7242  	}
  7243  
  7244  	if input == nil {
  7245  		input = &SendAnnouncementInput{}
  7246  	}
  7247  
  7248  	output = &SendAnnouncementOutput{}
  7249  	req = c.newRequest(op, input, output)
  7250  	return
  7251  }
  7252  
  7253  // SendAnnouncement API operation for Alexa For Business.
  7254  //
  7255  // Triggers an asynchronous flow to send text, SSML, or audio announcements
  7256  // to rooms that are identified by a search or filter.
  7257  //
  7258  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7259  // with awserr.Error's Code and Message methods to get detailed information about
  7260  // the error.
  7261  //
  7262  // See the AWS API reference guide for Alexa For Business's
  7263  // API operation SendAnnouncement for usage and error information.
  7264  //
  7265  // Returned Error Types:
  7266  //   * LimitExceededException
  7267  //   You are performing an action that would put you beyond your account's limits.
  7268  //
  7269  //   * AlreadyExistsException
  7270  //   The resource being created already exists.
  7271  //
  7272  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SendAnnouncement
  7273  func (c *AlexaForBusiness) SendAnnouncement(input *SendAnnouncementInput) (*SendAnnouncementOutput, error) {
  7274  	req, out := c.SendAnnouncementRequest(input)
  7275  	return out, req.Send()
  7276  }
  7277  
  7278  // SendAnnouncementWithContext is the same as SendAnnouncement with the addition of
  7279  // the ability to pass a context and additional request options.
  7280  //
  7281  // See SendAnnouncement for details on how to use this API operation.
  7282  //
  7283  // The context must be non-nil and will be used for request cancellation. If
  7284  // the context is nil a panic will occur. In the future the SDK may create
  7285  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7286  // for more information on using Contexts.
  7287  func (c *AlexaForBusiness) SendAnnouncementWithContext(ctx aws.Context, input *SendAnnouncementInput, opts ...request.Option) (*SendAnnouncementOutput, error) {
  7288  	req, out := c.SendAnnouncementRequest(input)
  7289  	req.SetContext(ctx)
  7290  	req.ApplyOptions(opts...)
  7291  	return out, req.Send()
  7292  }
  7293  
  7294  const opSendInvitation = "SendInvitation"
  7295  
  7296  // SendInvitationRequest generates a "aws/request.Request" representing the
  7297  // client's request for the SendInvitation operation. The "output" return
  7298  // value will be populated with the request's response once the request completes
  7299  // successfully.
  7300  //
  7301  // Use "Send" method on the returned Request to send the API call to the service.
  7302  // the "output" return value is not valid until after Send returns without error.
  7303  //
  7304  // See SendInvitation for more information on using the SendInvitation
  7305  // API call, and error handling.
  7306  //
  7307  // This method is useful when you want to inject custom logic or configuration
  7308  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7309  //
  7310  //
  7311  //    // Example sending a request using the SendInvitationRequest method.
  7312  //    req, resp := client.SendInvitationRequest(params)
  7313  //
  7314  //    err := req.Send()
  7315  //    if err == nil { // resp is now filled
  7316  //        fmt.Println(resp)
  7317  //    }
  7318  //
  7319  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SendInvitation
  7320  func (c *AlexaForBusiness) SendInvitationRequest(input *SendInvitationInput) (req *request.Request, output *SendInvitationOutput) {
  7321  	op := &request.Operation{
  7322  		Name:       opSendInvitation,
  7323  		HTTPMethod: "POST",
  7324  		HTTPPath:   "/",
  7325  	}
  7326  
  7327  	if input == nil {
  7328  		input = &SendInvitationInput{}
  7329  	}
  7330  
  7331  	output = &SendInvitationOutput{}
  7332  	req = c.newRequest(op, input, output)
  7333  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7334  	return
  7335  }
  7336  
  7337  // SendInvitation API operation for Alexa For Business.
  7338  //
  7339  // Sends an enrollment invitation email with a URL to a user. The URL is valid
  7340  // for 30 days or until you call this operation again, whichever comes first.
  7341  //
  7342  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7343  // with awserr.Error's Code and Message methods to get detailed information about
  7344  // the error.
  7345  //
  7346  // See the AWS API reference guide for Alexa For Business's
  7347  // API operation SendInvitation for usage and error information.
  7348  //
  7349  // Returned Error Types:
  7350  //   * NotFoundException
  7351  //   The resource is not found.
  7352  //
  7353  //   * InvalidUserStatusException
  7354  //   The attempt to update a user is invalid due to the user's current status.
  7355  //
  7356  //   * ConcurrentModificationException
  7357  //   There is a concurrent modification of resources.
  7358  //
  7359  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/SendInvitation
  7360  func (c *AlexaForBusiness) SendInvitation(input *SendInvitationInput) (*SendInvitationOutput, error) {
  7361  	req, out := c.SendInvitationRequest(input)
  7362  	return out, req.Send()
  7363  }
  7364  
  7365  // SendInvitationWithContext is the same as SendInvitation with the addition of
  7366  // the ability to pass a context and additional request options.
  7367  //
  7368  // See SendInvitation for details on how to use this API operation.
  7369  //
  7370  // The context must be non-nil and will be used for request cancellation. If
  7371  // the context is nil a panic will occur. In the future the SDK may create
  7372  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7373  // for more information on using Contexts.
  7374  func (c *AlexaForBusiness) SendInvitationWithContext(ctx aws.Context, input *SendInvitationInput, opts ...request.Option) (*SendInvitationOutput, error) {
  7375  	req, out := c.SendInvitationRequest(input)
  7376  	req.SetContext(ctx)
  7377  	req.ApplyOptions(opts...)
  7378  	return out, req.Send()
  7379  }
  7380  
  7381  const opStartDeviceSync = "StartDeviceSync"
  7382  
  7383  // StartDeviceSyncRequest generates a "aws/request.Request" representing the
  7384  // client's request for the StartDeviceSync operation. The "output" return
  7385  // value will be populated with the request's response once the request completes
  7386  // successfully.
  7387  //
  7388  // Use "Send" method on the returned Request to send the API call to the service.
  7389  // the "output" return value is not valid until after Send returns without error.
  7390  //
  7391  // See StartDeviceSync for more information on using the StartDeviceSync
  7392  // API call, and error handling.
  7393  //
  7394  // This method is useful when you want to inject custom logic or configuration
  7395  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7396  //
  7397  //
  7398  //    // Example sending a request using the StartDeviceSyncRequest method.
  7399  //    req, resp := client.StartDeviceSyncRequest(params)
  7400  //
  7401  //    err := req.Send()
  7402  //    if err == nil { // resp is now filled
  7403  //        fmt.Println(resp)
  7404  //    }
  7405  //
  7406  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/StartDeviceSync
  7407  func (c *AlexaForBusiness) StartDeviceSyncRequest(input *StartDeviceSyncInput) (req *request.Request, output *StartDeviceSyncOutput) {
  7408  	op := &request.Operation{
  7409  		Name:       opStartDeviceSync,
  7410  		HTTPMethod: "POST",
  7411  		HTTPPath:   "/",
  7412  	}
  7413  
  7414  	if input == nil {
  7415  		input = &StartDeviceSyncInput{}
  7416  	}
  7417  
  7418  	output = &StartDeviceSyncOutput{}
  7419  	req = c.newRequest(op, input, output)
  7420  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7421  	return
  7422  }
  7423  
  7424  // StartDeviceSync API operation for Alexa For Business.
  7425  //
  7426  // Resets a device and its account to the known default settings. This clears
  7427  // all information and settings set by previous users in the following ways:
  7428  //
  7429  //    * Bluetooth - This unpairs all bluetooth devices paired with your echo
  7430  //    device.
  7431  //
  7432  //    * Volume - This resets the echo device's volume to the default value.
  7433  //
  7434  //    * Notifications - This clears all notifications from your echo device.
  7435  //
  7436  //    * Lists - This clears all to-do items from your echo device.
  7437  //
  7438  //    * Settings - This internally syncs the room's profile (if the device is
  7439  //    assigned to a room), contacts, address books, delegation access for account
  7440  //    linking, and communications (if enabled on the room profile).
  7441  //
  7442  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7443  // with awserr.Error's Code and Message methods to get detailed information about
  7444  // the error.
  7445  //
  7446  // See the AWS API reference guide for Alexa For Business's
  7447  // API operation StartDeviceSync for usage and error information.
  7448  //
  7449  // Returned Error Types:
  7450  //   * DeviceNotRegisteredException
  7451  //   The request failed because this device is no longer registered and therefore
  7452  //   no longer managed by this account.
  7453  //
  7454  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/StartDeviceSync
  7455  func (c *AlexaForBusiness) StartDeviceSync(input *StartDeviceSyncInput) (*StartDeviceSyncOutput, error) {
  7456  	req, out := c.StartDeviceSyncRequest(input)
  7457  	return out, req.Send()
  7458  }
  7459  
  7460  // StartDeviceSyncWithContext is the same as StartDeviceSync with the addition of
  7461  // the ability to pass a context and additional request options.
  7462  //
  7463  // See StartDeviceSync for details on how to use this API operation.
  7464  //
  7465  // The context must be non-nil and will be used for request cancellation. If
  7466  // the context is nil a panic will occur. In the future the SDK may create
  7467  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7468  // for more information on using Contexts.
  7469  func (c *AlexaForBusiness) StartDeviceSyncWithContext(ctx aws.Context, input *StartDeviceSyncInput, opts ...request.Option) (*StartDeviceSyncOutput, error) {
  7470  	req, out := c.StartDeviceSyncRequest(input)
  7471  	req.SetContext(ctx)
  7472  	req.ApplyOptions(opts...)
  7473  	return out, req.Send()
  7474  }
  7475  
  7476  const opStartSmartHomeApplianceDiscovery = "StartSmartHomeApplianceDiscovery"
  7477  
  7478  // StartSmartHomeApplianceDiscoveryRequest generates a "aws/request.Request" representing the
  7479  // client's request for the StartSmartHomeApplianceDiscovery operation. The "output" return
  7480  // value will be populated with the request's response once the request completes
  7481  // successfully.
  7482  //
  7483  // Use "Send" method on the returned Request to send the API call to the service.
  7484  // the "output" return value is not valid until after Send returns without error.
  7485  //
  7486  // See StartSmartHomeApplianceDiscovery for more information on using the StartSmartHomeApplianceDiscovery
  7487  // API call, and error handling.
  7488  //
  7489  // This method is useful when you want to inject custom logic or configuration
  7490  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7491  //
  7492  //
  7493  //    // Example sending a request using the StartSmartHomeApplianceDiscoveryRequest method.
  7494  //    req, resp := client.StartSmartHomeApplianceDiscoveryRequest(params)
  7495  //
  7496  //    err := req.Send()
  7497  //    if err == nil { // resp is now filled
  7498  //        fmt.Println(resp)
  7499  //    }
  7500  //
  7501  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/StartSmartHomeApplianceDiscovery
  7502  func (c *AlexaForBusiness) StartSmartHomeApplianceDiscoveryRequest(input *StartSmartHomeApplianceDiscoveryInput) (req *request.Request, output *StartSmartHomeApplianceDiscoveryOutput) {
  7503  	op := &request.Operation{
  7504  		Name:       opStartSmartHomeApplianceDiscovery,
  7505  		HTTPMethod: "POST",
  7506  		HTTPPath:   "/",
  7507  	}
  7508  
  7509  	if input == nil {
  7510  		input = &StartSmartHomeApplianceDiscoveryInput{}
  7511  	}
  7512  
  7513  	output = &StartSmartHomeApplianceDiscoveryOutput{}
  7514  	req = c.newRequest(op, input, output)
  7515  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7516  	return
  7517  }
  7518  
  7519  // StartSmartHomeApplianceDiscovery API operation for Alexa For Business.
  7520  //
  7521  // Initiates the discovery of any smart home appliances associated with the
  7522  // room.
  7523  //
  7524  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7525  // with awserr.Error's Code and Message methods to get detailed information about
  7526  // the error.
  7527  //
  7528  // See the AWS API reference guide for Alexa For Business's
  7529  // API operation StartSmartHomeApplianceDiscovery for usage and error information.
  7530  //
  7531  // Returned Error Types:
  7532  //   * NotFoundException
  7533  //   The resource is not found.
  7534  //
  7535  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/StartSmartHomeApplianceDiscovery
  7536  func (c *AlexaForBusiness) StartSmartHomeApplianceDiscovery(input *StartSmartHomeApplianceDiscoveryInput) (*StartSmartHomeApplianceDiscoveryOutput, error) {
  7537  	req, out := c.StartSmartHomeApplianceDiscoveryRequest(input)
  7538  	return out, req.Send()
  7539  }
  7540  
  7541  // StartSmartHomeApplianceDiscoveryWithContext is the same as StartSmartHomeApplianceDiscovery with the addition of
  7542  // the ability to pass a context and additional request options.
  7543  //
  7544  // See StartSmartHomeApplianceDiscovery for details on how to use this API operation.
  7545  //
  7546  // The context must be non-nil and will be used for request cancellation. If
  7547  // the context is nil a panic will occur. In the future the SDK may create
  7548  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7549  // for more information on using Contexts.
  7550  func (c *AlexaForBusiness) StartSmartHomeApplianceDiscoveryWithContext(ctx aws.Context, input *StartSmartHomeApplianceDiscoveryInput, opts ...request.Option) (*StartSmartHomeApplianceDiscoveryOutput, error) {
  7551  	req, out := c.StartSmartHomeApplianceDiscoveryRequest(input)
  7552  	req.SetContext(ctx)
  7553  	req.ApplyOptions(opts...)
  7554  	return out, req.Send()
  7555  }
  7556  
  7557  const opTagResource = "TagResource"
  7558  
  7559  // TagResourceRequest generates a "aws/request.Request" representing the
  7560  // client's request for the TagResource operation. The "output" return
  7561  // value will be populated with the request's response once the request completes
  7562  // successfully.
  7563  //
  7564  // Use "Send" method on the returned Request to send the API call to the service.
  7565  // the "output" return value is not valid until after Send returns without error.
  7566  //
  7567  // See TagResource for more information on using the TagResource
  7568  // API call, and error handling.
  7569  //
  7570  // This method is useful when you want to inject custom logic or configuration
  7571  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7572  //
  7573  //
  7574  //    // Example sending a request using the TagResourceRequest method.
  7575  //    req, resp := client.TagResourceRequest(params)
  7576  //
  7577  //    err := req.Send()
  7578  //    if err == nil { // resp is now filled
  7579  //        fmt.Println(resp)
  7580  //    }
  7581  //
  7582  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/TagResource
  7583  func (c *AlexaForBusiness) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
  7584  	op := &request.Operation{
  7585  		Name:       opTagResource,
  7586  		HTTPMethod: "POST",
  7587  		HTTPPath:   "/",
  7588  	}
  7589  
  7590  	if input == nil {
  7591  		input = &TagResourceInput{}
  7592  	}
  7593  
  7594  	output = &TagResourceOutput{}
  7595  	req = c.newRequest(op, input, output)
  7596  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7597  	return
  7598  }
  7599  
  7600  // TagResource API operation for Alexa For Business.
  7601  //
  7602  // Adds metadata tags to a specified resource.
  7603  //
  7604  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7605  // with awserr.Error's Code and Message methods to get detailed information about
  7606  // the error.
  7607  //
  7608  // See the AWS API reference guide for Alexa For Business's
  7609  // API operation TagResource for usage and error information.
  7610  //
  7611  // Returned Error Types:
  7612  //   * NotFoundException
  7613  //   The resource is not found.
  7614  //
  7615  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/TagResource
  7616  func (c *AlexaForBusiness) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
  7617  	req, out := c.TagResourceRequest(input)
  7618  	return out, req.Send()
  7619  }
  7620  
  7621  // TagResourceWithContext is the same as TagResource with the addition of
  7622  // the ability to pass a context and additional request options.
  7623  //
  7624  // See TagResource for details on how to use this API operation.
  7625  //
  7626  // The context must be non-nil and will be used for request cancellation. If
  7627  // the context is nil a panic will occur. In the future the SDK may create
  7628  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7629  // for more information on using Contexts.
  7630  func (c *AlexaForBusiness) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
  7631  	req, out := c.TagResourceRequest(input)
  7632  	req.SetContext(ctx)
  7633  	req.ApplyOptions(opts...)
  7634  	return out, req.Send()
  7635  }
  7636  
  7637  const opUntagResource = "UntagResource"
  7638  
  7639  // UntagResourceRequest generates a "aws/request.Request" representing the
  7640  // client's request for the UntagResource operation. The "output" return
  7641  // value will be populated with the request's response once the request completes
  7642  // successfully.
  7643  //
  7644  // Use "Send" method on the returned Request to send the API call to the service.
  7645  // the "output" return value is not valid until after Send returns without error.
  7646  //
  7647  // See UntagResource for more information on using the UntagResource
  7648  // API call, and error handling.
  7649  //
  7650  // This method is useful when you want to inject custom logic or configuration
  7651  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7652  //
  7653  //
  7654  //    // Example sending a request using the UntagResourceRequest method.
  7655  //    req, resp := client.UntagResourceRequest(params)
  7656  //
  7657  //    err := req.Send()
  7658  //    if err == nil { // resp is now filled
  7659  //        fmt.Println(resp)
  7660  //    }
  7661  //
  7662  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UntagResource
  7663  func (c *AlexaForBusiness) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
  7664  	op := &request.Operation{
  7665  		Name:       opUntagResource,
  7666  		HTTPMethod: "POST",
  7667  		HTTPPath:   "/",
  7668  	}
  7669  
  7670  	if input == nil {
  7671  		input = &UntagResourceInput{}
  7672  	}
  7673  
  7674  	output = &UntagResourceOutput{}
  7675  	req = c.newRequest(op, input, output)
  7676  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7677  	return
  7678  }
  7679  
  7680  // UntagResource API operation for Alexa For Business.
  7681  //
  7682  // Removes metadata tags from a specified resource.
  7683  //
  7684  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7685  // with awserr.Error's Code and Message methods to get detailed information about
  7686  // the error.
  7687  //
  7688  // See the AWS API reference guide for Alexa For Business's
  7689  // API operation UntagResource for usage and error information.
  7690  //
  7691  // Returned Error Types:
  7692  //   * NotFoundException
  7693  //   The resource is not found.
  7694  //
  7695  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UntagResource
  7696  func (c *AlexaForBusiness) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
  7697  	req, out := c.UntagResourceRequest(input)
  7698  	return out, req.Send()
  7699  }
  7700  
  7701  // UntagResourceWithContext is the same as UntagResource with the addition of
  7702  // the ability to pass a context and additional request options.
  7703  //
  7704  // See UntagResource for details on how to use this API operation.
  7705  //
  7706  // The context must be non-nil and will be used for request cancellation. If
  7707  // the context is nil a panic will occur. In the future the SDK may create
  7708  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7709  // for more information on using Contexts.
  7710  func (c *AlexaForBusiness) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
  7711  	req, out := c.UntagResourceRequest(input)
  7712  	req.SetContext(ctx)
  7713  	req.ApplyOptions(opts...)
  7714  	return out, req.Send()
  7715  }
  7716  
  7717  const opUpdateAddressBook = "UpdateAddressBook"
  7718  
  7719  // UpdateAddressBookRequest generates a "aws/request.Request" representing the
  7720  // client's request for the UpdateAddressBook operation. The "output" return
  7721  // value will be populated with the request's response once the request completes
  7722  // successfully.
  7723  //
  7724  // Use "Send" method on the returned Request to send the API call to the service.
  7725  // the "output" return value is not valid until after Send returns without error.
  7726  //
  7727  // See UpdateAddressBook for more information on using the UpdateAddressBook
  7728  // API call, and error handling.
  7729  //
  7730  // This method is useful when you want to inject custom logic or configuration
  7731  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7732  //
  7733  //
  7734  //    // Example sending a request using the UpdateAddressBookRequest method.
  7735  //    req, resp := client.UpdateAddressBookRequest(params)
  7736  //
  7737  //    err := req.Send()
  7738  //    if err == nil { // resp is now filled
  7739  //        fmt.Println(resp)
  7740  //    }
  7741  //
  7742  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateAddressBook
  7743  func (c *AlexaForBusiness) UpdateAddressBookRequest(input *UpdateAddressBookInput) (req *request.Request, output *UpdateAddressBookOutput) {
  7744  	op := &request.Operation{
  7745  		Name:       opUpdateAddressBook,
  7746  		HTTPMethod: "POST",
  7747  		HTTPPath:   "/",
  7748  	}
  7749  
  7750  	if input == nil {
  7751  		input = &UpdateAddressBookInput{}
  7752  	}
  7753  
  7754  	output = &UpdateAddressBookOutput{}
  7755  	req = c.newRequest(op, input, output)
  7756  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7757  	return
  7758  }
  7759  
  7760  // UpdateAddressBook API operation for Alexa For Business.
  7761  //
  7762  // Updates address book details by the address book ARN.
  7763  //
  7764  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7765  // with awserr.Error's Code and Message methods to get detailed information about
  7766  // the error.
  7767  //
  7768  // See the AWS API reference guide for Alexa For Business's
  7769  // API operation UpdateAddressBook for usage and error information.
  7770  //
  7771  // Returned Error Types:
  7772  //   * NotFoundException
  7773  //   The resource is not found.
  7774  //
  7775  //   * NameInUseException
  7776  //   The name sent in the request is already in use.
  7777  //
  7778  //   * ConcurrentModificationException
  7779  //   There is a concurrent modification of resources.
  7780  //
  7781  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateAddressBook
  7782  func (c *AlexaForBusiness) UpdateAddressBook(input *UpdateAddressBookInput) (*UpdateAddressBookOutput, error) {
  7783  	req, out := c.UpdateAddressBookRequest(input)
  7784  	return out, req.Send()
  7785  }
  7786  
  7787  // UpdateAddressBookWithContext is the same as UpdateAddressBook with the addition of
  7788  // the ability to pass a context and additional request options.
  7789  //
  7790  // See UpdateAddressBook for details on how to use this API operation.
  7791  //
  7792  // The context must be non-nil and will be used for request cancellation. If
  7793  // the context is nil a panic will occur. In the future the SDK may create
  7794  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7795  // for more information on using Contexts.
  7796  func (c *AlexaForBusiness) UpdateAddressBookWithContext(ctx aws.Context, input *UpdateAddressBookInput, opts ...request.Option) (*UpdateAddressBookOutput, error) {
  7797  	req, out := c.UpdateAddressBookRequest(input)
  7798  	req.SetContext(ctx)
  7799  	req.ApplyOptions(opts...)
  7800  	return out, req.Send()
  7801  }
  7802  
  7803  const opUpdateBusinessReportSchedule = "UpdateBusinessReportSchedule"
  7804  
  7805  // UpdateBusinessReportScheduleRequest generates a "aws/request.Request" representing the
  7806  // client's request for the UpdateBusinessReportSchedule operation. The "output" return
  7807  // value will be populated with the request's response once the request completes
  7808  // successfully.
  7809  //
  7810  // Use "Send" method on the returned Request to send the API call to the service.
  7811  // the "output" return value is not valid until after Send returns without error.
  7812  //
  7813  // See UpdateBusinessReportSchedule for more information on using the UpdateBusinessReportSchedule
  7814  // API call, and error handling.
  7815  //
  7816  // This method is useful when you want to inject custom logic or configuration
  7817  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7818  //
  7819  //
  7820  //    // Example sending a request using the UpdateBusinessReportScheduleRequest method.
  7821  //    req, resp := client.UpdateBusinessReportScheduleRequest(params)
  7822  //
  7823  //    err := req.Send()
  7824  //    if err == nil { // resp is now filled
  7825  //        fmt.Println(resp)
  7826  //    }
  7827  //
  7828  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateBusinessReportSchedule
  7829  func (c *AlexaForBusiness) UpdateBusinessReportScheduleRequest(input *UpdateBusinessReportScheduleInput) (req *request.Request, output *UpdateBusinessReportScheduleOutput) {
  7830  	op := &request.Operation{
  7831  		Name:       opUpdateBusinessReportSchedule,
  7832  		HTTPMethod: "POST",
  7833  		HTTPPath:   "/",
  7834  	}
  7835  
  7836  	if input == nil {
  7837  		input = &UpdateBusinessReportScheduleInput{}
  7838  	}
  7839  
  7840  	output = &UpdateBusinessReportScheduleOutput{}
  7841  	req = c.newRequest(op, input, output)
  7842  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7843  	return
  7844  }
  7845  
  7846  // UpdateBusinessReportSchedule API operation for Alexa For Business.
  7847  //
  7848  // Updates the configuration of the report delivery schedule with the specified
  7849  // schedule ARN.
  7850  //
  7851  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7852  // with awserr.Error's Code and Message methods to get detailed information about
  7853  // the error.
  7854  //
  7855  // See the AWS API reference guide for Alexa For Business's
  7856  // API operation UpdateBusinessReportSchedule for usage and error information.
  7857  //
  7858  // Returned Error Types:
  7859  //   * NotFoundException
  7860  //   The resource is not found.
  7861  //
  7862  //   * ConcurrentModificationException
  7863  //   There is a concurrent modification of resources.
  7864  //
  7865  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateBusinessReportSchedule
  7866  func (c *AlexaForBusiness) UpdateBusinessReportSchedule(input *UpdateBusinessReportScheduleInput) (*UpdateBusinessReportScheduleOutput, error) {
  7867  	req, out := c.UpdateBusinessReportScheduleRequest(input)
  7868  	return out, req.Send()
  7869  }
  7870  
  7871  // UpdateBusinessReportScheduleWithContext is the same as UpdateBusinessReportSchedule with the addition of
  7872  // the ability to pass a context and additional request options.
  7873  //
  7874  // See UpdateBusinessReportSchedule for details on how to use this API operation.
  7875  //
  7876  // The context must be non-nil and will be used for request cancellation. If
  7877  // the context is nil a panic will occur. In the future the SDK may create
  7878  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7879  // for more information on using Contexts.
  7880  func (c *AlexaForBusiness) UpdateBusinessReportScheduleWithContext(ctx aws.Context, input *UpdateBusinessReportScheduleInput, opts ...request.Option) (*UpdateBusinessReportScheduleOutput, error) {
  7881  	req, out := c.UpdateBusinessReportScheduleRequest(input)
  7882  	req.SetContext(ctx)
  7883  	req.ApplyOptions(opts...)
  7884  	return out, req.Send()
  7885  }
  7886  
  7887  const opUpdateConferenceProvider = "UpdateConferenceProvider"
  7888  
  7889  // UpdateConferenceProviderRequest generates a "aws/request.Request" representing the
  7890  // client's request for the UpdateConferenceProvider operation. The "output" return
  7891  // value will be populated with the request's response once the request completes
  7892  // successfully.
  7893  //
  7894  // Use "Send" method on the returned Request to send the API call to the service.
  7895  // the "output" return value is not valid until after Send returns without error.
  7896  //
  7897  // See UpdateConferenceProvider for more information on using the UpdateConferenceProvider
  7898  // API call, and error handling.
  7899  //
  7900  // This method is useful when you want to inject custom logic or configuration
  7901  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7902  //
  7903  //
  7904  //    // Example sending a request using the UpdateConferenceProviderRequest method.
  7905  //    req, resp := client.UpdateConferenceProviderRequest(params)
  7906  //
  7907  //    err := req.Send()
  7908  //    if err == nil { // resp is now filled
  7909  //        fmt.Println(resp)
  7910  //    }
  7911  //
  7912  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateConferenceProvider
  7913  func (c *AlexaForBusiness) UpdateConferenceProviderRequest(input *UpdateConferenceProviderInput) (req *request.Request, output *UpdateConferenceProviderOutput) {
  7914  	op := &request.Operation{
  7915  		Name:       opUpdateConferenceProvider,
  7916  		HTTPMethod: "POST",
  7917  		HTTPPath:   "/",
  7918  	}
  7919  
  7920  	if input == nil {
  7921  		input = &UpdateConferenceProviderInput{}
  7922  	}
  7923  
  7924  	output = &UpdateConferenceProviderOutput{}
  7925  	req = c.newRequest(op, input, output)
  7926  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  7927  	return
  7928  }
  7929  
  7930  // UpdateConferenceProvider API operation for Alexa For Business.
  7931  //
  7932  // Updates an existing conference provider's settings.
  7933  //
  7934  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  7935  // with awserr.Error's Code and Message methods to get detailed information about
  7936  // the error.
  7937  //
  7938  // See the AWS API reference guide for Alexa For Business's
  7939  // API operation UpdateConferenceProvider for usage and error information.
  7940  //
  7941  // Returned Error Types:
  7942  //   * NotFoundException
  7943  //   The resource is not found.
  7944  //
  7945  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateConferenceProvider
  7946  func (c *AlexaForBusiness) UpdateConferenceProvider(input *UpdateConferenceProviderInput) (*UpdateConferenceProviderOutput, error) {
  7947  	req, out := c.UpdateConferenceProviderRequest(input)
  7948  	return out, req.Send()
  7949  }
  7950  
  7951  // UpdateConferenceProviderWithContext is the same as UpdateConferenceProvider with the addition of
  7952  // the ability to pass a context and additional request options.
  7953  //
  7954  // See UpdateConferenceProvider for details on how to use this API operation.
  7955  //
  7956  // The context must be non-nil and will be used for request cancellation. If
  7957  // the context is nil a panic will occur. In the future the SDK may create
  7958  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  7959  // for more information on using Contexts.
  7960  func (c *AlexaForBusiness) UpdateConferenceProviderWithContext(ctx aws.Context, input *UpdateConferenceProviderInput, opts ...request.Option) (*UpdateConferenceProviderOutput, error) {
  7961  	req, out := c.UpdateConferenceProviderRequest(input)
  7962  	req.SetContext(ctx)
  7963  	req.ApplyOptions(opts...)
  7964  	return out, req.Send()
  7965  }
  7966  
  7967  const opUpdateContact = "UpdateContact"
  7968  
  7969  // UpdateContactRequest generates a "aws/request.Request" representing the
  7970  // client's request for the UpdateContact operation. The "output" return
  7971  // value will be populated with the request's response once the request completes
  7972  // successfully.
  7973  //
  7974  // Use "Send" method on the returned Request to send the API call to the service.
  7975  // the "output" return value is not valid until after Send returns without error.
  7976  //
  7977  // See UpdateContact for more information on using the UpdateContact
  7978  // API call, and error handling.
  7979  //
  7980  // This method is useful when you want to inject custom logic or configuration
  7981  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  7982  //
  7983  //
  7984  //    // Example sending a request using the UpdateContactRequest method.
  7985  //    req, resp := client.UpdateContactRequest(params)
  7986  //
  7987  //    err := req.Send()
  7988  //    if err == nil { // resp is now filled
  7989  //        fmt.Println(resp)
  7990  //    }
  7991  //
  7992  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateContact
  7993  func (c *AlexaForBusiness) UpdateContactRequest(input *UpdateContactInput) (req *request.Request, output *UpdateContactOutput) {
  7994  	op := &request.Operation{
  7995  		Name:       opUpdateContact,
  7996  		HTTPMethod: "POST",
  7997  		HTTPPath:   "/",
  7998  	}
  7999  
  8000  	if input == nil {
  8001  		input = &UpdateContactInput{}
  8002  	}
  8003  
  8004  	output = &UpdateContactOutput{}
  8005  	req = c.newRequest(op, input, output)
  8006  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8007  	return
  8008  }
  8009  
  8010  // UpdateContact API operation for Alexa For Business.
  8011  //
  8012  // Updates the contact details by the contact ARN.
  8013  //
  8014  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8015  // with awserr.Error's Code and Message methods to get detailed information about
  8016  // the error.
  8017  //
  8018  // See the AWS API reference guide for Alexa For Business's
  8019  // API operation UpdateContact for usage and error information.
  8020  //
  8021  // Returned Error Types:
  8022  //   * NotFoundException
  8023  //   The resource is not found.
  8024  //
  8025  //   * ConcurrentModificationException
  8026  //   There is a concurrent modification of resources.
  8027  //
  8028  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateContact
  8029  func (c *AlexaForBusiness) UpdateContact(input *UpdateContactInput) (*UpdateContactOutput, error) {
  8030  	req, out := c.UpdateContactRequest(input)
  8031  	return out, req.Send()
  8032  }
  8033  
  8034  // UpdateContactWithContext is the same as UpdateContact with the addition of
  8035  // the ability to pass a context and additional request options.
  8036  //
  8037  // See UpdateContact for details on how to use this API operation.
  8038  //
  8039  // The context must be non-nil and will be used for request cancellation. If
  8040  // the context is nil a panic will occur. In the future the SDK may create
  8041  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8042  // for more information on using Contexts.
  8043  func (c *AlexaForBusiness) UpdateContactWithContext(ctx aws.Context, input *UpdateContactInput, opts ...request.Option) (*UpdateContactOutput, error) {
  8044  	req, out := c.UpdateContactRequest(input)
  8045  	req.SetContext(ctx)
  8046  	req.ApplyOptions(opts...)
  8047  	return out, req.Send()
  8048  }
  8049  
  8050  const opUpdateDevice = "UpdateDevice"
  8051  
  8052  // UpdateDeviceRequest generates a "aws/request.Request" representing the
  8053  // client's request for the UpdateDevice operation. The "output" return
  8054  // value will be populated with the request's response once the request completes
  8055  // successfully.
  8056  //
  8057  // Use "Send" method on the returned Request to send the API call to the service.
  8058  // the "output" return value is not valid until after Send returns without error.
  8059  //
  8060  // See UpdateDevice for more information on using the UpdateDevice
  8061  // API call, and error handling.
  8062  //
  8063  // This method is useful when you want to inject custom logic or configuration
  8064  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8065  //
  8066  //
  8067  //    // Example sending a request using the UpdateDeviceRequest method.
  8068  //    req, resp := client.UpdateDeviceRequest(params)
  8069  //
  8070  //    err := req.Send()
  8071  //    if err == nil { // resp is now filled
  8072  //        fmt.Println(resp)
  8073  //    }
  8074  //
  8075  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateDevice
  8076  func (c *AlexaForBusiness) UpdateDeviceRequest(input *UpdateDeviceInput) (req *request.Request, output *UpdateDeviceOutput) {
  8077  	op := &request.Operation{
  8078  		Name:       opUpdateDevice,
  8079  		HTTPMethod: "POST",
  8080  		HTTPPath:   "/",
  8081  	}
  8082  
  8083  	if input == nil {
  8084  		input = &UpdateDeviceInput{}
  8085  	}
  8086  
  8087  	output = &UpdateDeviceOutput{}
  8088  	req = c.newRequest(op, input, output)
  8089  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8090  	return
  8091  }
  8092  
  8093  // UpdateDevice API operation for Alexa For Business.
  8094  //
  8095  // Updates the device name by device ARN.
  8096  //
  8097  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8098  // with awserr.Error's Code and Message methods to get detailed information about
  8099  // the error.
  8100  //
  8101  // See the AWS API reference guide for Alexa For Business's
  8102  // API operation UpdateDevice for usage and error information.
  8103  //
  8104  // Returned Error Types:
  8105  //   * NotFoundException
  8106  //   The resource is not found.
  8107  //
  8108  //   * ConcurrentModificationException
  8109  //   There is a concurrent modification of resources.
  8110  //
  8111  //   * DeviceNotRegisteredException
  8112  //   The request failed because this device is no longer registered and therefore
  8113  //   no longer managed by this account.
  8114  //
  8115  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateDevice
  8116  func (c *AlexaForBusiness) UpdateDevice(input *UpdateDeviceInput) (*UpdateDeviceOutput, error) {
  8117  	req, out := c.UpdateDeviceRequest(input)
  8118  	return out, req.Send()
  8119  }
  8120  
  8121  // UpdateDeviceWithContext is the same as UpdateDevice with the addition of
  8122  // the ability to pass a context and additional request options.
  8123  //
  8124  // See UpdateDevice for details on how to use this API operation.
  8125  //
  8126  // The context must be non-nil and will be used for request cancellation. If
  8127  // the context is nil a panic will occur. In the future the SDK may create
  8128  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8129  // for more information on using Contexts.
  8130  func (c *AlexaForBusiness) UpdateDeviceWithContext(ctx aws.Context, input *UpdateDeviceInput, opts ...request.Option) (*UpdateDeviceOutput, error) {
  8131  	req, out := c.UpdateDeviceRequest(input)
  8132  	req.SetContext(ctx)
  8133  	req.ApplyOptions(opts...)
  8134  	return out, req.Send()
  8135  }
  8136  
  8137  const opUpdateGateway = "UpdateGateway"
  8138  
  8139  // UpdateGatewayRequest generates a "aws/request.Request" representing the
  8140  // client's request for the UpdateGateway operation. The "output" return
  8141  // value will be populated with the request's response once the request completes
  8142  // successfully.
  8143  //
  8144  // Use "Send" method on the returned Request to send the API call to the service.
  8145  // the "output" return value is not valid until after Send returns without error.
  8146  //
  8147  // See UpdateGateway for more information on using the UpdateGateway
  8148  // API call, and error handling.
  8149  //
  8150  // This method is useful when you want to inject custom logic or configuration
  8151  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8152  //
  8153  //
  8154  //    // Example sending a request using the UpdateGatewayRequest method.
  8155  //    req, resp := client.UpdateGatewayRequest(params)
  8156  //
  8157  //    err := req.Send()
  8158  //    if err == nil { // resp is now filled
  8159  //        fmt.Println(resp)
  8160  //    }
  8161  //
  8162  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateGateway
  8163  func (c *AlexaForBusiness) UpdateGatewayRequest(input *UpdateGatewayInput) (req *request.Request, output *UpdateGatewayOutput) {
  8164  	op := &request.Operation{
  8165  		Name:       opUpdateGateway,
  8166  		HTTPMethod: "POST",
  8167  		HTTPPath:   "/",
  8168  	}
  8169  
  8170  	if input == nil {
  8171  		input = &UpdateGatewayInput{}
  8172  	}
  8173  
  8174  	output = &UpdateGatewayOutput{}
  8175  	req = c.newRequest(op, input, output)
  8176  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8177  	return
  8178  }
  8179  
  8180  // UpdateGateway API operation for Alexa For Business.
  8181  //
  8182  // Updates the details of a gateway. If any optional field is not provided,
  8183  // the existing corresponding value is left unmodified.
  8184  //
  8185  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8186  // with awserr.Error's Code and Message methods to get detailed information about
  8187  // the error.
  8188  //
  8189  // See the AWS API reference guide for Alexa For Business's
  8190  // API operation UpdateGateway for usage and error information.
  8191  //
  8192  // Returned Error Types:
  8193  //   * NotFoundException
  8194  //   The resource is not found.
  8195  //
  8196  //   * NameInUseException
  8197  //   The name sent in the request is already in use.
  8198  //
  8199  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateGateway
  8200  func (c *AlexaForBusiness) UpdateGateway(input *UpdateGatewayInput) (*UpdateGatewayOutput, error) {
  8201  	req, out := c.UpdateGatewayRequest(input)
  8202  	return out, req.Send()
  8203  }
  8204  
  8205  // UpdateGatewayWithContext is the same as UpdateGateway with the addition of
  8206  // the ability to pass a context and additional request options.
  8207  //
  8208  // See UpdateGateway for details on how to use this API operation.
  8209  //
  8210  // The context must be non-nil and will be used for request cancellation. If
  8211  // the context is nil a panic will occur. In the future the SDK may create
  8212  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8213  // for more information on using Contexts.
  8214  func (c *AlexaForBusiness) UpdateGatewayWithContext(ctx aws.Context, input *UpdateGatewayInput, opts ...request.Option) (*UpdateGatewayOutput, error) {
  8215  	req, out := c.UpdateGatewayRequest(input)
  8216  	req.SetContext(ctx)
  8217  	req.ApplyOptions(opts...)
  8218  	return out, req.Send()
  8219  }
  8220  
  8221  const opUpdateGatewayGroup = "UpdateGatewayGroup"
  8222  
  8223  // UpdateGatewayGroupRequest generates a "aws/request.Request" representing the
  8224  // client's request for the UpdateGatewayGroup operation. The "output" return
  8225  // value will be populated with the request's response once the request completes
  8226  // successfully.
  8227  //
  8228  // Use "Send" method on the returned Request to send the API call to the service.
  8229  // the "output" return value is not valid until after Send returns without error.
  8230  //
  8231  // See UpdateGatewayGroup for more information on using the UpdateGatewayGroup
  8232  // API call, and error handling.
  8233  //
  8234  // This method is useful when you want to inject custom logic or configuration
  8235  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8236  //
  8237  //
  8238  //    // Example sending a request using the UpdateGatewayGroupRequest method.
  8239  //    req, resp := client.UpdateGatewayGroupRequest(params)
  8240  //
  8241  //    err := req.Send()
  8242  //    if err == nil { // resp is now filled
  8243  //        fmt.Println(resp)
  8244  //    }
  8245  //
  8246  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateGatewayGroup
  8247  func (c *AlexaForBusiness) UpdateGatewayGroupRequest(input *UpdateGatewayGroupInput) (req *request.Request, output *UpdateGatewayGroupOutput) {
  8248  	op := &request.Operation{
  8249  		Name:       opUpdateGatewayGroup,
  8250  		HTTPMethod: "POST",
  8251  		HTTPPath:   "/",
  8252  	}
  8253  
  8254  	if input == nil {
  8255  		input = &UpdateGatewayGroupInput{}
  8256  	}
  8257  
  8258  	output = &UpdateGatewayGroupOutput{}
  8259  	req = c.newRequest(op, input, output)
  8260  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8261  	return
  8262  }
  8263  
  8264  // UpdateGatewayGroup API operation for Alexa For Business.
  8265  //
  8266  // Updates the details of a gateway group. If any optional field is not provided,
  8267  // the existing corresponding value is left unmodified.
  8268  //
  8269  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8270  // with awserr.Error's Code and Message methods to get detailed information about
  8271  // the error.
  8272  //
  8273  // See the AWS API reference guide for Alexa For Business's
  8274  // API operation UpdateGatewayGroup for usage and error information.
  8275  //
  8276  // Returned Error Types:
  8277  //   * NotFoundException
  8278  //   The resource is not found.
  8279  //
  8280  //   * NameInUseException
  8281  //   The name sent in the request is already in use.
  8282  //
  8283  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateGatewayGroup
  8284  func (c *AlexaForBusiness) UpdateGatewayGroup(input *UpdateGatewayGroupInput) (*UpdateGatewayGroupOutput, error) {
  8285  	req, out := c.UpdateGatewayGroupRequest(input)
  8286  	return out, req.Send()
  8287  }
  8288  
  8289  // UpdateGatewayGroupWithContext is the same as UpdateGatewayGroup with the addition of
  8290  // the ability to pass a context and additional request options.
  8291  //
  8292  // See UpdateGatewayGroup for details on how to use this API operation.
  8293  //
  8294  // The context must be non-nil and will be used for request cancellation. If
  8295  // the context is nil a panic will occur. In the future the SDK may create
  8296  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8297  // for more information on using Contexts.
  8298  func (c *AlexaForBusiness) UpdateGatewayGroupWithContext(ctx aws.Context, input *UpdateGatewayGroupInput, opts ...request.Option) (*UpdateGatewayGroupOutput, error) {
  8299  	req, out := c.UpdateGatewayGroupRequest(input)
  8300  	req.SetContext(ctx)
  8301  	req.ApplyOptions(opts...)
  8302  	return out, req.Send()
  8303  }
  8304  
  8305  const opUpdateNetworkProfile = "UpdateNetworkProfile"
  8306  
  8307  // UpdateNetworkProfileRequest generates a "aws/request.Request" representing the
  8308  // client's request for the UpdateNetworkProfile operation. The "output" return
  8309  // value will be populated with the request's response once the request completes
  8310  // successfully.
  8311  //
  8312  // Use "Send" method on the returned Request to send the API call to the service.
  8313  // the "output" return value is not valid until after Send returns without error.
  8314  //
  8315  // See UpdateNetworkProfile for more information on using the UpdateNetworkProfile
  8316  // API call, and error handling.
  8317  //
  8318  // This method is useful when you want to inject custom logic or configuration
  8319  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8320  //
  8321  //
  8322  //    // Example sending a request using the UpdateNetworkProfileRequest method.
  8323  //    req, resp := client.UpdateNetworkProfileRequest(params)
  8324  //
  8325  //    err := req.Send()
  8326  //    if err == nil { // resp is now filled
  8327  //        fmt.Println(resp)
  8328  //    }
  8329  //
  8330  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateNetworkProfile
  8331  func (c *AlexaForBusiness) UpdateNetworkProfileRequest(input *UpdateNetworkProfileInput) (req *request.Request, output *UpdateNetworkProfileOutput) {
  8332  	op := &request.Operation{
  8333  		Name:       opUpdateNetworkProfile,
  8334  		HTTPMethod: "POST",
  8335  		HTTPPath:   "/",
  8336  	}
  8337  
  8338  	if input == nil {
  8339  		input = &UpdateNetworkProfileInput{}
  8340  	}
  8341  
  8342  	output = &UpdateNetworkProfileOutput{}
  8343  	req = c.newRequest(op, input, output)
  8344  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8345  	return
  8346  }
  8347  
  8348  // UpdateNetworkProfile API operation for Alexa For Business.
  8349  //
  8350  // Updates a network profile by the network profile ARN.
  8351  //
  8352  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8353  // with awserr.Error's Code and Message methods to get detailed information about
  8354  // the error.
  8355  //
  8356  // See the AWS API reference guide for Alexa For Business's
  8357  // API operation UpdateNetworkProfile for usage and error information.
  8358  //
  8359  // Returned Error Types:
  8360  //   * NotFoundException
  8361  //   The resource is not found.
  8362  //
  8363  //   * NameInUseException
  8364  //   The name sent in the request is already in use.
  8365  //
  8366  //   * ConcurrentModificationException
  8367  //   There is a concurrent modification of resources.
  8368  //
  8369  //   * InvalidCertificateAuthorityException
  8370  //   The Certificate Authority can't issue or revoke a certificate.
  8371  //
  8372  //   * InvalidSecretsManagerResourceException
  8373  //   A password in SecretsManager is in an invalid state.
  8374  //
  8375  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateNetworkProfile
  8376  func (c *AlexaForBusiness) UpdateNetworkProfile(input *UpdateNetworkProfileInput) (*UpdateNetworkProfileOutput, error) {
  8377  	req, out := c.UpdateNetworkProfileRequest(input)
  8378  	return out, req.Send()
  8379  }
  8380  
  8381  // UpdateNetworkProfileWithContext is the same as UpdateNetworkProfile with the addition of
  8382  // the ability to pass a context and additional request options.
  8383  //
  8384  // See UpdateNetworkProfile for details on how to use this API operation.
  8385  //
  8386  // The context must be non-nil and will be used for request cancellation. If
  8387  // the context is nil a panic will occur. In the future the SDK may create
  8388  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8389  // for more information on using Contexts.
  8390  func (c *AlexaForBusiness) UpdateNetworkProfileWithContext(ctx aws.Context, input *UpdateNetworkProfileInput, opts ...request.Option) (*UpdateNetworkProfileOutput, error) {
  8391  	req, out := c.UpdateNetworkProfileRequest(input)
  8392  	req.SetContext(ctx)
  8393  	req.ApplyOptions(opts...)
  8394  	return out, req.Send()
  8395  }
  8396  
  8397  const opUpdateProfile = "UpdateProfile"
  8398  
  8399  // UpdateProfileRequest generates a "aws/request.Request" representing the
  8400  // client's request for the UpdateProfile operation. The "output" return
  8401  // value will be populated with the request's response once the request completes
  8402  // successfully.
  8403  //
  8404  // Use "Send" method on the returned Request to send the API call to the service.
  8405  // the "output" return value is not valid until after Send returns without error.
  8406  //
  8407  // See UpdateProfile for more information on using the UpdateProfile
  8408  // API call, and error handling.
  8409  //
  8410  // This method is useful when you want to inject custom logic or configuration
  8411  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8412  //
  8413  //
  8414  //    // Example sending a request using the UpdateProfileRequest method.
  8415  //    req, resp := client.UpdateProfileRequest(params)
  8416  //
  8417  //    err := req.Send()
  8418  //    if err == nil { // resp is now filled
  8419  //        fmt.Println(resp)
  8420  //    }
  8421  //
  8422  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateProfile
  8423  func (c *AlexaForBusiness) UpdateProfileRequest(input *UpdateProfileInput) (req *request.Request, output *UpdateProfileOutput) {
  8424  	op := &request.Operation{
  8425  		Name:       opUpdateProfile,
  8426  		HTTPMethod: "POST",
  8427  		HTTPPath:   "/",
  8428  	}
  8429  
  8430  	if input == nil {
  8431  		input = &UpdateProfileInput{}
  8432  	}
  8433  
  8434  	output = &UpdateProfileOutput{}
  8435  	req = c.newRequest(op, input, output)
  8436  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8437  	return
  8438  }
  8439  
  8440  // UpdateProfile API operation for Alexa For Business.
  8441  //
  8442  // Updates an existing room profile by room profile ARN.
  8443  //
  8444  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8445  // with awserr.Error's Code and Message methods to get detailed information about
  8446  // the error.
  8447  //
  8448  // See the AWS API reference guide for Alexa For Business's
  8449  // API operation UpdateProfile for usage and error information.
  8450  //
  8451  // Returned Error Types:
  8452  //   * NotFoundException
  8453  //   The resource is not found.
  8454  //
  8455  //   * NameInUseException
  8456  //   The name sent in the request is already in use.
  8457  //
  8458  //   * ConcurrentModificationException
  8459  //   There is a concurrent modification of resources.
  8460  //
  8461  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateProfile
  8462  func (c *AlexaForBusiness) UpdateProfile(input *UpdateProfileInput) (*UpdateProfileOutput, error) {
  8463  	req, out := c.UpdateProfileRequest(input)
  8464  	return out, req.Send()
  8465  }
  8466  
  8467  // UpdateProfileWithContext is the same as UpdateProfile with the addition of
  8468  // the ability to pass a context and additional request options.
  8469  //
  8470  // See UpdateProfile for details on how to use this API operation.
  8471  //
  8472  // The context must be non-nil and will be used for request cancellation. If
  8473  // the context is nil a panic will occur. In the future the SDK may create
  8474  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8475  // for more information on using Contexts.
  8476  func (c *AlexaForBusiness) UpdateProfileWithContext(ctx aws.Context, input *UpdateProfileInput, opts ...request.Option) (*UpdateProfileOutput, error) {
  8477  	req, out := c.UpdateProfileRequest(input)
  8478  	req.SetContext(ctx)
  8479  	req.ApplyOptions(opts...)
  8480  	return out, req.Send()
  8481  }
  8482  
  8483  const opUpdateRoom = "UpdateRoom"
  8484  
  8485  // UpdateRoomRequest generates a "aws/request.Request" representing the
  8486  // client's request for the UpdateRoom operation. The "output" return
  8487  // value will be populated with the request's response once the request completes
  8488  // successfully.
  8489  //
  8490  // Use "Send" method on the returned Request to send the API call to the service.
  8491  // the "output" return value is not valid until after Send returns without error.
  8492  //
  8493  // See UpdateRoom for more information on using the UpdateRoom
  8494  // API call, and error handling.
  8495  //
  8496  // This method is useful when you want to inject custom logic or configuration
  8497  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8498  //
  8499  //
  8500  //    // Example sending a request using the UpdateRoomRequest method.
  8501  //    req, resp := client.UpdateRoomRequest(params)
  8502  //
  8503  //    err := req.Send()
  8504  //    if err == nil { // resp is now filled
  8505  //        fmt.Println(resp)
  8506  //    }
  8507  //
  8508  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateRoom
  8509  func (c *AlexaForBusiness) UpdateRoomRequest(input *UpdateRoomInput) (req *request.Request, output *UpdateRoomOutput) {
  8510  	op := &request.Operation{
  8511  		Name:       opUpdateRoom,
  8512  		HTTPMethod: "POST",
  8513  		HTTPPath:   "/",
  8514  	}
  8515  
  8516  	if input == nil {
  8517  		input = &UpdateRoomInput{}
  8518  	}
  8519  
  8520  	output = &UpdateRoomOutput{}
  8521  	req = c.newRequest(op, input, output)
  8522  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8523  	return
  8524  }
  8525  
  8526  // UpdateRoom API operation for Alexa For Business.
  8527  //
  8528  // Updates room details by room ARN.
  8529  //
  8530  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8531  // with awserr.Error's Code and Message methods to get detailed information about
  8532  // the error.
  8533  //
  8534  // See the AWS API reference guide for Alexa For Business's
  8535  // API operation UpdateRoom for usage and error information.
  8536  //
  8537  // Returned Error Types:
  8538  //   * NotFoundException
  8539  //   The resource is not found.
  8540  //
  8541  //   * NameInUseException
  8542  //   The name sent in the request is already in use.
  8543  //
  8544  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateRoom
  8545  func (c *AlexaForBusiness) UpdateRoom(input *UpdateRoomInput) (*UpdateRoomOutput, error) {
  8546  	req, out := c.UpdateRoomRequest(input)
  8547  	return out, req.Send()
  8548  }
  8549  
  8550  // UpdateRoomWithContext is the same as UpdateRoom with the addition of
  8551  // the ability to pass a context and additional request options.
  8552  //
  8553  // See UpdateRoom for details on how to use this API operation.
  8554  //
  8555  // The context must be non-nil and will be used for request cancellation. If
  8556  // the context is nil a panic will occur. In the future the SDK may create
  8557  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8558  // for more information on using Contexts.
  8559  func (c *AlexaForBusiness) UpdateRoomWithContext(ctx aws.Context, input *UpdateRoomInput, opts ...request.Option) (*UpdateRoomOutput, error) {
  8560  	req, out := c.UpdateRoomRequest(input)
  8561  	req.SetContext(ctx)
  8562  	req.ApplyOptions(opts...)
  8563  	return out, req.Send()
  8564  }
  8565  
  8566  const opUpdateSkillGroup = "UpdateSkillGroup"
  8567  
  8568  // UpdateSkillGroupRequest generates a "aws/request.Request" representing the
  8569  // client's request for the UpdateSkillGroup operation. The "output" return
  8570  // value will be populated with the request's response once the request completes
  8571  // successfully.
  8572  //
  8573  // Use "Send" method on the returned Request to send the API call to the service.
  8574  // the "output" return value is not valid until after Send returns without error.
  8575  //
  8576  // See UpdateSkillGroup for more information on using the UpdateSkillGroup
  8577  // API call, and error handling.
  8578  //
  8579  // This method is useful when you want to inject custom logic or configuration
  8580  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
  8581  //
  8582  //
  8583  //    // Example sending a request using the UpdateSkillGroupRequest method.
  8584  //    req, resp := client.UpdateSkillGroupRequest(params)
  8585  //
  8586  //    err := req.Send()
  8587  //    if err == nil { // resp is now filled
  8588  //        fmt.Println(resp)
  8589  //    }
  8590  //
  8591  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateSkillGroup
  8592  func (c *AlexaForBusiness) UpdateSkillGroupRequest(input *UpdateSkillGroupInput) (req *request.Request, output *UpdateSkillGroupOutput) {
  8593  	op := &request.Operation{
  8594  		Name:       opUpdateSkillGroup,
  8595  		HTTPMethod: "POST",
  8596  		HTTPPath:   "/",
  8597  	}
  8598  
  8599  	if input == nil {
  8600  		input = &UpdateSkillGroupInput{}
  8601  	}
  8602  
  8603  	output = &UpdateSkillGroupOutput{}
  8604  	req = c.newRequest(op, input, output)
  8605  	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
  8606  	return
  8607  }
  8608  
  8609  // UpdateSkillGroup API operation for Alexa For Business.
  8610  //
  8611  // Updates skill group details by skill group ARN.
  8612  //
  8613  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
  8614  // with awserr.Error's Code and Message methods to get detailed information about
  8615  // the error.
  8616  //
  8617  // See the AWS API reference guide for Alexa For Business's
  8618  // API operation UpdateSkillGroup for usage and error information.
  8619  //
  8620  // Returned Error Types:
  8621  //   * NotFoundException
  8622  //   The resource is not found.
  8623  //
  8624  //   * NameInUseException
  8625  //   The name sent in the request is already in use.
  8626  //
  8627  //   * ConcurrentModificationException
  8628  //   There is a concurrent modification of resources.
  8629  //
  8630  // See also, https://docs.aws.amazon.com/goto/WebAPI/alexaforbusiness-2017-11-09/UpdateSkillGroup
  8631  func (c *AlexaForBusiness) UpdateSkillGroup(input *UpdateSkillGroupInput) (*UpdateSkillGroupOutput, error) {
  8632  	req, out := c.UpdateSkillGroupRequest(input)
  8633  	return out, req.Send()
  8634  }
  8635  
  8636  // UpdateSkillGroupWithContext is the same as UpdateSkillGroup with the addition of
  8637  // the ability to pass a context and additional request options.
  8638  //
  8639  // See UpdateSkillGroup for details on how to use this API operation.
  8640  //
  8641  // The context must be non-nil and will be used for request cancellation. If
  8642  // the context is nil a panic will occur. In the future the SDK may create
  8643  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
  8644  // for more information on using Contexts.
  8645  func (c *AlexaForBusiness) UpdateSkillGroupWithContext(ctx aws.Context, input *UpdateSkillGroupInput, opts ...request.Option) (*UpdateSkillGroupOutput, error) {
  8646  	req, out := c.UpdateSkillGroupRequest(input)
  8647  	req.SetContext(ctx)
  8648  	req.ApplyOptions(opts...)
  8649  	return out, req.Send()
  8650  }
  8651  
  8652  // An address book with attributes.
  8653  type AddressBook struct {
  8654  	_ struct{} `type:"structure"`
  8655  
  8656  	// The ARN of the address book.
  8657  	AddressBookArn *string `type:"string"`
  8658  
  8659  	// The description of the address book.
  8660  	Description *string `min:"1" type:"string"`
  8661  
  8662  	// The name of the address book.
  8663  	Name *string `min:"1" type:"string"`
  8664  }
  8665  
  8666  // String returns the string representation.
  8667  //
  8668  // API parameter values that are decorated as "sensitive" in the API will not
  8669  // be included in the string output. The member name will be present, but the
  8670  // value will be replaced with "sensitive".
  8671  func (s AddressBook) String() string {
  8672  	return awsutil.Prettify(s)
  8673  }
  8674  
  8675  // GoString returns the string representation.
  8676  //
  8677  // API parameter values that are decorated as "sensitive" in the API will not
  8678  // be included in the string output. The member name will be present, but the
  8679  // value will be replaced with "sensitive".
  8680  func (s AddressBook) GoString() string {
  8681  	return s.String()
  8682  }
  8683  
  8684  // SetAddressBookArn sets the AddressBookArn field's value.
  8685  func (s *AddressBook) SetAddressBookArn(v string) *AddressBook {
  8686  	s.AddressBookArn = &v
  8687  	return s
  8688  }
  8689  
  8690  // SetDescription sets the Description field's value.
  8691  func (s *AddressBook) SetDescription(v string) *AddressBook {
  8692  	s.Description = &v
  8693  	return s
  8694  }
  8695  
  8696  // SetName sets the Name field's value.
  8697  func (s *AddressBook) SetName(v string) *AddressBook {
  8698  	s.Name = &v
  8699  	return s
  8700  }
  8701  
  8702  // Information related to an address book.
  8703  type AddressBookData struct {
  8704  	_ struct{} `type:"structure"`
  8705  
  8706  	// The ARN of the address book.
  8707  	AddressBookArn *string `type:"string"`
  8708  
  8709  	// The description of the address book.
  8710  	Description *string `min:"1" type:"string"`
  8711  
  8712  	// The name of the address book.
  8713  	Name *string `min:"1" type:"string"`
  8714  }
  8715  
  8716  // String returns the string representation.
  8717  //
  8718  // API parameter values that are decorated as "sensitive" in the API will not
  8719  // be included in the string output. The member name will be present, but the
  8720  // value will be replaced with "sensitive".
  8721  func (s AddressBookData) String() string {
  8722  	return awsutil.Prettify(s)
  8723  }
  8724  
  8725  // GoString returns the string representation.
  8726  //
  8727  // API parameter values that are decorated as "sensitive" in the API will not
  8728  // be included in the string output. The member name will be present, but the
  8729  // value will be replaced with "sensitive".
  8730  func (s AddressBookData) GoString() string {
  8731  	return s.String()
  8732  }
  8733  
  8734  // SetAddressBookArn sets the AddressBookArn field's value.
  8735  func (s *AddressBookData) SetAddressBookArn(v string) *AddressBookData {
  8736  	s.AddressBookArn = &v
  8737  	return s
  8738  }
  8739  
  8740  // SetDescription sets the Description field's value.
  8741  func (s *AddressBookData) SetDescription(v string) *AddressBookData {
  8742  	s.Description = &v
  8743  	return s
  8744  }
  8745  
  8746  // SetName sets the Name field's value.
  8747  func (s *AddressBookData) SetName(v string) *AddressBookData {
  8748  	s.Name = &v
  8749  	return s
  8750  }
  8751  
  8752  // The resource being created already exists.
  8753  type AlreadyExistsException struct {
  8754  	_            struct{}                  `type:"structure"`
  8755  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  8756  
  8757  	Message_ *string `locationName:"Message" type:"string"`
  8758  }
  8759  
  8760  // String returns the string representation.
  8761  //
  8762  // API parameter values that are decorated as "sensitive" in the API will not
  8763  // be included in the string output. The member name will be present, but the
  8764  // value will be replaced with "sensitive".
  8765  func (s AlreadyExistsException) String() string {
  8766  	return awsutil.Prettify(s)
  8767  }
  8768  
  8769  // GoString returns the string representation.
  8770  //
  8771  // API parameter values that are decorated as "sensitive" in the API will not
  8772  // be included in the string output. The member name will be present, but the
  8773  // value will be replaced with "sensitive".
  8774  func (s AlreadyExistsException) GoString() string {
  8775  	return s.String()
  8776  }
  8777  
  8778  func newErrorAlreadyExistsException(v protocol.ResponseMetadata) error {
  8779  	return &AlreadyExistsException{
  8780  		RespMetadata: v,
  8781  	}
  8782  }
  8783  
  8784  // Code returns the exception type name.
  8785  func (s *AlreadyExistsException) Code() string {
  8786  	return "AlreadyExistsException"
  8787  }
  8788  
  8789  // Message returns the exception's message.
  8790  func (s *AlreadyExistsException) Message() string {
  8791  	if s.Message_ != nil {
  8792  		return *s.Message_
  8793  	}
  8794  	return ""
  8795  }
  8796  
  8797  // OrigErr always returns nil, satisfies awserr.Error interface.
  8798  func (s *AlreadyExistsException) OrigErr() error {
  8799  	return nil
  8800  }
  8801  
  8802  func (s *AlreadyExistsException) Error() string {
  8803  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  8804  }
  8805  
  8806  // Status code returns the HTTP status code for the request's response error.
  8807  func (s *AlreadyExistsException) StatusCode() int {
  8808  	return s.RespMetadata.StatusCode
  8809  }
  8810  
  8811  // RequestID returns the service's response RequestID for request.
  8812  func (s *AlreadyExistsException) RequestID() string {
  8813  	return s.RespMetadata.RequestID
  8814  }
  8815  
  8816  type ApproveSkillInput struct {
  8817  	_ struct{} `type:"structure"`
  8818  
  8819  	// The unique identifier of the skill.
  8820  	//
  8821  	// SkillId is a required field
  8822  	SkillId *string `type:"string" required:"true"`
  8823  }
  8824  
  8825  // String returns the string representation.
  8826  //
  8827  // API parameter values that are decorated as "sensitive" in the API will not
  8828  // be included in the string output. The member name will be present, but the
  8829  // value will be replaced with "sensitive".
  8830  func (s ApproveSkillInput) String() string {
  8831  	return awsutil.Prettify(s)
  8832  }
  8833  
  8834  // GoString returns the string representation.
  8835  //
  8836  // API parameter values that are decorated as "sensitive" in the API will not
  8837  // be included in the string output. The member name will be present, but the
  8838  // value will be replaced with "sensitive".
  8839  func (s ApproveSkillInput) GoString() string {
  8840  	return s.String()
  8841  }
  8842  
  8843  // Validate inspects the fields of the type to determine if they are valid.
  8844  func (s *ApproveSkillInput) Validate() error {
  8845  	invalidParams := request.ErrInvalidParams{Context: "ApproveSkillInput"}
  8846  	if s.SkillId == nil {
  8847  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
  8848  	}
  8849  
  8850  	if invalidParams.Len() > 0 {
  8851  		return invalidParams
  8852  	}
  8853  	return nil
  8854  }
  8855  
  8856  // SetSkillId sets the SkillId field's value.
  8857  func (s *ApproveSkillInput) SetSkillId(v string) *ApproveSkillInput {
  8858  	s.SkillId = &v
  8859  	return s
  8860  }
  8861  
  8862  type ApproveSkillOutput struct {
  8863  	_ struct{} `type:"structure"`
  8864  }
  8865  
  8866  // String returns the string representation.
  8867  //
  8868  // API parameter values that are decorated as "sensitive" in the API will not
  8869  // be included in the string output. The member name will be present, but the
  8870  // value will be replaced with "sensitive".
  8871  func (s ApproveSkillOutput) String() string {
  8872  	return awsutil.Prettify(s)
  8873  }
  8874  
  8875  // GoString returns the string representation.
  8876  //
  8877  // API parameter values that are decorated as "sensitive" in the API will not
  8878  // be included in the string output. The member name will be present, but the
  8879  // value will be replaced with "sensitive".
  8880  func (s ApproveSkillOutput) GoString() string {
  8881  	return s.String()
  8882  }
  8883  
  8884  type AssociateContactWithAddressBookInput struct {
  8885  	_ struct{} `type:"structure"`
  8886  
  8887  	// The ARN of the address book with which to associate the contact.
  8888  	//
  8889  	// AddressBookArn is a required field
  8890  	AddressBookArn *string `type:"string" required:"true"`
  8891  
  8892  	// The ARN of the contact to associate with an address book.
  8893  	//
  8894  	// ContactArn is a required field
  8895  	ContactArn *string `type:"string" required:"true"`
  8896  }
  8897  
  8898  // String returns the string representation.
  8899  //
  8900  // API parameter values that are decorated as "sensitive" in the API will not
  8901  // be included in the string output. The member name will be present, but the
  8902  // value will be replaced with "sensitive".
  8903  func (s AssociateContactWithAddressBookInput) String() string {
  8904  	return awsutil.Prettify(s)
  8905  }
  8906  
  8907  // GoString returns the string representation.
  8908  //
  8909  // API parameter values that are decorated as "sensitive" in the API will not
  8910  // be included in the string output. The member name will be present, but the
  8911  // value will be replaced with "sensitive".
  8912  func (s AssociateContactWithAddressBookInput) GoString() string {
  8913  	return s.String()
  8914  }
  8915  
  8916  // Validate inspects the fields of the type to determine if they are valid.
  8917  func (s *AssociateContactWithAddressBookInput) Validate() error {
  8918  	invalidParams := request.ErrInvalidParams{Context: "AssociateContactWithAddressBookInput"}
  8919  	if s.AddressBookArn == nil {
  8920  		invalidParams.Add(request.NewErrParamRequired("AddressBookArn"))
  8921  	}
  8922  	if s.ContactArn == nil {
  8923  		invalidParams.Add(request.NewErrParamRequired("ContactArn"))
  8924  	}
  8925  
  8926  	if invalidParams.Len() > 0 {
  8927  		return invalidParams
  8928  	}
  8929  	return nil
  8930  }
  8931  
  8932  // SetAddressBookArn sets the AddressBookArn field's value.
  8933  func (s *AssociateContactWithAddressBookInput) SetAddressBookArn(v string) *AssociateContactWithAddressBookInput {
  8934  	s.AddressBookArn = &v
  8935  	return s
  8936  }
  8937  
  8938  // SetContactArn sets the ContactArn field's value.
  8939  func (s *AssociateContactWithAddressBookInput) SetContactArn(v string) *AssociateContactWithAddressBookInput {
  8940  	s.ContactArn = &v
  8941  	return s
  8942  }
  8943  
  8944  type AssociateContactWithAddressBookOutput struct {
  8945  	_ struct{} `type:"structure"`
  8946  }
  8947  
  8948  // String returns the string representation.
  8949  //
  8950  // API parameter values that are decorated as "sensitive" in the API will not
  8951  // be included in the string output. The member name will be present, but the
  8952  // value will be replaced with "sensitive".
  8953  func (s AssociateContactWithAddressBookOutput) String() string {
  8954  	return awsutil.Prettify(s)
  8955  }
  8956  
  8957  // GoString returns the string representation.
  8958  //
  8959  // API parameter values that are decorated as "sensitive" in the API will not
  8960  // be included in the string output. The member name will be present, but the
  8961  // value will be replaced with "sensitive".
  8962  func (s AssociateContactWithAddressBookOutput) GoString() string {
  8963  	return s.String()
  8964  }
  8965  
  8966  type AssociateDeviceWithNetworkProfileInput struct {
  8967  	_ struct{} `type:"structure"`
  8968  
  8969  	// The device ARN.
  8970  	//
  8971  	// DeviceArn is a required field
  8972  	DeviceArn *string `type:"string" required:"true"`
  8973  
  8974  	// The ARN of the network profile to associate with a device.
  8975  	//
  8976  	// NetworkProfileArn is a required field
  8977  	NetworkProfileArn *string `type:"string" required:"true"`
  8978  }
  8979  
  8980  // String returns the string representation.
  8981  //
  8982  // API parameter values that are decorated as "sensitive" in the API will not
  8983  // be included in the string output. The member name will be present, but the
  8984  // value will be replaced with "sensitive".
  8985  func (s AssociateDeviceWithNetworkProfileInput) String() string {
  8986  	return awsutil.Prettify(s)
  8987  }
  8988  
  8989  // GoString returns the string representation.
  8990  //
  8991  // API parameter values that are decorated as "sensitive" in the API will not
  8992  // be included in the string output. The member name will be present, but the
  8993  // value will be replaced with "sensitive".
  8994  func (s AssociateDeviceWithNetworkProfileInput) GoString() string {
  8995  	return s.String()
  8996  }
  8997  
  8998  // Validate inspects the fields of the type to determine if they are valid.
  8999  func (s *AssociateDeviceWithNetworkProfileInput) Validate() error {
  9000  	invalidParams := request.ErrInvalidParams{Context: "AssociateDeviceWithNetworkProfileInput"}
  9001  	if s.DeviceArn == nil {
  9002  		invalidParams.Add(request.NewErrParamRequired("DeviceArn"))
  9003  	}
  9004  	if s.NetworkProfileArn == nil {
  9005  		invalidParams.Add(request.NewErrParamRequired("NetworkProfileArn"))
  9006  	}
  9007  
  9008  	if invalidParams.Len() > 0 {
  9009  		return invalidParams
  9010  	}
  9011  	return nil
  9012  }
  9013  
  9014  // SetDeviceArn sets the DeviceArn field's value.
  9015  func (s *AssociateDeviceWithNetworkProfileInput) SetDeviceArn(v string) *AssociateDeviceWithNetworkProfileInput {
  9016  	s.DeviceArn = &v
  9017  	return s
  9018  }
  9019  
  9020  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
  9021  func (s *AssociateDeviceWithNetworkProfileInput) SetNetworkProfileArn(v string) *AssociateDeviceWithNetworkProfileInput {
  9022  	s.NetworkProfileArn = &v
  9023  	return s
  9024  }
  9025  
  9026  type AssociateDeviceWithNetworkProfileOutput struct {
  9027  	_ struct{} `type:"structure"`
  9028  }
  9029  
  9030  // String returns the string representation.
  9031  //
  9032  // API parameter values that are decorated as "sensitive" in the API will not
  9033  // be included in the string output. The member name will be present, but the
  9034  // value will be replaced with "sensitive".
  9035  func (s AssociateDeviceWithNetworkProfileOutput) String() string {
  9036  	return awsutil.Prettify(s)
  9037  }
  9038  
  9039  // GoString returns the string representation.
  9040  //
  9041  // API parameter values that are decorated as "sensitive" in the API will not
  9042  // be included in the string output. The member name will be present, but the
  9043  // value will be replaced with "sensitive".
  9044  func (s AssociateDeviceWithNetworkProfileOutput) GoString() string {
  9045  	return s.String()
  9046  }
  9047  
  9048  type AssociateDeviceWithRoomInput struct {
  9049  	_ struct{} `type:"structure"`
  9050  
  9051  	// The ARN of the device to associate to a room. Required.
  9052  	DeviceArn *string `type:"string"`
  9053  
  9054  	// The ARN of the room with which to associate the device. Required.
  9055  	RoomArn *string `type:"string"`
  9056  }
  9057  
  9058  // String returns the string representation.
  9059  //
  9060  // API parameter values that are decorated as "sensitive" in the API will not
  9061  // be included in the string output. The member name will be present, but the
  9062  // value will be replaced with "sensitive".
  9063  func (s AssociateDeviceWithRoomInput) String() string {
  9064  	return awsutil.Prettify(s)
  9065  }
  9066  
  9067  // GoString returns the string representation.
  9068  //
  9069  // API parameter values that are decorated as "sensitive" in the API will not
  9070  // be included in the string output. The member name will be present, but the
  9071  // value will be replaced with "sensitive".
  9072  func (s AssociateDeviceWithRoomInput) GoString() string {
  9073  	return s.String()
  9074  }
  9075  
  9076  // SetDeviceArn sets the DeviceArn field's value.
  9077  func (s *AssociateDeviceWithRoomInput) SetDeviceArn(v string) *AssociateDeviceWithRoomInput {
  9078  	s.DeviceArn = &v
  9079  	return s
  9080  }
  9081  
  9082  // SetRoomArn sets the RoomArn field's value.
  9083  func (s *AssociateDeviceWithRoomInput) SetRoomArn(v string) *AssociateDeviceWithRoomInput {
  9084  	s.RoomArn = &v
  9085  	return s
  9086  }
  9087  
  9088  type AssociateDeviceWithRoomOutput struct {
  9089  	_ struct{} `type:"structure"`
  9090  }
  9091  
  9092  // String returns the string representation.
  9093  //
  9094  // API parameter values that are decorated as "sensitive" in the API will not
  9095  // be included in the string output. The member name will be present, but the
  9096  // value will be replaced with "sensitive".
  9097  func (s AssociateDeviceWithRoomOutput) String() string {
  9098  	return awsutil.Prettify(s)
  9099  }
  9100  
  9101  // GoString returns the string representation.
  9102  //
  9103  // API parameter values that are decorated as "sensitive" in the API will not
  9104  // be included in the string output. The member name will be present, but the
  9105  // value will be replaced with "sensitive".
  9106  func (s AssociateDeviceWithRoomOutput) GoString() string {
  9107  	return s.String()
  9108  }
  9109  
  9110  type AssociateSkillGroupWithRoomInput struct {
  9111  	_ struct{} `type:"structure"`
  9112  
  9113  	// The ARN of the room with which to associate the skill group. Required.
  9114  	RoomArn *string `type:"string"`
  9115  
  9116  	// The ARN of the skill group to associate with a room. Required.
  9117  	SkillGroupArn *string `type:"string"`
  9118  }
  9119  
  9120  // String returns the string representation.
  9121  //
  9122  // API parameter values that are decorated as "sensitive" in the API will not
  9123  // be included in the string output. The member name will be present, but the
  9124  // value will be replaced with "sensitive".
  9125  func (s AssociateSkillGroupWithRoomInput) String() string {
  9126  	return awsutil.Prettify(s)
  9127  }
  9128  
  9129  // GoString returns the string representation.
  9130  //
  9131  // API parameter values that are decorated as "sensitive" in the API will not
  9132  // be included in the string output. The member name will be present, but the
  9133  // value will be replaced with "sensitive".
  9134  func (s AssociateSkillGroupWithRoomInput) GoString() string {
  9135  	return s.String()
  9136  }
  9137  
  9138  // SetRoomArn sets the RoomArn field's value.
  9139  func (s *AssociateSkillGroupWithRoomInput) SetRoomArn(v string) *AssociateSkillGroupWithRoomInput {
  9140  	s.RoomArn = &v
  9141  	return s
  9142  }
  9143  
  9144  // SetSkillGroupArn sets the SkillGroupArn field's value.
  9145  func (s *AssociateSkillGroupWithRoomInput) SetSkillGroupArn(v string) *AssociateSkillGroupWithRoomInput {
  9146  	s.SkillGroupArn = &v
  9147  	return s
  9148  }
  9149  
  9150  type AssociateSkillGroupWithRoomOutput struct {
  9151  	_ struct{} `type:"structure"`
  9152  }
  9153  
  9154  // String returns the string representation.
  9155  //
  9156  // API parameter values that are decorated as "sensitive" in the API will not
  9157  // be included in the string output. The member name will be present, but the
  9158  // value will be replaced with "sensitive".
  9159  func (s AssociateSkillGroupWithRoomOutput) String() string {
  9160  	return awsutil.Prettify(s)
  9161  }
  9162  
  9163  // GoString returns the string representation.
  9164  //
  9165  // API parameter values that are decorated as "sensitive" in the API will not
  9166  // be included in the string output. The member name will be present, but the
  9167  // value will be replaced with "sensitive".
  9168  func (s AssociateSkillGroupWithRoomOutput) GoString() string {
  9169  	return s.String()
  9170  }
  9171  
  9172  type AssociateSkillWithSkillGroupInput struct {
  9173  	_ struct{} `type:"structure"`
  9174  
  9175  	// The ARN of the skill group to associate the skill to. Required.
  9176  	SkillGroupArn *string `type:"string"`
  9177  
  9178  	// The unique identifier of the skill.
  9179  	//
  9180  	// SkillId is a required field
  9181  	SkillId *string `type:"string" required:"true"`
  9182  }
  9183  
  9184  // String returns the string representation.
  9185  //
  9186  // API parameter values that are decorated as "sensitive" in the API will not
  9187  // be included in the string output. The member name will be present, but the
  9188  // value will be replaced with "sensitive".
  9189  func (s AssociateSkillWithSkillGroupInput) String() string {
  9190  	return awsutil.Prettify(s)
  9191  }
  9192  
  9193  // GoString returns the string representation.
  9194  //
  9195  // API parameter values that are decorated as "sensitive" in the API will not
  9196  // be included in the string output. The member name will be present, but the
  9197  // value will be replaced with "sensitive".
  9198  func (s AssociateSkillWithSkillGroupInput) GoString() string {
  9199  	return s.String()
  9200  }
  9201  
  9202  // Validate inspects the fields of the type to determine if they are valid.
  9203  func (s *AssociateSkillWithSkillGroupInput) Validate() error {
  9204  	invalidParams := request.ErrInvalidParams{Context: "AssociateSkillWithSkillGroupInput"}
  9205  	if s.SkillId == nil {
  9206  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
  9207  	}
  9208  
  9209  	if invalidParams.Len() > 0 {
  9210  		return invalidParams
  9211  	}
  9212  	return nil
  9213  }
  9214  
  9215  // SetSkillGroupArn sets the SkillGroupArn field's value.
  9216  func (s *AssociateSkillWithSkillGroupInput) SetSkillGroupArn(v string) *AssociateSkillWithSkillGroupInput {
  9217  	s.SkillGroupArn = &v
  9218  	return s
  9219  }
  9220  
  9221  // SetSkillId sets the SkillId field's value.
  9222  func (s *AssociateSkillWithSkillGroupInput) SetSkillId(v string) *AssociateSkillWithSkillGroupInput {
  9223  	s.SkillId = &v
  9224  	return s
  9225  }
  9226  
  9227  type AssociateSkillWithSkillGroupOutput struct {
  9228  	_ struct{} `type:"structure"`
  9229  }
  9230  
  9231  // String returns the string representation.
  9232  //
  9233  // API parameter values that are decorated as "sensitive" in the API will not
  9234  // be included in the string output. The member name will be present, but the
  9235  // value will be replaced with "sensitive".
  9236  func (s AssociateSkillWithSkillGroupOutput) String() string {
  9237  	return awsutil.Prettify(s)
  9238  }
  9239  
  9240  // GoString returns the string representation.
  9241  //
  9242  // API parameter values that are decorated as "sensitive" in the API will not
  9243  // be included in the string output. The member name will be present, but the
  9244  // value will be replaced with "sensitive".
  9245  func (s AssociateSkillWithSkillGroupOutput) GoString() string {
  9246  	return s.String()
  9247  }
  9248  
  9249  type AssociateSkillWithUsersInput struct {
  9250  	_ struct{} `type:"structure"`
  9251  
  9252  	// The private skill ID you want to make available to enrolled users.
  9253  	//
  9254  	// SkillId is a required field
  9255  	SkillId *string `type:"string" required:"true"`
  9256  }
  9257  
  9258  // String returns the string representation.
  9259  //
  9260  // API parameter values that are decorated as "sensitive" in the API will not
  9261  // be included in the string output. The member name will be present, but the
  9262  // value will be replaced with "sensitive".
  9263  func (s AssociateSkillWithUsersInput) String() string {
  9264  	return awsutil.Prettify(s)
  9265  }
  9266  
  9267  // GoString returns the string representation.
  9268  //
  9269  // API parameter values that are decorated as "sensitive" in the API will not
  9270  // be included in the string output. The member name will be present, but the
  9271  // value will be replaced with "sensitive".
  9272  func (s AssociateSkillWithUsersInput) GoString() string {
  9273  	return s.String()
  9274  }
  9275  
  9276  // Validate inspects the fields of the type to determine if they are valid.
  9277  func (s *AssociateSkillWithUsersInput) Validate() error {
  9278  	invalidParams := request.ErrInvalidParams{Context: "AssociateSkillWithUsersInput"}
  9279  	if s.SkillId == nil {
  9280  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
  9281  	}
  9282  
  9283  	if invalidParams.Len() > 0 {
  9284  		return invalidParams
  9285  	}
  9286  	return nil
  9287  }
  9288  
  9289  // SetSkillId sets the SkillId field's value.
  9290  func (s *AssociateSkillWithUsersInput) SetSkillId(v string) *AssociateSkillWithUsersInput {
  9291  	s.SkillId = &v
  9292  	return s
  9293  }
  9294  
  9295  type AssociateSkillWithUsersOutput struct {
  9296  	_ struct{} `type:"structure"`
  9297  }
  9298  
  9299  // String returns the string representation.
  9300  //
  9301  // API parameter values that are decorated as "sensitive" in the API will not
  9302  // be included in the string output. The member name will be present, but the
  9303  // value will be replaced with "sensitive".
  9304  func (s AssociateSkillWithUsersOutput) String() string {
  9305  	return awsutil.Prettify(s)
  9306  }
  9307  
  9308  // GoString returns the string representation.
  9309  //
  9310  // API parameter values that are decorated as "sensitive" in the API will not
  9311  // be included in the string output. The member name will be present, but the
  9312  // value will be replaced with "sensitive".
  9313  func (s AssociateSkillWithUsersOutput) GoString() string {
  9314  	return s.String()
  9315  }
  9316  
  9317  // The audio message. There is a 1 MB limit on the audio file input and the
  9318  // only supported format is MP3. To convert your MP3 audio files to an Alexa-friendly,
  9319  //
  9320  // required codec version (MPEG version 2) and bit rate (48 kbps), you might
  9321  // use converter software. One option for this is a command-line tool, FFmpeg.
  9322  // For more information, see FFmpeg (https://www.ffmpeg.org/). The following
  9323  // command converts the provided <input-file> to an MP3 file that is played
  9324  // in the announcement:
  9325  //
  9326  // ffmpeg -i <input-file> -ac 2 -codec:a libmp3lame -b:a 48k -ar 16000 <output-file.mp3>
  9327  type Audio struct {
  9328  	_ struct{} `type:"structure"`
  9329  
  9330  	// The locale of the audio message. Currently, en-US is supported.
  9331  	//
  9332  	// Locale is a required field
  9333  	Locale *string `type:"string" required:"true" enum:"Locale"`
  9334  
  9335  	// The location of the audio file. Currently, S3 URLs are supported. Only S3
  9336  	// locations comprised of safe characters are valid. For more information, see
  9337  	// Safe Characters (https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMetadata.html#Safe%20Characters).
  9338  	//
  9339  	// Location is a required field
  9340  	Location *string `type:"string" required:"true"`
  9341  }
  9342  
  9343  // String returns the string representation.
  9344  //
  9345  // API parameter values that are decorated as "sensitive" in the API will not
  9346  // be included in the string output. The member name will be present, but the
  9347  // value will be replaced with "sensitive".
  9348  func (s Audio) String() string {
  9349  	return awsutil.Prettify(s)
  9350  }
  9351  
  9352  // GoString returns the string representation.
  9353  //
  9354  // API parameter values that are decorated as "sensitive" in the API will not
  9355  // be included in the string output. The member name will be present, but the
  9356  // value will be replaced with "sensitive".
  9357  func (s Audio) GoString() string {
  9358  	return s.String()
  9359  }
  9360  
  9361  // Validate inspects the fields of the type to determine if they are valid.
  9362  func (s *Audio) Validate() error {
  9363  	invalidParams := request.ErrInvalidParams{Context: "Audio"}
  9364  	if s.Locale == nil {
  9365  		invalidParams.Add(request.NewErrParamRequired("Locale"))
  9366  	}
  9367  	if s.Location == nil {
  9368  		invalidParams.Add(request.NewErrParamRequired("Location"))
  9369  	}
  9370  
  9371  	if invalidParams.Len() > 0 {
  9372  		return invalidParams
  9373  	}
  9374  	return nil
  9375  }
  9376  
  9377  // SetLocale sets the Locale field's value.
  9378  func (s *Audio) SetLocale(v string) *Audio {
  9379  	s.Locale = &v
  9380  	return s
  9381  }
  9382  
  9383  // SetLocation sets the Location field's value.
  9384  func (s *Audio) SetLocation(v string) *Audio {
  9385  	s.Location = &v
  9386  	return s
  9387  }
  9388  
  9389  // Usage report with specified parameters.
  9390  type BusinessReport struct {
  9391  	_ struct{} `type:"structure"`
  9392  
  9393  	// The time of report delivery.
  9394  	DeliveryTime *time.Time `type:"timestamp"`
  9395  
  9396  	// The download link where a user can download the report.
  9397  	DownloadUrl *string `type:"string"`
  9398  
  9399  	// The failure code.
  9400  	FailureCode *string `type:"string" enum:"BusinessReportFailureCode"`
  9401  
  9402  	// The S3 location of the output reports.
  9403  	S3Location *BusinessReportS3Location `type:"structure"`
  9404  
  9405  	// The status of the report generation execution (RUNNING, SUCCEEDED, or FAILED).
  9406  	Status *string `type:"string" enum:"BusinessReportStatus"`
  9407  }
  9408  
  9409  // String returns the string representation.
  9410  //
  9411  // API parameter values that are decorated as "sensitive" in the API will not
  9412  // be included in the string output. The member name will be present, but the
  9413  // value will be replaced with "sensitive".
  9414  func (s BusinessReport) String() string {
  9415  	return awsutil.Prettify(s)
  9416  }
  9417  
  9418  // GoString returns the string representation.
  9419  //
  9420  // API parameter values that are decorated as "sensitive" in the API will not
  9421  // be included in the string output. The member name will be present, but the
  9422  // value will be replaced with "sensitive".
  9423  func (s BusinessReport) GoString() string {
  9424  	return s.String()
  9425  }
  9426  
  9427  // SetDeliveryTime sets the DeliveryTime field's value.
  9428  func (s *BusinessReport) SetDeliveryTime(v time.Time) *BusinessReport {
  9429  	s.DeliveryTime = &v
  9430  	return s
  9431  }
  9432  
  9433  // SetDownloadUrl sets the DownloadUrl field's value.
  9434  func (s *BusinessReport) SetDownloadUrl(v string) *BusinessReport {
  9435  	s.DownloadUrl = &v
  9436  	return s
  9437  }
  9438  
  9439  // SetFailureCode sets the FailureCode field's value.
  9440  func (s *BusinessReport) SetFailureCode(v string) *BusinessReport {
  9441  	s.FailureCode = &v
  9442  	return s
  9443  }
  9444  
  9445  // SetS3Location sets the S3Location field's value.
  9446  func (s *BusinessReport) SetS3Location(v *BusinessReportS3Location) *BusinessReport {
  9447  	s.S3Location = v
  9448  	return s
  9449  }
  9450  
  9451  // SetStatus sets the Status field's value.
  9452  func (s *BusinessReport) SetStatus(v string) *BusinessReport {
  9453  	s.Status = &v
  9454  	return s
  9455  }
  9456  
  9457  // The content range of the report.
  9458  type BusinessReportContentRange struct {
  9459  	_ struct{} `type:"structure"`
  9460  
  9461  	// The interval of the content range.
  9462  	//
  9463  	// Interval is a required field
  9464  	Interval *string `type:"string" required:"true" enum:"BusinessReportInterval"`
  9465  }
  9466  
  9467  // String returns the string representation.
  9468  //
  9469  // API parameter values that are decorated as "sensitive" in the API will not
  9470  // be included in the string output. The member name will be present, but the
  9471  // value will be replaced with "sensitive".
  9472  func (s BusinessReportContentRange) String() string {
  9473  	return awsutil.Prettify(s)
  9474  }
  9475  
  9476  // GoString returns the string representation.
  9477  //
  9478  // API parameter values that are decorated as "sensitive" in the API will not
  9479  // be included in the string output. The member name will be present, but the
  9480  // value will be replaced with "sensitive".
  9481  func (s BusinessReportContentRange) GoString() string {
  9482  	return s.String()
  9483  }
  9484  
  9485  // Validate inspects the fields of the type to determine if they are valid.
  9486  func (s *BusinessReportContentRange) Validate() error {
  9487  	invalidParams := request.ErrInvalidParams{Context: "BusinessReportContentRange"}
  9488  	if s.Interval == nil {
  9489  		invalidParams.Add(request.NewErrParamRequired("Interval"))
  9490  	}
  9491  
  9492  	if invalidParams.Len() > 0 {
  9493  		return invalidParams
  9494  	}
  9495  	return nil
  9496  }
  9497  
  9498  // SetInterval sets the Interval field's value.
  9499  func (s *BusinessReportContentRange) SetInterval(v string) *BusinessReportContentRange {
  9500  	s.Interval = &v
  9501  	return s
  9502  }
  9503  
  9504  // The recurrence of the reports.
  9505  type BusinessReportRecurrence struct {
  9506  	_ struct{} `type:"structure"`
  9507  
  9508  	// The start date.
  9509  	StartDate *string `type:"string"`
  9510  }
  9511  
  9512  // String returns the string representation.
  9513  //
  9514  // API parameter values that are decorated as "sensitive" in the API will not
  9515  // be included in the string output. The member name will be present, but the
  9516  // value will be replaced with "sensitive".
  9517  func (s BusinessReportRecurrence) String() string {
  9518  	return awsutil.Prettify(s)
  9519  }
  9520  
  9521  // GoString returns the string representation.
  9522  //
  9523  // API parameter values that are decorated as "sensitive" in the API will not
  9524  // be included in the string output. The member name will be present, but the
  9525  // value will be replaced with "sensitive".
  9526  func (s BusinessReportRecurrence) GoString() string {
  9527  	return s.String()
  9528  }
  9529  
  9530  // SetStartDate sets the StartDate field's value.
  9531  func (s *BusinessReportRecurrence) SetStartDate(v string) *BusinessReportRecurrence {
  9532  	s.StartDate = &v
  9533  	return s
  9534  }
  9535  
  9536  // The S3 location of the output reports.
  9537  type BusinessReportS3Location struct {
  9538  	_ struct{} `type:"structure"`
  9539  
  9540  	// The S3 bucket name of the output reports.
  9541  	BucketName *string `type:"string"`
  9542  
  9543  	// The path of the business report.
  9544  	Path *string `type:"string"`
  9545  }
  9546  
  9547  // String returns the string representation.
  9548  //
  9549  // API parameter values that are decorated as "sensitive" in the API will not
  9550  // be included in the string output. The member name will be present, but the
  9551  // value will be replaced with "sensitive".
  9552  func (s BusinessReportS3Location) String() string {
  9553  	return awsutil.Prettify(s)
  9554  }
  9555  
  9556  // GoString returns the string representation.
  9557  //
  9558  // API parameter values that are decorated as "sensitive" in the API will not
  9559  // be included in the string output. The member name will be present, but the
  9560  // value will be replaced with "sensitive".
  9561  func (s BusinessReportS3Location) GoString() string {
  9562  	return s.String()
  9563  }
  9564  
  9565  // SetBucketName sets the BucketName field's value.
  9566  func (s *BusinessReportS3Location) SetBucketName(v string) *BusinessReportS3Location {
  9567  	s.BucketName = &v
  9568  	return s
  9569  }
  9570  
  9571  // SetPath sets the Path field's value.
  9572  func (s *BusinessReportS3Location) SetPath(v string) *BusinessReportS3Location {
  9573  	s.Path = &v
  9574  	return s
  9575  }
  9576  
  9577  // The schedule of the usage report.
  9578  type BusinessReportSchedule struct {
  9579  	_ struct{} `type:"structure"`
  9580  
  9581  	// The content range of the reports.
  9582  	ContentRange *BusinessReportContentRange `type:"structure"`
  9583  
  9584  	// The format of the generated report (individual CSV files or zipped files
  9585  	// of individual files).
  9586  	Format *string `type:"string" enum:"BusinessReportFormat"`
  9587  
  9588  	// The details of the last business report delivery for a specified time interval.
  9589  	LastBusinessReport *BusinessReport `type:"structure"`
  9590  
  9591  	// The recurrence of the reports.
  9592  	Recurrence *BusinessReportRecurrence `type:"structure"`
  9593  
  9594  	// The S3 bucket name of the output reports.
  9595  	S3BucketName *string `type:"string"`
  9596  
  9597  	// The S3 key where the report is delivered.
  9598  	S3KeyPrefix *string `type:"string"`
  9599  
  9600  	// The ARN of the business report schedule.
  9601  	ScheduleArn *string `type:"string"`
  9602  
  9603  	// The name identifier of the schedule.
  9604  	ScheduleName *string `type:"string"`
  9605  }
  9606  
  9607  // String returns the string representation.
  9608  //
  9609  // API parameter values that are decorated as "sensitive" in the API will not
  9610  // be included in the string output. The member name will be present, but the
  9611  // value will be replaced with "sensitive".
  9612  func (s BusinessReportSchedule) String() string {
  9613  	return awsutil.Prettify(s)
  9614  }
  9615  
  9616  // GoString returns the string representation.
  9617  //
  9618  // API parameter values that are decorated as "sensitive" in the API will not
  9619  // be included in the string output. The member name will be present, but the
  9620  // value will be replaced with "sensitive".
  9621  func (s BusinessReportSchedule) GoString() string {
  9622  	return s.String()
  9623  }
  9624  
  9625  // SetContentRange sets the ContentRange field's value.
  9626  func (s *BusinessReportSchedule) SetContentRange(v *BusinessReportContentRange) *BusinessReportSchedule {
  9627  	s.ContentRange = v
  9628  	return s
  9629  }
  9630  
  9631  // SetFormat sets the Format field's value.
  9632  func (s *BusinessReportSchedule) SetFormat(v string) *BusinessReportSchedule {
  9633  	s.Format = &v
  9634  	return s
  9635  }
  9636  
  9637  // SetLastBusinessReport sets the LastBusinessReport field's value.
  9638  func (s *BusinessReportSchedule) SetLastBusinessReport(v *BusinessReport) *BusinessReportSchedule {
  9639  	s.LastBusinessReport = v
  9640  	return s
  9641  }
  9642  
  9643  // SetRecurrence sets the Recurrence field's value.
  9644  func (s *BusinessReportSchedule) SetRecurrence(v *BusinessReportRecurrence) *BusinessReportSchedule {
  9645  	s.Recurrence = v
  9646  	return s
  9647  }
  9648  
  9649  // SetS3BucketName sets the S3BucketName field's value.
  9650  func (s *BusinessReportSchedule) SetS3BucketName(v string) *BusinessReportSchedule {
  9651  	s.S3BucketName = &v
  9652  	return s
  9653  }
  9654  
  9655  // SetS3KeyPrefix sets the S3KeyPrefix field's value.
  9656  func (s *BusinessReportSchedule) SetS3KeyPrefix(v string) *BusinessReportSchedule {
  9657  	s.S3KeyPrefix = &v
  9658  	return s
  9659  }
  9660  
  9661  // SetScheduleArn sets the ScheduleArn field's value.
  9662  func (s *BusinessReportSchedule) SetScheduleArn(v string) *BusinessReportSchedule {
  9663  	s.ScheduleArn = &v
  9664  	return s
  9665  }
  9666  
  9667  // SetScheduleName sets the ScheduleName field's value.
  9668  func (s *BusinessReportSchedule) SetScheduleName(v string) *BusinessReportSchedule {
  9669  	s.ScheduleName = &v
  9670  	return s
  9671  }
  9672  
  9673  // The skill store category that is shown. Alexa skills are assigned a specific
  9674  // skill category during creation, such as News, Social, and Sports.
  9675  type Category struct {
  9676  	_ struct{} `type:"structure"`
  9677  
  9678  	// The ID of the skill store category.
  9679  	CategoryId *int64 `min:"1" type:"long"`
  9680  
  9681  	// The name of the skill store category.
  9682  	CategoryName *string `type:"string"`
  9683  }
  9684  
  9685  // String returns the string representation.
  9686  //
  9687  // API parameter values that are decorated as "sensitive" in the API will not
  9688  // be included in the string output. The member name will be present, but the
  9689  // value will be replaced with "sensitive".
  9690  func (s Category) String() string {
  9691  	return awsutil.Prettify(s)
  9692  }
  9693  
  9694  // GoString returns the string representation.
  9695  //
  9696  // API parameter values that are decorated as "sensitive" in the API will not
  9697  // be included in the string output. The member name will be present, but the
  9698  // value will be replaced with "sensitive".
  9699  func (s Category) GoString() string {
  9700  	return s.String()
  9701  }
  9702  
  9703  // SetCategoryId sets the CategoryId field's value.
  9704  func (s *Category) SetCategoryId(v int64) *Category {
  9705  	s.CategoryId = &v
  9706  	return s
  9707  }
  9708  
  9709  // SetCategoryName sets the CategoryName field's value.
  9710  func (s *Category) SetCategoryName(v string) *Category {
  9711  	s.CategoryName = &v
  9712  	return s
  9713  }
  9714  
  9715  // There is a concurrent modification of resources.
  9716  type ConcurrentModificationException struct {
  9717  	_            struct{}                  `type:"structure"`
  9718  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  9719  
  9720  	Message_ *string `locationName:"Message" type:"string"`
  9721  }
  9722  
  9723  // String returns the string representation.
  9724  //
  9725  // API parameter values that are decorated as "sensitive" in the API will not
  9726  // be included in the string output. The member name will be present, but the
  9727  // value will be replaced with "sensitive".
  9728  func (s ConcurrentModificationException) String() string {
  9729  	return awsutil.Prettify(s)
  9730  }
  9731  
  9732  // GoString returns the string representation.
  9733  //
  9734  // API parameter values that are decorated as "sensitive" in the API will not
  9735  // be included in the string output. The member name will be present, but the
  9736  // value will be replaced with "sensitive".
  9737  func (s ConcurrentModificationException) GoString() string {
  9738  	return s.String()
  9739  }
  9740  
  9741  func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
  9742  	return &ConcurrentModificationException{
  9743  		RespMetadata: v,
  9744  	}
  9745  }
  9746  
  9747  // Code returns the exception type name.
  9748  func (s *ConcurrentModificationException) Code() string {
  9749  	return "ConcurrentModificationException"
  9750  }
  9751  
  9752  // Message returns the exception's message.
  9753  func (s *ConcurrentModificationException) Message() string {
  9754  	if s.Message_ != nil {
  9755  		return *s.Message_
  9756  	}
  9757  	return ""
  9758  }
  9759  
  9760  // OrigErr always returns nil, satisfies awserr.Error interface.
  9761  func (s *ConcurrentModificationException) OrigErr() error {
  9762  	return nil
  9763  }
  9764  
  9765  func (s *ConcurrentModificationException) Error() string {
  9766  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
  9767  }
  9768  
  9769  // Status code returns the HTTP status code for the request's response error.
  9770  func (s *ConcurrentModificationException) StatusCode() int {
  9771  	return s.RespMetadata.StatusCode
  9772  }
  9773  
  9774  // RequestID returns the service's response RequestID for request.
  9775  func (s *ConcurrentModificationException) RequestID() string {
  9776  	return s.RespMetadata.RequestID
  9777  }
  9778  
  9779  // The default conference provider that is used if no other scheduled meetings
  9780  // are detected.
  9781  type ConferencePreference struct {
  9782  	_ struct{} `type:"structure"`
  9783  
  9784  	// The ARN of the default conference provider.
  9785  	DefaultConferenceProviderArn *string `type:"string"`
  9786  }
  9787  
  9788  // String returns the string representation.
  9789  //
  9790  // API parameter values that are decorated as "sensitive" in the API will not
  9791  // be included in the string output. The member name will be present, but the
  9792  // value will be replaced with "sensitive".
  9793  func (s ConferencePreference) String() string {
  9794  	return awsutil.Prettify(s)
  9795  }
  9796  
  9797  // GoString returns the string representation.
  9798  //
  9799  // API parameter values that are decorated as "sensitive" in the API will not
  9800  // be included in the string output. The member name will be present, but the
  9801  // value will be replaced with "sensitive".
  9802  func (s ConferencePreference) GoString() string {
  9803  	return s.String()
  9804  }
  9805  
  9806  // SetDefaultConferenceProviderArn sets the DefaultConferenceProviderArn field's value.
  9807  func (s *ConferencePreference) SetDefaultConferenceProviderArn(v string) *ConferencePreference {
  9808  	s.DefaultConferenceProviderArn = &v
  9809  	return s
  9810  }
  9811  
  9812  // An entity that provides a conferencing solution. Alexa for Business acts
  9813  // as the voice interface and mediator that connects users to their preferred
  9814  // conference provider. Examples of conference providers include Amazon Chime,
  9815  // Zoom, Cisco, and Polycom.
  9816  type ConferenceProvider struct {
  9817  	_ struct{} `type:"structure"`
  9818  
  9819  	// The ARN of the newly created conference provider.
  9820  	Arn *string `type:"string"`
  9821  
  9822  	// The IP endpoint and protocol for calling.
  9823  	IPDialIn *IPDialIn `type:"structure"`
  9824  
  9825  	// The meeting settings for the conference provider.
  9826  	MeetingSetting *MeetingSetting `type:"structure"`
  9827  
  9828  	// The name of the conference provider.
  9829  	Name *string `min:"1" type:"string"`
  9830  
  9831  	// The information for PSTN conferencing.
  9832  	PSTNDialIn *PSTNDialIn `type:"structure"`
  9833  
  9834  	// The type of conference providers.
  9835  	Type *string `type:"string" enum:"ConferenceProviderType"`
  9836  }
  9837  
  9838  // String returns the string representation.
  9839  //
  9840  // API parameter values that are decorated as "sensitive" in the API will not
  9841  // be included in the string output. The member name will be present, but the
  9842  // value will be replaced with "sensitive".
  9843  func (s ConferenceProvider) String() string {
  9844  	return awsutil.Prettify(s)
  9845  }
  9846  
  9847  // GoString returns the string representation.
  9848  //
  9849  // API parameter values that are decorated as "sensitive" in the API will not
  9850  // be included in the string output. The member name will be present, but the
  9851  // value will be replaced with "sensitive".
  9852  func (s ConferenceProvider) GoString() string {
  9853  	return s.String()
  9854  }
  9855  
  9856  // SetArn sets the Arn field's value.
  9857  func (s *ConferenceProvider) SetArn(v string) *ConferenceProvider {
  9858  	s.Arn = &v
  9859  	return s
  9860  }
  9861  
  9862  // SetIPDialIn sets the IPDialIn field's value.
  9863  func (s *ConferenceProvider) SetIPDialIn(v *IPDialIn) *ConferenceProvider {
  9864  	s.IPDialIn = v
  9865  	return s
  9866  }
  9867  
  9868  // SetMeetingSetting sets the MeetingSetting field's value.
  9869  func (s *ConferenceProvider) SetMeetingSetting(v *MeetingSetting) *ConferenceProvider {
  9870  	s.MeetingSetting = v
  9871  	return s
  9872  }
  9873  
  9874  // SetName sets the Name field's value.
  9875  func (s *ConferenceProvider) SetName(v string) *ConferenceProvider {
  9876  	s.Name = &v
  9877  	return s
  9878  }
  9879  
  9880  // SetPSTNDialIn sets the PSTNDialIn field's value.
  9881  func (s *ConferenceProvider) SetPSTNDialIn(v *PSTNDialIn) *ConferenceProvider {
  9882  	s.PSTNDialIn = v
  9883  	return s
  9884  }
  9885  
  9886  // SetType sets the Type field's value.
  9887  func (s *ConferenceProvider) SetType(v string) *ConferenceProvider {
  9888  	s.Type = &v
  9889  	return s
  9890  }
  9891  
  9892  // A contact with attributes.
  9893  type Contact struct {
  9894  	_ struct{} `type:"structure"`
  9895  
  9896  	// The ARN of the contact.
  9897  	ContactArn *string `type:"string"`
  9898  
  9899  	// The name of the contact to display on the console.
  9900  	DisplayName *string `min:"1" type:"string"`
  9901  
  9902  	// The first name of the contact, used to call the contact on the device.
  9903  	FirstName *string `min:"1" type:"string"`
  9904  
  9905  	// The last name of the contact, used to call the contact on the device.
  9906  	LastName *string `min:"1" type:"string"`
  9907  
  9908  	// The phone number of the contact. The phone number type defaults to WORK.
  9909  	// You can either specify PhoneNumber or PhoneNumbers. We recommend that you
  9910  	// use PhoneNumbers, which lets you specify the phone number type and multiple
  9911  	// numbers.
  9912  	//
  9913  	// PhoneNumber is a sensitive parameter and its value will be
  9914  	// replaced with "sensitive" in string returned by Contact's
  9915  	// String and GoString methods.
  9916  	PhoneNumber *string `type:"string" sensitive:"true"`
  9917  
  9918  	// The list of phone numbers for the contact.
  9919  	PhoneNumbers []*PhoneNumber `type:"list"`
  9920  
  9921  	// The list of SIP addresses for the contact.
  9922  	SipAddresses []*SipAddress `type:"list"`
  9923  }
  9924  
  9925  // String returns the string representation.
  9926  //
  9927  // API parameter values that are decorated as "sensitive" in the API will not
  9928  // be included in the string output. The member name will be present, but the
  9929  // value will be replaced with "sensitive".
  9930  func (s Contact) String() string {
  9931  	return awsutil.Prettify(s)
  9932  }
  9933  
  9934  // GoString returns the string representation.
  9935  //
  9936  // API parameter values that are decorated as "sensitive" in the API will not
  9937  // be included in the string output. The member name will be present, but the
  9938  // value will be replaced with "sensitive".
  9939  func (s Contact) GoString() string {
  9940  	return s.String()
  9941  }
  9942  
  9943  // SetContactArn sets the ContactArn field's value.
  9944  func (s *Contact) SetContactArn(v string) *Contact {
  9945  	s.ContactArn = &v
  9946  	return s
  9947  }
  9948  
  9949  // SetDisplayName sets the DisplayName field's value.
  9950  func (s *Contact) SetDisplayName(v string) *Contact {
  9951  	s.DisplayName = &v
  9952  	return s
  9953  }
  9954  
  9955  // SetFirstName sets the FirstName field's value.
  9956  func (s *Contact) SetFirstName(v string) *Contact {
  9957  	s.FirstName = &v
  9958  	return s
  9959  }
  9960  
  9961  // SetLastName sets the LastName field's value.
  9962  func (s *Contact) SetLastName(v string) *Contact {
  9963  	s.LastName = &v
  9964  	return s
  9965  }
  9966  
  9967  // SetPhoneNumber sets the PhoneNumber field's value.
  9968  func (s *Contact) SetPhoneNumber(v string) *Contact {
  9969  	s.PhoneNumber = &v
  9970  	return s
  9971  }
  9972  
  9973  // SetPhoneNumbers sets the PhoneNumbers field's value.
  9974  func (s *Contact) SetPhoneNumbers(v []*PhoneNumber) *Contact {
  9975  	s.PhoneNumbers = v
  9976  	return s
  9977  }
  9978  
  9979  // SetSipAddresses sets the SipAddresses field's value.
  9980  func (s *Contact) SetSipAddresses(v []*SipAddress) *Contact {
  9981  	s.SipAddresses = v
  9982  	return s
  9983  }
  9984  
  9985  // Information related to a contact.
  9986  type ContactData struct {
  9987  	_ struct{} `type:"structure"`
  9988  
  9989  	// The ARN of the contact.
  9990  	ContactArn *string `type:"string"`
  9991  
  9992  	// The name of the contact to display on the console.
  9993  	DisplayName *string `min:"1" type:"string"`
  9994  
  9995  	// The first name of the contact, used to call the contact on the device.
  9996  	FirstName *string `min:"1" type:"string"`
  9997  
  9998  	// The last name of the contact, used to call the contact on the device.
  9999  	LastName *string `min:"1" type:"string"`
 10000  
 10001  	// The phone number of the contact. The phone number type defaults to WORK.
 10002  	// You can specify PhoneNumber or PhoneNumbers. We recommend that you use PhoneNumbers,
 10003  	// which lets you specify the phone number type and multiple numbers.
 10004  	//
 10005  	// PhoneNumber is a sensitive parameter and its value will be
 10006  	// replaced with "sensitive" in string returned by ContactData's
 10007  	// String and GoString methods.
 10008  	PhoneNumber *string `type:"string" sensitive:"true"`
 10009  
 10010  	// The list of phone numbers for the contact.
 10011  	PhoneNumbers []*PhoneNumber `type:"list"`
 10012  
 10013  	// The list of SIP addresses for the contact.
 10014  	SipAddresses []*SipAddress `type:"list"`
 10015  }
 10016  
 10017  // String returns the string representation.
 10018  //
 10019  // API parameter values that are decorated as "sensitive" in the API will not
 10020  // be included in the string output. The member name will be present, but the
 10021  // value will be replaced with "sensitive".
 10022  func (s ContactData) String() string {
 10023  	return awsutil.Prettify(s)
 10024  }
 10025  
 10026  // GoString returns the string representation.
 10027  //
 10028  // API parameter values that are decorated as "sensitive" in the API will not
 10029  // be included in the string output. The member name will be present, but the
 10030  // value will be replaced with "sensitive".
 10031  func (s ContactData) GoString() string {
 10032  	return s.String()
 10033  }
 10034  
 10035  // SetContactArn sets the ContactArn field's value.
 10036  func (s *ContactData) SetContactArn(v string) *ContactData {
 10037  	s.ContactArn = &v
 10038  	return s
 10039  }
 10040  
 10041  // SetDisplayName sets the DisplayName field's value.
 10042  func (s *ContactData) SetDisplayName(v string) *ContactData {
 10043  	s.DisplayName = &v
 10044  	return s
 10045  }
 10046  
 10047  // SetFirstName sets the FirstName field's value.
 10048  func (s *ContactData) SetFirstName(v string) *ContactData {
 10049  	s.FirstName = &v
 10050  	return s
 10051  }
 10052  
 10053  // SetLastName sets the LastName field's value.
 10054  func (s *ContactData) SetLastName(v string) *ContactData {
 10055  	s.LastName = &v
 10056  	return s
 10057  }
 10058  
 10059  // SetPhoneNumber sets the PhoneNumber field's value.
 10060  func (s *ContactData) SetPhoneNumber(v string) *ContactData {
 10061  	s.PhoneNumber = &v
 10062  	return s
 10063  }
 10064  
 10065  // SetPhoneNumbers sets the PhoneNumbers field's value.
 10066  func (s *ContactData) SetPhoneNumbers(v []*PhoneNumber) *ContactData {
 10067  	s.PhoneNumbers = v
 10068  	return s
 10069  }
 10070  
 10071  // SetSipAddresses sets the SipAddresses field's value.
 10072  func (s *ContactData) SetSipAddresses(v []*SipAddress) *ContactData {
 10073  	s.SipAddresses = v
 10074  	return s
 10075  }
 10076  
 10077  // The content definition. This can contain only one text, SSML, or audio list
 10078  // object.
 10079  type Content struct {
 10080  	_ struct{} `type:"structure"`
 10081  
 10082  	// The list of audio messages.
 10083  	AudioList []*Audio `type:"list"`
 10084  
 10085  	// The list of SSML messages.
 10086  	SsmlList []*Ssml `type:"list"`
 10087  
 10088  	// The list of text messages.
 10089  	TextList []*Text `type:"list"`
 10090  }
 10091  
 10092  // String returns the string representation.
 10093  //
 10094  // API parameter values that are decorated as "sensitive" in the API will not
 10095  // be included in the string output. The member name will be present, but the
 10096  // value will be replaced with "sensitive".
 10097  func (s Content) String() string {
 10098  	return awsutil.Prettify(s)
 10099  }
 10100  
 10101  // GoString returns the string representation.
 10102  //
 10103  // API parameter values that are decorated as "sensitive" in the API will not
 10104  // be included in the string output. The member name will be present, but the
 10105  // value will be replaced with "sensitive".
 10106  func (s Content) GoString() string {
 10107  	return s.String()
 10108  }
 10109  
 10110  // Validate inspects the fields of the type to determine if they are valid.
 10111  func (s *Content) Validate() error {
 10112  	invalidParams := request.ErrInvalidParams{Context: "Content"}
 10113  	if s.AudioList != nil {
 10114  		for i, v := range s.AudioList {
 10115  			if v == nil {
 10116  				continue
 10117  			}
 10118  			if err := v.Validate(); err != nil {
 10119  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AudioList", i), err.(request.ErrInvalidParams))
 10120  			}
 10121  		}
 10122  	}
 10123  	if s.SsmlList != nil {
 10124  		for i, v := range s.SsmlList {
 10125  			if v == nil {
 10126  				continue
 10127  			}
 10128  			if err := v.Validate(); err != nil {
 10129  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SsmlList", i), err.(request.ErrInvalidParams))
 10130  			}
 10131  		}
 10132  	}
 10133  	if s.TextList != nil {
 10134  		for i, v := range s.TextList {
 10135  			if v == nil {
 10136  				continue
 10137  			}
 10138  			if err := v.Validate(); err != nil {
 10139  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "TextList", i), err.(request.ErrInvalidParams))
 10140  			}
 10141  		}
 10142  	}
 10143  
 10144  	if invalidParams.Len() > 0 {
 10145  		return invalidParams
 10146  	}
 10147  	return nil
 10148  }
 10149  
 10150  // SetAudioList sets the AudioList field's value.
 10151  func (s *Content) SetAudioList(v []*Audio) *Content {
 10152  	s.AudioList = v
 10153  	return s
 10154  }
 10155  
 10156  // SetSsmlList sets the SsmlList field's value.
 10157  func (s *Content) SetSsmlList(v []*Ssml) *Content {
 10158  	s.SsmlList = v
 10159  	return s
 10160  }
 10161  
 10162  // SetTextList sets the TextList field's value.
 10163  func (s *Content) SetTextList(v []*Text) *Content {
 10164  	s.TextList = v
 10165  	return s
 10166  }
 10167  
 10168  type CreateAddressBookInput struct {
 10169  	_ struct{} `type:"structure"`
 10170  
 10171  	// A unique, user-specified identifier for the request that ensures idempotency.
 10172  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 10173  
 10174  	// The description of the address book.
 10175  	Description *string `min:"1" type:"string"`
 10176  
 10177  	// The name of the address book.
 10178  	//
 10179  	// Name is a required field
 10180  	Name *string `min:"1" type:"string" required:"true"`
 10181  
 10182  	// The tags to be added to the specified resource. Do not provide system tags.
 10183  	Tags []*Tag `type:"list"`
 10184  }
 10185  
 10186  // String returns the string representation.
 10187  //
 10188  // API parameter values that are decorated as "sensitive" in the API will not
 10189  // be included in the string output. The member name will be present, but the
 10190  // value will be replaced with "sensitive".
 10191  func (s CreateAddressBookInput) String() string {
 10192  	return awsutil.Prettify(s)
 10193  }
 10194  
 10195  // GoString returns the string representation.
 10196  //
 10197  // API parameter values that are decorated as "sensitive" in the API will not
 10198  // be included in the string output. The member name will be present, but the
 10199  // value will be replaced with "sensitive".
 10200  func (s CreateAddressBookInput) GoString() string {
 10201  	return s.String()
 10202  }
 10203  
 10204  // Validate inspects the fields of the type to determine if they are valid.
 10205  func (s *CreateAddressBookInput) Validate() error {
 10206  	invalidParams := request.ErrInvalidParams{Context: "CreateAddressBookInput"}
 10207  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 10208  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 10209  	}
 10210  	if s.Description != nil && len(*s.Description) < 1 {
 10211  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 10212  	}
 10213  	if s.Name == nil {
 10214  		invalidParams.Add(request.NewErrParamRequired("Name"))
 10215  	}
 10216  	if s.Name != nil && len(*s.Name) < 1 {
 10217  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 10218  	}
 10219  	if s.Tags != nil {
 10220  		for i, v := range s.Tags {
 10221  			if v == nil {
 10222  				continue
 10223  			}
 10224  			if err := v.Validate(); err != nil {
 10225  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10226  			}
 10227  		}
 10228  	}
 10229  
 10230  	if invalidParams.Len() > 0 {
 10231  		return invalidParams
 10232  	}
 10233  	return nil
 10234  }
 10235  
 10236  // SetClientRequestToken sets the ClientRequestToken field's value.
 10237  func (s *CreateAddressBookInput) SetClientRequestToken(v string) *CreateAddressBookInput {
 10238  	s.ClientRequestToken = &v
 10239  	return s
 10240  }
 10241  
 10242  // SetDescription sets the Description field's value.
 10243  func (s *CreateAddressBookInput) SetDescription(v string) *CreateAddressBookInput {
 10244  	s.Description = &v
 10245  	return s
 10246  }
 10247  
 10248  // SetName sets the Name field's value.
 10249  func (s *CreateAddressBookInput) SetName(v string) *CreateAddressBookInput {
 10250  	s.Name = &v
 10251  	return s
 10252  }
 10253  
 10254  // SetTags sets the Tags field's value.
 10255  func (s *CreateAddressBookInput) SetTags(v []*Tag) *CreateAddressBookInput {
 10256  	s.Tags = v
 10257  	return s
 10258  }
 10259  
 10260  type CreateAddressBookOutput struct {
 10261  	_ struct{} `type:"structure"`
 10262  
 10263  	// The ARN of the newly created address book.
 10264  	AddressBookArn *string `type:"string"`
 10265  }
 10266  
 10267  // String returns the string representation.
 10268  //
 10269  // API parameter values that are decorated as "sensitive" in the API will not
 10270  // be included in the string output. The member name will be present, but the
 10271  // value will be replaced with "sensitive".
 10272  func (s CreateAddressBookOutput) String() string {
 10273  	return awsutil.Prettify(s)
 10274  }
 10275  
 10276  // GoString returns the string representation.
 10277  //
 10278  // API parameter values that are decorated as "sensitive" in the API will not
 10279  // be included in the string output. The member name will be present, but the
 10280  // value will be replaced with "sensitive".
 10281  func (s CreateAddressBookOutput) GoString() string {
 10282  	return s.String()
 10283  }
 10284  
 10285  // SetAddressBookArn sets the AddressBookArn field's value.
 10286  func (s *CreateAddressBookOutput) SetAddressBookArn(v string) *CreateAddressBookOutput {
 10287  	s.AddressBookArn = &v
 10288  	return s
 10289  }
 10290  
 10291  type CreateBusinessReportScheduleInput struct {
 10292  	_ struct{} `type:"structure"`
 10293  
 10294  	// The client request token.
 10295  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 10296  
 10297  	// The content range of the reports.
 10298  	//
 10299  	// ContentRange is a required field
 10300  	ContentRange *BusinessReportContentRange `type:"structure" required:"true"`
 10301  
 10302  	// The format of the generated report (individual CSV files or zipped files
 10303  	// of individual files).
 10304  	//
 10305  	// Format is a required field
 10306  	Format *string `type:"string" required:"true" enum:"BusinessReportFormat"`
 10307  
 10308  	// The recurrence of the reports. If this isn't specified, the report will only
 10309  	// be delivered one time when the API is called.
 10310  	Recurrence *BusinessReportRecurrence `type:"structure"`
 10311  
 10312  	// The S3 bucket name of the output reports. If this isn't specified, the report
 10313  	// can be retrieved from a download link by calling ListBusinessReportSchedule.
 10314  	S3BucketName *string `type:"string"`
 10315  
 10316  	// The S3 key where the report is delivered.
 10317  	S3KeyPrefix *string `type:"string"`
 10318  
 10319  	// The name identifier of the schedule.
 10320  	ScheduleName *string `type:"string"`
 10321  
 10322  	// The tags for the business report schedule.
 10323  	Tags []*Tag `type:"list"`
 10324  }
 10325  
 10326  // String returns the string representation.
 10327  //
 10328  // API parameter values that are decorated as "sensitive" in the API will not
 10329  // be included in the string output. The member name will be present, but the
 10330  // value will be replaced with "sensitive".
 10331  func (s CreateBusinessReportScheduleInput) String() string {
 10332  	return awsutil.Prettify(s)
 10333  }
 10334  
 10335  // GoString returns the string representation.
 10336  //
 10337  // API parameter values that are decorated as "sensitive" in the API will not
 10338  // be included in the string output. The member name will be present, but the
 10339  // value will be replaced with "sensitive".
 10340  func (s CreateBusinessReportScheduleInput) GoString() string {
 10341  	return s.String()
 10342  }
 10343  
 10344  // Validate inspects the fields of the type to determine if they are valid.
 10345  func (s *CreateBusinessReportScheduleInput) Validate() error {
 10346  	invalidParams := request.ErrInvalidParams{Context: "CreateBusinessReportScheduleInput"}
 10347  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 10348  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 10349  	}
 10350  	if s.ContentRange == nil {
 10351  		invalidParams.Add(request.NewErrParamRequired("ContentRange"))
 10352  	}
 10353  	if s.Format == nil {
 10354  		invalidParams.Add(request.NewErrParamRequired("Format"))
 10355  	}
 10356  	if s.ContentRange != nil {
 10357  		if err := s.ContentRange.Validate(); err != nil {
 10358  			invalidParams.AddNested("ContentRange", err.(request.ErrInvalidParams))
 10359  		}
 10360  	}
 10361  	if s.Tags != nil {
 10362  		for i, v := range s.Tags {
 10363  			if v == nil {
 10364  				continue
 10365  			}
 10366  			if err := v.Validate(); err != nil {
 10367  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10368  			}
 10369  		}
 10370  	}
 10371  
 10372  	if invalidParams.Len() > 0 {
 10373  		return invalidParams
 10374  	}
 10375  	return nil
 10376  }
 10377  
 10378  // SetClientRequestToken sets the ClientRequestToken field's value.
 10379  func (s *CreateBusinessReportScheduleInput) SetClientRequestToken(v string) *CreateBusinessReportScheduleInput {
 10380  	s.ClientRequestToken = &v
 10381  	return s
 10382  }
 10383  
 10384  // SetContentRange sets the ContentRange field's value.
 10385  func (s *CreateBusinessReportScheduleInput) SetContentRange(v *BusinessReportContentRange) *CreateBusinessReportScheduleInput {
 10386  	s.ContentRange = v
 10387  	return s
 10388  }
 10389  
 10390  // SetFormat sets the Format field's value.
 10391  func (s *CreateBusinessReportScheduleInput) SetFormat(v string) *CreateBusinessReportScheduleInput {
 10392  	s.Format = &v
 10393  	return s
 10394  }
 10395  
 10396  // SetRecurrence sets the Recurrence field's value.
 10397  func (s *CreateBusinessReportScheduleInput) SetRecurrence(v *BusinessReportRecurrence) *CreateBusinessReportScheduleInput {
 10398  	s.Recurrence = v
 10399  	return s
 10400  }
 10401  
 10402  // SetS3BucketName sets the S3BucketName field's value.
 10403  func (s *CreateBusinessReportScheduleInput) SetS3BucketName(v string) *CreateBusinessReportScheduleInput {
 10404  	s.S3BucketName = &v
 10405  	return s
 10406  }
 10407  
 10408  // SetS3KeyPrefix sets the S3KeyPrefix field's value.
 10409  func (s *CreateBusinessReportScheduleInput) SetS3KeyPrefix(v string) *CreateBusinessReportScheduleInput {
 10410  	s.S3KeyPrefix = &v
 10411  	return s
 10412  }
 10413  
 10414  // SetScheduleName sets the ScheduleName field's value.
 10415  func (s *CreateBusinessReportScheduleInput) SetScheduleName(v string) *CreateBusinessReportScheduleInput {
 10416  	s.ScheduleName = &v
 10417  	return s
 10418  }
 10419  
 10420  // SetTags sets the Tags field's value.
 10421  func (s *CreateBusinessReportScheduleInput) SetTags(v []*Tag) *CreateBusinessReportScheduleInput {
 10422  	s.Tags = v
 10423  	return s
 10424  }
 10425  
 10426  type CreateBusinessReportScheduleOutput struct {
 10427  	_ struct{} `type:"structure"`
 10428  
 10429  	// The ARN of the business report schedule.
 10430  	ScheduleArn *string `type:"string"`
 10431  }
 10432  
 10433  // String returns the string representation.
 10434  //
 10435  // API parameter values that are decorated as "sensitive" in the API will not
 10436  // be included in the string output. The member name will be present, but the
 10437  // value will be replaced with "sensitive".
 10438  func (s CreateBusinessReportScheduleOutput) String() string {
 10439  	return awsutil.Prettify(s)
 10440  }
 10441  
 10442  // GoString returns the string representation.
 10443  //
 10444  // API parameter values that are decorated as "sensitive" in the API will not
 10445  // be included in the string output. The member name will be present, but the
 10446  // value will be replaced with "sensitive".
 10447  func (s CreateBusinessReportScheduleOutput) GoString() string {
 10448  	return s.String()
 10449  }
 10450  
 10451  // SetScheduleArn sets the ScheduleArn field's value.
 10452  func (s *CreateBusinessReportScheduleOutput) SetScheduleArn(v string) *CreateBusinessReportScheduleOutput {
 10453  	s.ScheduleArn = &v
 10454  	return s
 10455  }
 10456  
 10457  type CreateConferenceProviderInput struct {
 10458  	_ struct{} `type:"structure"`
 10459  
 10460  	// The request token of the client.
 10461  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 10462  
 10463  	// The name of the conference provider.
 10464  	//
 10465  	// ConferenceProviderName is a required field
 10466  	ConferenceProviderName *string `min:"1" type:"string" required:"true"`
 10467  
 10468  	// Represents a type within a list of predefined types.
 10469  	//
 10470  	// ConferenceProviderType is a required field
 10471  	ConferenceProviderType *string `type:"string" required:"true" enum:"ConferenceProviderType"`
 10472  
 10473  	// The IP endpoint and protocol for calling.
 10474  	IPDialIn *IPDialIn `type:"structure"`
 10475  
 10476  	// The meeting settings for the conference provider.
 10477  	//
 10478  	// MeetingSetting is a required field
 10479  	MeetingSetting *MeetingSetting `type:"structure" required:"true"`
 10480  
 10481  	// The information for PSTN conferencing.
 10482  	PSTNDialIn *PSTNDialIn `type:"structure"`
 10483  
 10484  	// The tags to be added to the specified resource. Do not provide system tags.
 10485  	Tags []*Tag `type:"list"`
 10486  }
 10487  
 10488  // String returns the string representation.
 10489  //
 10490  // API parameter values that are decorated as "sensitive" in the API will not
 10491  // be included in the string output. The member name will be present, but the
 10492  // value will be replaced with "sensitive".
 10493  func (s CreateConferenceProviderInput) String() string {
 10494  	return awsutil.Prettify(s)
 10495  }
 10496  
 10497  // GoString returns the string representation.
 10498  //
 10499  // API parameter values that are decorated as "sensitive" in the API will not
 10500  // be included in the string output. The member name will be present, but the
 10501  // value will be replaced with "sensitive".
 10502  func (s CreateConferenceProviderInput) GoString() string {
 10503  	return s.String()
 10504  }
 10505  
 10506  // Validate inspects the fields of the type to determine if they are valid.
 10507  func (s *CreateConferenceProviderInput) Validate() error {
 10508  	invalidParams := request.ErrInvalidParams{Context: "CreateConferenceProviderInput"}
 10509  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 10510  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 10511  	}
 10512  	if s.ConferenceProviderName == nil {
 10513  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderName"))
 10514  	}
 10515  	if s.ConferenceProviderName != nil && len(*s.ConferenceProviderName) < 1 {
 10516  		invalidParams.Add(request.NewErrParamMinLen("ConferenceProviderName", 1))
 10517  	}
 10518  	if s.ConferenceProviderType == nil {
 10519  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderType"))
 10520  	}
 10521  	if s.MeetingSetting == nil {
 10522  		invalidParams.Add(request.NewErrParamRequired("MeetingSetting"))
 10523  	}
 10524  	if s.IPDialIn != nil {
 10525  		if err := s.IPDialIn.Validate(); err != nil {
 10526  			invalidParams.AddNested("IPDialIn", err.(request.ErrInvalidParams))
 10527  		}
 10528  	}
 10529  	if s.MeetingSetting != nil {
 10530  		if err := s.MeetingSetting.Validate(); err != nil {
 10531  			invalidParams.AddNested("MeetingSetting", err.(request.ErrInvalidParams))
 10532  		}
 10533  	}
 10534  	if s.PSTNDialIn != nil {
 10535  		if err := s.PSTNDialIn.Validate(); err != nil {
 10536  			invalidParams.AddNested("PSTNDialIn", err.(request.ErrInvalidParams))
 10537  		}
 10538  	}
 10539  	if s.Tags != nil {
 10540  		for i, v := range s.Tags {
 10541  			if v == nil {
 10542  				continue
 10543  			}
 10544  			if err := v.Validate(); err != nil {
 10545  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10546  			}
 10547  		}
 10548  	}
 10549  
 10550  	if invalidParams.Len() > 0 {
 10551  		return invalidParams
 10552  	}
 10553  	return nil
 10554  }
 10555  
 10556  // SetClientRequestToken sets the ClientRequestToken field's value.
 10557  func (s *CreateConferenceProviderInput) SetClientRequestToken(v string) *CreateConferenceProviderInput {
 10558  	s.ClientRequestToken = &v
 10559  	return s
 10560  }
 10561  
 10562  // SetConferenceProviderName sets the ConferenceProviderName field's value.
 10563  func (s *CreateConferenceProviderInput) SetConferenceProviderName(v string) *CreateConferenceProviderInput {
 10564  	s.ConferenceProviderName = &v
 10565  	return s
 10566  }
 10567  
 10568  // SetConferenceProviderType sets the ConferenceProviderType field's value.
 10569  func (s *CreateConferenceProviderInput) SetConferenceProviderType(v string) *CreateConferenceProviderInput {
 10570  	s.ConferenceProviderType = &v
 10571  	return s
 10572  }
 10573  
 10574  // SetIPDialIn sets the IPDialIn field's value.
 10575  func (s *CreateConferenceProviderInput) SetIPDialIn(v *IPDialIn) *CreateConferenceProviderInput {
 10576  	s.IPDialIn = v
 10577  	return s
 10578  }
 10579  
 10580  // SetMeetingSetting sets the MeetingSetting field's value.
 10581  func (s *CreateConferenceProviderInput) SetMeetingSetting(v *MeetingSetting) *CreateConferenceProviderInput {
 10582  	s.MeetingSetting = v
 10583  	return s
 10584  }
 10585  
 10586  // SetPSTNDialIn sets the PSTNDialIn field's value.
 10587  func (s *CreateConferenceProviderInput) SetPSTNDialIn(v *PSTNDialIn) *CreateConferenceProviderInput {
 10588  	s.PSTNDialIn = v
 10589  	return s
 10590  }
 10591  
 10592  // SetTags sets the Tags field's value.
 10593  func (s *CreateConferenceProviderInput) SetTags(v []*Tag) *CreateConferenceProviderInput {
 10594  	s.Tags = v
 10595  	return s
 10596  }
 10597  
 10598  type CreateConferenceProviderOutput struct {
 10599  	_ struct{} `type:"structure"`
 10600  
 10601  	// The ARN of the newly-created conference provider.
 10602  	ConferenceProviderArn *string `type:"string"`
 10603  }
 10604  
 10605  // String returns the string representation.
 10606  //
 10607  // API parameter values that are decorated as "sensitive" in the API will not
 10608  // be included in the string output. The member name will be present, but the
 10609  // value will be replaced with "sensitive".
 10610  func (s CreateConferenceProviderOutput) String() string {
 10611  	return awsutil.Prettify(s)
 10612  }
 10613  
 10614  // GoString returns the string representation.
 10615  //
 10616  // API parameter values that are decorated as "sensitive" in the API will not
 10617  // be included in the string output. The member name will be present, but the
 10618  // value will be replaced with "sensitive".
 10619  func (s CreateConferenceProviderOutput) GoString() string {
 10620  	return s.String()
 10621  }
 10622  
 10623  // SetConferenceProviderArn sets the ConferenceProviderArn field's value.
 10624  func (s *CreateConferenceProviderOutput) SetConferenceProviderArn(v string) *CreateConferenceProviderOutput {
 10625  	s.ConferenceProviderArn = &v
 10626  	return s
 10627  }
 10628  
 10629  type CreateContactInput struct {
 10630  	_ struct{} `type:"structure"`
 10631  
 10632  	// A unique, user-specified identifier for this request that ensures idempotency.
 10633  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 10634  
 10635  	// The name of the contact to display on the console.
 10636  	DisplayName *string `min:"1" type:"string"`
 10637  
 10638  	// The first name of the contact that is used to call the contact on the device.
 10639  	//
 10640  	// FirstName is a required field
 10641  	FirstName *string `min:"1" type:"string" required:"true"`
 10642  
 10643  	// The last name of the contact that is used to call the contact on the device.
 10644  	LastName *string `min:"1" type:"string"`
 10645  
 10646  	// The phone number of the contact in E.164 format. The phone number type defaults
 10647  	// to WORK. You can specify PhoneNumber or PhoneNumbers. We recommend that you
 10648  	// use PhoneNumbers, which lets you specify the phone number type and multiple
 10649  	// numbers.
 10650  	//
 10651  	// PhoneNumber is a sensitive parameter and its value will be
 10652  	// replaced with "sensitive" in string returned by CreateContactInput's
 10653  	// String and GoString methods.
 10654  	PhoneNumber *string `type:"string" sensitive:"true"`
 10655  
 10656  	// The list of phone numbers for the contact.
 10657  	PhoneNumbers []*PhoneNumber `type:"list"`
 10658  
 10659  	// The list of SIP addresses for the contact.
 10660  	SipAddresses []*SipAddress `type:"list"`
 10661  
 10662  	// The tags to be added to the specified resource. Do not provide system tags.
 10663  	Tags []*Tag `type:"list"`
 10664  }
 10665  
 10666  // String returns the string representation.
 10667  //
 10668  // API parameter values that are decorated as "sensitive" in the API will not
 10669  // be included in the string output. The member name will be present, but the
 10670  // value will be replaced with "sensitive".
 10671  func (s CreateContactInput) String() string {
 10672  	return awsutil.Prettify(s)
 10673  }
 10674  
 10675  // GoString returns the string representation.
 10676  //
 10677  // API parameter values that are decorated as "sensitive" in the API will not
 10678  // be included in the string output. The member name will be present, but the
 10679  // value will be replaced with "sensitive".
 10680  func (s CreateContactInput) GoString() string {
 10681  	return s.String()
 10682  }
 10683  
 10684  // Validate inspects the fields of the type to determine if they are valid.
 10685  func (s *CreateContactInput) Validate() error {
 10686  	invalidParams := request.ErrInvalidParams{Context: "CreateContactInput"}
 10687  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 10688  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 10689  	}
 10690  	if s.DisplayName != nil && len(*s.DisplayName) < 1 {
 10691  		invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1))
 10692  	}
 10693  	if s.FirstName == nil {
 10694  		invalidParams.Add(request.NewErrParamRequired("FirstName"))
 10695  	}
 10696  	if s.FirstName != nil && len(*s.FirstName) < 1 {
 10697  		invalidParams.Add(request.NewErrParamMinLen("FirstName", 1))
 10698  	}
 10699  	if s.LastName != nil && len(*s.LastName) < 1 {
 10700  		invalidParams.Add(request.NewErrParamMinLen("LastName", 1))
 10701  	}
 10702  	if s.PhoneNumbers != nil {
 10703  		for i, v := range s.PhoneNumbers {
 10704  			if v == nil {
 10705  				continue
 10706  			}
 10707  			if err := v.Validate(); err != nil {
 10708  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhoneNumbers", i), err.(request.ErrInvalidParams))
 10709  			}
 10710  		}
 10711  	}
 10712  	if s.SipAddresses != nil {
 10713  		for i, v := range s.SipAddresses {
 10714  			if v == nil {
 10715  				continue
 10716  			}
 10717  			if err := v.Validate(); err != nil {
 10718  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SipAddresses", i), err.(request.ErrInvalidParams))
 10719  			}
 10720  		}
 10721  	}
 10722  	if s.Tags != nil {
 10723  		for i, v := range s.Tags {
 10724  			if v == nil {
 10725  				continue
 10726  			}
 10727  			if err := v.Validate(); err != nil {
 10728  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10729  			}
 10730  		}
 10731  	}
 10732  
 10733  	if invalidParams.Len() > 0 {
 10734  		return invalidParams
 10735  	}
 10736  	return nil
 10737  }
 10738  
 10739  // SetClientRequestToken sets the ClientRequestToken field's value.
 10740  func (s *CreateContactInput) SetClientRequestToken(v string) *CreateContactInput {
 10741  	s.ClientRequestToken = &v
 10742  	return s
 10743  }
 10744  
 10745  // SetDisplayName sets the DisplayName field's value.
 10746  func (s *CreateContactInput) SetDisplayName(v string) *CreateContactInput {
 10747  	s.DisplayName = &v
 10748  	return s
 10749  }
 10750  
 10751  // SetFirstName sets the FirstName field's value.
 10752  func (s *CreateContactInput) SetFirstName(v string) *CreateContactInput {
 10753  	s.FirstName = &v
 10754  	return s
 10755  }
 10756  
 10757  // SetLastName sets the LastName field's value.
 10758  func (s *CreateContactInput) SetLastName(v string) *CreateContactInput {
 10759  	s.LastName = &v
 10760  	return s
 10761  }
 10762  
 10763  // SetPhoneNumber sets the PhoneNumber field's value.
 10764  func (s *CreateContactInput) SetPhoneNumber(v string) *CreateContactInput {
 10765  	s.PhoneNumber = &v
 10766  	return s
 10767  }
 10768  
 10769  // SetPhoneNumbers sets the PhoneNumbers field's value.
 10770  func (s *CreateContactInput) SetPhoneNumbers(v []*PhoneNumber) *CreateContactInput {
 10771  	s.PhoneNumbers = v
 10772  	return s
 10773  }
 10774  
 10775  // SetSipAddresses sets the SipAddresses field's value.
 10776  func (s *CreateContactInput) SetSipAddresses(v []*SipAddress) *CreateContactInput {
 10777  	s.SipAddresses = v
 10778  	return s
 10779  }
 10780  
 10781  // SetTags sets the Tags field's value.
 10782  func (s *CreateContactInput) SetTags(v []*Tag) *CreateContactInput {
 10783  	s.Tags = v
 10784  	return s
 10785  }
 10786  
 10787  type CreateContactOutput struct {
 10788  	_ struct{} `type:"structure"`
 10789  
 10790  	// The ARN of the newly created address book.
 10791  	ContactArn *string `type:"string"`
 10792  }
 10793  
 10794  // String returns the string representation.
 10795  //
 10796  // API parameter values that are decorated as "sensitive" in the API will not
 10797  // be included in the string output. The member name will be present, but the
 10798  // value will be replaced with "sensitive".
 10799  func (s CreateContactOutput) String() string {
 10800  	return awsutil.Prettify(s)
 10801  }
 10802  
 10803  // GoString returns the string representation.
 10804  //
 10805  // API parameter values that are decorated as "sensitive" in the API will not
 10806  // be included in the string output. The member name will be present, but the
 10807  // value will be replaced with "sensitive".
 10808  func (s CreateContactOutput) GoString() string {
 10809  	return s.String()
 10810  }
 10811  
 10812  // SetContactArn sets the ContactArn field's value.
 10813  func (s *CreateContactOutput) SetContactArn(v string) *CreateContactOutput {
 10814  	s.ContactArn = &v
 10815  	return s
 10816  }
 10817  
 10818  // Creates settings for the end of meeting reminder feature that are applied
 10819  // to a room profile. The end of meeting reminder enables Alexa to remind users
 10820  // when a meeting is ending.
 10821  type CreateEndOfMeetingReminder struct {
 10822  	_ struct{} `type:"structure"`
 10823  
 10824  	// Whether an end of meeting reminder is enabled or not.
 10825  	//
 10826  	// Enabled is a required field
 10827  	Enabled *bool `type:"boolean" required:"true"`
 10828  
 10829  	// A range of 3 to 15 minutes that determines when the reminder begins.
 10830  	//
 10831  	// ReminderAtMinutes is a required field
 10832  	ReminderAtMinutes []*int64 `min:"1" type:"list" required:"true"`
 10833  
 10834  	// The type of sound that users hear during the end of meeting reminder.
 10835  	//
 10836  	// ReminderType is a required field
 10837  	ReminderType *string `type:"string" required:"true" enum:"EndOfMeetingReminderType"`
 10838  }
 10839  
 10840  // String returns the string representation.
 10841  //
 10842  // API parameter values that are decorated as "sensitive" in the API will not
 10843  // be included in the string output. The member name will be present, but the
 10844  // value will be replaced with "sensitive".
 10845  func (s CreateEndOfMeetingReminder) String() string {
 10846  	return awsutil.Prettify(s)
 10847  }
 10848  
 10849  // GoString returns the string representation.
 10850  //
 10851  // API parameter values that are decorated as "sensitive" in the API will not
 10852  // be included in the string output. The member name will be present, but the
 10853  // value will be replaced with "sensitive".
 10854  func (s CreateEndOfMeetingReminder) GoString() string {
 10855  	return s.String()
 10856  }
 10857  
 10858  // Validate inspects the fields of the type to determine if they are valid.
 10859  func (s *CreateEndOfMeetingReminder) Validate() error {
 10860  	invalidParams := request.ErrInvalidParams{Context: "CreateEndOfMeetingReminder"}
 10861  	if s.Enabled == nil {
 10862  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
 10863  	}
 10864  	if s.ReminderAtMinutes == nil {
 10865  		invalidParams.Add(request.NewErrParamRequired("ReminderAtMinutes"))
 10866  	}
 10867  	if s.ReminderAtMinutes != nil && len(s.ReminderAtMinutes) < 1 {
 10868  		invalidParams.Add(request.NewErrParamMinLen("ReminderAtMinutes", 1))
 10869  	}
 10870  	if s.ReminderType == nil {
 10871  		invalidParams.Add(request.NewErrParamRequired("ReminderType"))
 10872  	}
 10873  
 10874  	if invalidParams.Len() > 0 {
 10875  		return invalidParams
 10876  	}
 10877  	return nil
 10878  }
 10879  
 10880  // SetEnabled sets the Enabled field's value.
 10881  func (s *CreateEndOfMeetingReminder) SetEnabled(v bool) *CreateEndOfMeetingReminder {
 10882  	s.Enabled = &v
 10883  	return s
 10884  }
 10885  
 10886  // SetReminderAtMinutes sets the ReminderAtMinutes field's value.
 10887  func (s *CreateEndOfMeetingReminder) SetReminderAtMinutes(v []*int64) *CreateEndOfMeetingReminder {
 10888  	s.ReminderAtMinutes = v
 10889  	return s
 10890  }
 10891  
 10892  // SetReminderType sets the ReminderType field's value.
 10893  func (s *CreateEndOfMeetingReminder) SetReminderType(v string) *CreateEndOfMeetingReminder {
 10894  	s.ReminderType = &v
 10895  	return s
 10896  }
 10897  
 10898  type CreateGatewayGroupInput struct {
 10899  	_ struct{} `type:"structure"`
 10900  
 10901  	// A unique, user-specified identifier for the request that ensures idempotency.
 10902  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 10903  
 10904  	// The description of the gateway group.
 10905  	Description *string `type:"string"`
 10906  
 10907  	// The name of the gateway group.
 10908  	//
 10909  	// Name is a required field
 10910  	Name *string `min:"1" type:"string" required:"true"`
 10911  
 10912  	// The tags to be added to the specified resource. Do not provide system tags.
 10913  	Tags []*Tag `type:"list"`
 10914  }
 10915  
 10916  // String returns the string representation.
 10917  //
 10918  // API parameter values that are decorated as "sensitive" in the API will not
 10919  // be included in the string output. The member name will be present, but the
 10920  // value will be replaced with "sensitive".
 10921  func (s CreateGatewayGroupInput) String() string {
 10922  	return awsutil.Prettify(s)
 10923  }
 10924  
 10925  // GoString returns the string representation.
 10926  //
 10927  // API parameter values that are decorated as "sensitive" in the API will not
 10928  // be included in the string output. The member name will be present, but the
 10929  // value will be replaced with "sensitive".
 10930  func (s CreateGatewayGroupInput) GoString() string {
 10931  	return s.String()
 10932  }
 10933  
 10934  // Validate inspects the fields of the type to determine if they are valid.
 10935  func (s *CreateGatewayGroupInput) Validate() error {
 10936  	invalidParams := request.ErrInvalidParams{Context: "CreateGatewayGroupInput"}
 10937  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 10938  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 10939  	}
 10940  	if s.Name == nil {
 10941  		invalidParams.Add(request.NewErrParamRequired("Name"))
 10942  	}
 10943  	if s.Name != nil && len(*s.Name) < 1 {
 10944  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 10945  	}
 10946  	if s.Tags != nil {
 10947  		for i, v := range s.Tags {
 10948  			if v == nil {
 10949  				continue
 10950  			}
 10951  			if err := v.Validate(); err != nil {
 10952  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 10953  			}
 10954  		}
 10955  	}
 10956  
 10957  	if invalidParams.Len() > 0 {
 10958  		return invalidParams
 10959  	}
 10960  	return nil
 10961  }
 10962  
 10963  // SetClientRequestToken sets the ClientRequestToken field's value.
 10964  func (s *CreateGatewayGroupInput) SetClientRequestToken(v string) *CreateGatewayGroupInput {
 10965  	s.ClientRequestToken = &v
 10966  	return s
 10967  }
 10968  
 10969  // SetDescription sets the Description field's value.
 10970  func (s *CreateGatewayGroupInput) SetDescription(v string) *CreateGatewayGroupInput {
 10971  	s.Description = &v
 10972  	return s
 10973  }
 10974  
 10975  // SetName sets the Name field's value.
 10976  func (s *CreateGatewayGroupInput) SetName(v string) *CreateGatewayGroupInput {
 10977  	s.Name = &v
 10978  	return s
 10979  }
 10980  
 10981  // SetTags sets the Tags field's value.
 10982  func (s *CreateGatewayGroupInput) SetTags(v []*Tag) *CreateGatewayGroupInput {
 10983  	s.Tags = v
 10984  	return s
 10985  }
 10986  
 10987  type CreateGatewayGroupOutput struct {
 10988  	_ struct{} `type:"structure"`
 10989  
 10990  	// The ARN of the created gateway group.
 10991  	GatewayGroupArn *string `type:"string"`
 10992  }
 10993  
 10994  // String returns the string representation.
 10995  //
 10996  // API parameter values that are decorated as "sensitive" in the API will not
 10997  // be included in the string output. The member name will be present, but the
 10998  // value will be replaced with "sensitive".
 10999  func (s CreateGatewayGroupOutput) String() string {
 11000  	return awsutil.Prettify(s)
 11001  }
 11002  
 11003  // GoString returns the string representation.
 11004  //
 11005  // API parameter values that are decorated as "sensitive" in the API will not
 11006  // be included in the string output. The member name will be present, but the
 11007  // value will be replaced with "sensitive".
 11008  func (s CreateGatewayGroupOutput) GoString() string {
 11009  	return s.String()
 11010  }
 11011  
 11012  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 11013  func (s *CreateGatewayGroupOutput) SetGatewayGroupArn(v string) *CreateGatewayGroupOutput {
 11014  	s.GatewayGroupArn = &v
 11015  	return s
 11016  }
 11017  
 11018  // Creates settings for the instant booking feature that are applied to a room
 11019  // profile. When users start their meeting with Alexa, Alexa automatically books
 11020  // the room for the configured duration if the room is available.
 11021  type CreateInstantBooking struct {
 11022  	_ struct{} `type:"structure"`
 11023  
 11024  	// Duration between 15 and 240 minutes at increments of 15 that determines how
 11025  	// long to book an available room when a meeting is started with Alexa.
 11026  	//
 11027  	// DurationInMinutes is a required field
 11028  	DurationInMinutes *int64 `type:"integer" required:"true"`
 11029  
 11030  	// Whether instant booking is enabled or not.
 11031  	//
 11032  	// Enabled is a required field
 11033  	Enabled *bool `type:"boolean" required:"true"`
 11034  }
 11035  
 11036  // String returns the string representation.
 11037  //
 11038  // API parameter values that are decorated as "sensitive" in the API will not
 11039  // be included in the string output. The member name will be present, but the
 11040  // value will be replaced with "sensitive".
 11041  func (s CreateInstantBooking) String() string {
 11042  	return awsutil.Prettify(s)
 11043  }
 11044  
 11045  // GoString returns the string representation.
 11046  //
 11047  // API parameter values that are decorated as "sensitive" in the API will not
 11048  // be included in the string output. The member name will be present, but the
 11049  // value will be replaced with "sensitive".
 11050  func (s CreateInstantBooking) GoString() string {
 11051  	return s.String()
 11052  }
 11053  
 11054  // Validate inspects the fields of the type to determine if they are valid.
 11055  func (s *CreateInstantBooking) Validate() error {
 11056  	invalidParams := request.ErrInvalidParams{Context: "CreateInstantBooking"}
 11057  	if s.DurationInMinutes == nil {
 11058  		invalidParams.Add(request.NewErrParamRequired("DurationInMinutes"))
 11059  	}
 11060  	if s.Enabled == nil {
 11061  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
 11062  	}
 11063  
 11064  	if invalidParams.Len() > 0 {
 11065  		return invalidParams
 11066  	}
 11067  	return nil
 11068  }
 11069  
 11070  // SetDurationInMinutes sets the DurationInMinutes field's value.
 11071  func (s *CreateInstantBooking) SetDurationInMinutes(v int64) *CreateInstantBooking {
 11072  	s.DurationInMinutes = &v
 11073  	return s
 11074  }
 11075  
 11076  // SetEnabled sets the Enabled field's value.
 11077  func (s *CreateInstantBooking) SetEnabled(v bool) *CreateInstantBooking {
 11078  	s.Enabled = &v
 11079  	return s
 11080  }
 11081  
 11082  // Creates meeting room settings of a room profile.
 11083  type CreateMeetingRoomConfiguration struct {
 11084  	_ struct{} `type:"structure"`
 11085  
 11086  	// Creates settings for the end of meeting reminder feature that are applied
 11087  	// to a room profile. The end of meeting reminder enables Alexa to remind users
 11088  	// when a meeting is ending.
 11089  	EndOfMeetingReminder *CreateEndOfMeetingReminder `type:"structure"`
 11090  
 11091  	// Settings to automatically book a room for a configured duration if it's free
 11092  	// when joining a meeting with Alexa.
 11093  	InstantBooking *CreateInstantBooking `type:"structure"`
 11094  
 11095  	// Settings for requiring a check in when a room is reserved. Alexa can cancel
 11096  	// a room reservation if it's not checked into to make the room available for
 11097  	// others. Users can check in by joining the meeting with Alexa or an AVS device,
 11098  	// or by saying “Alexa, check in.”
 11099  	RequireCheckIn *CreateRequireCheckIn `type:"structure"`
 11100  
 11101  	// Whether room utilization metrics are enabled or not.
 11102  	RoomUtilizationMetricsEnabled *bool `type:"boolean"`
 11103  }
 11104  
 11105  // String returns the string representation.
 11106  //
 11107  // API parameter values that are decorated as "sensitive" in the API will not
 11108  // be included in the string output. The member name will be present, but the
 11109  // value will be replaced with "sensitive".
 11110  func (s CreateMeetingRoomConfiguration) String() string {
 11111  	return awsutil.Prettify(s)
 11112  }
 11113  
 11114  // GoString returns the string representation.
 11115  //
 11116  // API parameter values that are decorated as "sensitive" in the API will not
 11117  // be included in the string output. The member name will be present, but the
 11118  // value will be replaced with "sensitive".
 11119  func (s CreateMeetingRoomConfiguration) GoString() string {
 11120  	return s.String()
 11121  }
 11122  
 11123  // Validate inspects the fields of the type to determine if they are valid.
 11124  func (s *CreateMeetingRoomConfiguration) Validate() error {
 11125  	invalidParams := request.ErrInvalidParams{Context: "CreateMeetingRoomConfiguration"}
 11126  	if s.EndOfMeetingReminder != nil {
 11127  		if err := s.EndOfMeetingReminder.Validate(); err != nil {
 11128  			invalidParams.AddNested("EndOfMeetingReminder", err.(request.ErrInvalidParams))
 11129  		}
 11130  	}
 11131  	if s.InstantBooking != nil {
 11132  		if err := s.InstantBooking.Validate(); err != nil {
 11133  			invalidParams.AddNested("InstantBooking", err.(request.ErrInvalidParams))
 11134  		}
 11135  	}
 11136  	if s.RequireCheckIn != nil {
 11137  		if err := s.RequireCheckIn.Validate(); err != nil {
 11138  			invalidParams.AddNested("RequireCheckIn", err.(request.ErrInvalidParams))
 11139  		}
 11140  	}
 11141  
 11142  	if invalidParams.Len() > 0 {
 11143  		return invalidParams
 11144  	}
 11145  	return nil
 11146  }
 11147  
 11148  // SetEndOfMeetingReminder sets the EndOfMeetingReminder field's value.
 11149  func (s *CreateMeetingRoomConfiguration) SetEndOfMeetingReminder(v *CreateEndOfMeetingReminder) *CreateMeetingRoomConfiguration {
 11150  	s.EndOfMeetingReminder = v
 11151  	return s
 11152  }
 11153  
 11154  // SetInstantBooking sets the InstantBooking field's value.
 11155  func (s *CreateMeetingRoomConfiguration) SetInstantBooking(v *CreateInstantBooking) *CreateMeetingRoomConfiguration {
 11156  	s.InstantBooking = v
 11157  	return s
 11158  }
 11159  
 11160  // SetRequireCheckIn sets the RequireCheckIn field's value.
 11161  func (s *CreateMeetingRoomConfiguration) SetRequireCheckIn(v *CreateRequireCheckIn) *CreateMeetingRoomConfiguration {
 11162  	s.RequireCheckIn = v
 11163  	return s
 11164  }
 11165  
 11166  // SetRoomUtilizationMetricsEnabled sets the RoomUtilizationMetricsEnabled field's value.
 11167  func (s *CreateMeetingRoomConfiguration) SetRoomUtilizationMetricsEnabled(v bool) *CreateMeetingRoomConfiguration {
 11168  	s.RoomUtilizationMetricsEnabled = &v
 11169  	return s
 11170  }
 11171  
 11172  type CreateNetworkProfileInput struct {
 11173  	_ struct{} `type:"structure"`
 11174  
 11175  	// The ARN of the Private Certificate Authority (PCA) created in AWS Certificate
 11176  	// Manager (ACM). This is used to issue certificates to the devices.
 11177  	CertificateAuthorityArn *string `type:"string"`
 11178  
 11179  	// A unique, user-specified identifier for the request that ensures idempotency.
 11180  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 11181  
 11182  	// The current password of the Wi-Fi network.
 11183  	//
 11184  	// CurrentPassword is a sensitive parameter and its value will be
 11185  	// replaced with "sensitive" in string returned by CreateNetworkProfileInput's
 11186  	// String and GoString methods.
 11187  	CurrentPassword *string `min:"5" type:"string" sensitive:"true"`
 11188  
 11189  	// Detailed information about a device's network profile.
 11190  	Description *string `type:"string"`
 11191  
 11192  	// The authentication standard that is used in the EAP framework. Currently,
 11193  	// EAP_TLS is supported.
 11194  	EapMethod *string `type:"string" enum:"NetworkEapMethod"`
 11195  
 11196  	// The name of the network profile associated with a device.
 11197  	//
 11198  	// NetworkProfileName is a required field
 11199  	NetworkProfileName *string `min:"1" type:"string" required:"true"`
 11200  
 11201  	// The next, or subsequent, password of the Wi-Fi network. This password is
 11202  	// asynchronously transmitted to the device and is used when the password of
 11203  	// the network changes to NextPassword.
 11204  	//
 11205  	// NextPassword is a sensitive parameter and its value will be
 11206  	// replaced with "sensitive" in string returned by CreateNetworkProfileInput's
 11207  	// String and GoString methods.
 11208  	NextPassword *string `type:"string" sensitive:"true"`
 11209  
 11210  	// The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK,
 11211  	// WPA_PSK, WEP, or OPEN.
 11212  	//
 11213  	// SecurityType is a required field
 11214  	SecurityType *string `type:"string" required:"true" enum:"NetworkSecurityType"`
 11215  
 11216  	// The SSID of the Wi-Fi network.
 11217  	//
 11218  	// Ssid is a required field
 11219  	Ssid *string `min:"1" type:"string" required:"true"`
 11220  
 11221  	// The tags to be added to the specified resource. Do not provide system tags.
 11222  	Tags []*Tag `type:"list"`
 11223  
 11224  	// The root certificates of your authentication server that is installed on
 11225  	// your devices and used to trust your authentication server during EAP negotiation.
 11226  	TrustAnchors []*string `min:"1" type:"list"`
 11227  }
 11228  
 11229  // String returns the string representation.
 11230  //
 11231  // API parameter values that are decorated as "sensitive" in the API will not
 11232  // be included in the string output. The member name will be present, but the
 11233  // value will be replaced with "sensitive".
 11234  func (s CreateNetworkProfileInput) String() string {
 11235  	return awsutil.Prettify(s)
 11236  }
 11237  
 11238  // GoString returns the string representation.
 11239  //
 11240  // API parameter values that are decorated as "sensitive" in the API will not
 11241  // be included in the string output. The member name will be present, but the
 11242  // value will be replaced with "sensitive".
 11243  func (s CreateNetworkProfileInput) GoString() string {
 11244  	return s.String()
 11245  }
 11246  
 11247  // Validate inspects the fields of the type to determine if they are valid.
 11248  func (s *CreateNetworkProfileInput) Validate() error {
 11249  	invalidParams := request.ErrInvalidParams{Context: "CreateNetworkProfileInput"}
 11250  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 11251  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 11252  	}
 11253  	if s.CurrentPassword != nil && len(*s.CurrentPassword) < 5 {
 11254  		invalidParams.Add(request.NewErrParamMinLen("CurrentPassword", 5))
 11255  	}
 11256  	if s.NetworkProfileName == nil {
 11257  		invalidParams.Add(request.NewErrParamRequired("NetworkProfileName"))
 11258  	}
 11259  	if s.NetworkProfileName != nil && len(*s.NetworkProfileName) < 1 {
 11260  		invalidParams.Add(request.NewErrParamMinLen("NetworkProfileName", 1))
 11261  	}
 11262  	if s.SecurityType == nil {
 11263  		invalidParams.Add(request.NewErrParamRequired("SecurityType"))
 11264  	}
 11265  	if s.Ssid == nil {
 11266  		invalidParams.Add(request.NewErrParamRequired("Ssid"))
 11267  	}
 11268  	if s.Ssid != nil && len(*s.Ssid) < 1 {
 11269  		invalidParams.Add(request.NewErrParamMinLen("Ssid", 1))
 11270  	}
 11271  	if s.TrustAnchors != nil && len(s.TrustAnchors) < 1 {
 11272  		invalidParams.Add(request.NewErrParamMinLen("TrustAnchors", 1))
 11273  	}
 11274  	if s.Tags != nil {
 11275  		for i, v := range s.Tags {
 11276  			if v == nil {
 11277  				continue
 11278  			}
 11279  			if err := v.Validate(); err != nil {
 11280  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 11281  			}
 11282  		}
 11283  	}
 11284  
 11285  	if invalidParams.Len() > 0 {
 11286  		return invalidParams
 11287  	}
 11288  	return nil
 11289  }
 11290  
 11291  // SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value.
 11292  func (s *CreateNetworkProfileInput) SetCertificateAuthorityArn(v string) *CreateNetworkProfileInput {
 11293  	s.CertificateAuthorityArn = &v
 11294  	return s
 11295  }
 11296  
 11297  // SetClientRequestToken sets the ClientRequestToken field's value.
 11298  func (s *CreateNetworkProfileInput) SetClientRequestToken(v string) *CreateNetworkProfileInput {
 11299  	s.ClientRequestToken = &v
 11300  	return s
 11301  }
 11302  
 11303  // SetCurrentPassword sets the CurrentPassword field's value.
 11304  func (s *CreateNetworkProfileInput) SetCurrentPassword(v string) *CreateNetworkProfileInput {
 11305  	s.CurrentPassword = &v
 11306  	return s
 11307  }
 11308  
 11309  // SetDescription sets the Description field's value.
 11310  func (s *CreateNetworkProfileInput) SetDescription(v string) *CreateNetworkProfileInput {
 11311  	s.Description = &v
 11312  	return s
 11313  }
 11314  
 11315  // SetEapMethod sets the EapMethod field's value.
 11316  func (s *CreateNetworkProfileInput) SetEapMethod(v string) *CreateNetworkProfileInput {
 11317  	s.EapMethod = &v
 11318  	return s
 11319  }
 11320  
 11321  // SetNetworkProfileName sets the NetworkProfileName field's value.
 11322  func (s *CreateNetworkProfileInput) SetNetworkProfileName(v string) *CreateNetworkProfileInput {
 11323  	s.NetworkProfileName = &v
 11324  	return s
 11325  }
 11326  
 11327  // SetNextPassword sets the NextPassword field's value.
 11328  func (s *CreateNetworkProfileInput) SetNextPassword(v string) *CreateNetworkProfileInput {
 11329  	s.NextPassword = &v
 11330  	return s
 11331  }
 11332  
 11333  // SetSecurityType sets the SecurityType field's value.
 11334  func (s *CreateNetworkProfileInput) SetSecurityType(v string) *CreateNetworkProfileInput {
 11335  	s.SecurityType = &v
 11336  	return s
 11337  }
 11338  
 11339  // SetSsid sets the Ssid field's value.
 11340  func (s *CreateNetworkProfileInput) SetSsid(v string) *CreateNetworkProfileInput {
 11341  	s.Ssid = &v
 11342  	return s
 11343  }
 11344  
 11345  // SetTags sets the Tags field's value.
 11346  func (s *CreateNetworkProfileInput) SetTags(v []*Tag) *CreateNetworkProfileInput {
 11347  	s.Tags = v
 11348  	return s
 11349  }
 11350  
 11351  // SetTrustAnchors sets the TrustAnchors field's value.
 11352  func (s *CreateNetworkProfileInput) SetTrustAnchors(v []*string) *CreateNetworkProfileInput {
 11353  	s.TrustAnchors = v
 11354  	return s
 11355  }
 11356  
 11357  type CreateNetworkProfileOutput struct {
 11358  	_ struct{} `type:"structure"`
 11359  
 11360  	// The ARN of the network profile associated with a device.
 11361  	NetworkProfileArn *string `type:"string"`
 11362  }
 11363  
 11364  // String returns the string representation.
 11365  //
 11366  // API parameter values that are decorated as "sensitive" in the API will not
 11367  // be included in the string output. The member name will be present, but the
 11368  // value will be replaced with "sensitive".
 11369  func (s CreateNetworkProfileOutput) String() string {
 11370  	return awsutil.Prettify(s)
 11371  }
 11372  
 11373  // GoString returns the string representation.
 11374  //
 11375  // API parameter values that are decorated as "sensitive" in the API will not
 11376  // be included in the string output. The member name will be present, but the
 11377  // value will be replaced with "sensitive".
 11378  func (s CreateNetworkProfileOutput) GoString() string {
 11379  	return s.String()
 11380  }
 11381  
 11382  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 11383  func (s *CreateNetworkProfileOutput) SetNetworkProfileArn(v string) *CreateNetworkProfileOutput {
 11384  	s.NetworkProfileArn = &v
 11385  	return s
 11386  }
 11387  
 11388  type CreateProfileInput struct {
 11389  	_ struct{} `type:"structure"`
 11390  
 11391  	// The valid address for the room.
 11392  	//
 11393  	// Address is a required field
 11394  	Address *string `min:"1" type:"string" required:"true"`
 11395  
 11396  	// The user-specified token that is used during the creation of a profile.
 11397  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 11398  
 11399  	// Whether data retention of the profile is enabled.
 11400  	DataRetentionOptIn *bool `type:"boolean"`
 11401  
 11402  	// The distance unit to be used by devices in the profile.
 11403  	//
 11404  	// DistanceUnit is a required field
 11405  	DistanceUnit *string `type:"string" required:"true" enum:"DistanceUnit"`
 11406  
 11407  	// The locale of the room profile. (This is currently only available to a limited
 11408  	// preview audience.)
 11409  	Locale *string `min:"1" type:"string"`
 11410  
 11411  	// The maximum volume limit for a room profile.
 11412  	MaxVolumeLimit *int64 `type:"integer"`
 11413  
 11414  	// The meeting room settings of a room profile.
 11415  	MeetingRoomConfiguration *CreateMeetingRoomConfiguration `type:"structure"`
 11416  
 11417  	// Whether PSTN calling is enabled.
 11418  	PSTNEnabled *bool `type:"boolean"`
 11419  
 11420  	// The name of a room profile.
 11421  	//
 11422  	// ProfileName is a required field
 11423  	ProfileName *string `min:"1" type:"string" required:"true"`
 11424  
 11425  	// Whether room profile setup is enabled.
 11426  	SetupModeDisabled *bool `type:"boolean"`
 11427  
 11428  	// The tags for the profile.
 11429  	Tags []*Tag `type:"list"`
 11430  
 11431  	// The temperature unit to be used by devices in the profile.
 11432  	//
 11433  	// TemperatureUnit is a required field
 11434  	TemperatureUnit *string `type:"string" required:"true" enum:"TemperatureUnit"`
 11435  
 11436  	// The time zone used by a room profile.
 11437  	//
 11438  	// Timezone is a required field
 11439  	Timezone *string `min:"1" type:"string" required:"true"`
 11440  
 11441  	// A wake word for Alexa, Echo, Amazon, or a computer.
 11442  	//
 11443  	// WakeWord is a required field
 11444  	WakeWord *string `type:"string" required:"true" enum:"WakeWord"`
 11445  }
 11446  
 11447  // String returns the string representation.
 11448  //
 11449  // API parameter values that are decorated as "sensitive" in the API will not
 11450  // be included in the string output. The member name will be present, but the
 11451  // value will be replaced with "sensitive".
 11452  func (s CreateProfileInput) String() string {
 11453  	return awsutil.Prettify(s)
 11454  }
 11455  
 11456  // GoString returns the string representation.
 11457  //
 11458  // API parameter values that are decorated as "sensitive" in the API will not
 11459  // be included in the string output. The member name will be present, but the
 11460  // value will be replaced with "sensitive".
 11461  func (s CreateProfileInput) GoString() string {
 11462  	return s.String()
 11463  }
 11464  
 11465  // Validate inspects the fields of the type to determine if they are valid.
 11466  func (s *CreateProfileInput) Validate() error {
 11467  	invalidParams := request.ErrInvalidParams{Context: "CreateProfileInput"}
 11468  	if s.Address == nil {
 11469  		invalidParams.Add(request.NewErrParamRequired("Address"))
 11470  	}
 11471  	if s.Address != nil && len(*s.Address) < 1 {
 11472  		invalidParams.Add(request.NewErrParamMinLen("Address", 1))
 11473  	}
 11474  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 11475  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 11476  	}
 11477  	if s.DistanceUnit == nil {
 11478  		invalidParams.Add(request.NewErrParamRequired("DistanceUnit"))
 11479  	}
 11480  	if s.Locale != nil && len(*s.Locale) < 1 {
 11481  		invalidParams.Add(request.NewErrParamMinLen("Locale", 1))
 11482  	}
 11483  	if s.ProfileName == nil {
 11484  		invalidParams.Add(request.NewErrParamRequired("ProfileName"))
 11485  	}
 11486  	if s.ProfileName != nil && len(*s.ProfileName) < 1 {
 11487  		invalidParams.Add(request.NewErrParamMinLen("ProfileName", 1))
 11488  	}
 11489  	if s.TemperatureUnit == nil {
 11490  		invalidParams.Add(request.NewErrParamRequired("TemperatureUnit"))
 11491  	}
 11492  	if s.Timezone == nil {
 11493  		invalidParams.Add(request.NewErrParamRequired("Timezone"))
 11494  	}
 11495  	if s.Timezone != nil && len(*s.Timezone) < 1 {
 11496  		invalidParams.Add(request.NewErrParamMinLen("Timezone", 1))
 11497  	}
 11498  	if s.WakeWord == nil {
 11499  		invalidParams.Add(request.NewErrParamRequired("WakeWord"))
 11500  	}
 11501  	if s.MeetingRoomConfiguration != nil {
 11502  		if err := s.MeetingRoomConfiguration.Validate(); err != nil {
 11503  			invalidParams.AddNested("MeetingRoomConfiguration", err.(request.ErrInvalidParams))
 11504  		}
 11505  	}
 11506  	if s.Tags != nil {
 11507  		for i, v := range s.Tags {
 11508  			if v == nil {
 11509  				continue
 11510  			}
 11511  			if err := v.Validate(); err != nil {
 11512  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 11513  			}
 11514  		}
 11515  	}
 11516  
 11517  	if invalidParams.Len() > 0 {
 11518  		return invalidParams
 11519  	}
 11520  	return nil
 11521  }
 11522  
 11523  // SetAddress sets the Address field's value.
 11524  func (s *CreateProfileInput) SetAddress(v string) *CreateProfileInput {
 11525  	s.Address = &v
 11526  	return s
 11527  }
 11528  
 11529  // SetClientRequestToken sets the ClientRequestToken field's value.
 11530  func (s *CreateProfileInput) SetClientRequestToken(v string) *CreateProfileInput {
 11531  	s.ClientRequestToken = &v
 11532  	return s
 11533  }
 11534  
 11535  // SetDataRetentionOptIn sets the DataRetentionOptIn field's value.
 11536  func (s *CreateProfileInput) SetDataRetentionOptIn(v bool) *CreateProfileInput {
 11537  	s.DataRetentionOptIn = &v
 11538  	return s
 11539  }
 11540  
 11541  // SetDistanceUnit sets the DistanceUnit field's value.
 11542  func (s *CreateProfileInput) SetDistanceUnit(v string) *CreateProfileInput {
 11543  	s.DistanceUnit = &v
 11544  	return s
 11545  }
 11546  
 11547  // SetLocale sets the Locale field's value.
 11548  func (s *CreateProfileInput) SetLocale(v string) *CreateProfileInput {
 11549  	s.Locale = &v
 11550  	return s
 11551  }
 11552  
 11553  // SetMaxVolumeLimit sets the MaxVolumeLimit field's value.
 11554  func (s *CreateProfileInput) SetMaxVolumeLimit(v int64) *CreateProfileInput {
 11555  	s.MaxVolumeLimit = &v
 11556  	return s
 11557  }
 11558  
 11559  // SetMeetingRoomConfiguration sets the MeetingRoomConfiguration field's value.
 11560  func (s *CreateProfileInput) SetMeetingRoomConfiguration(v *CreateMeetingRoomConfiguration) *CreateProfileInput {
 11561  	s.MeetingRoomConfiguration = v
 11562  	return s
 11563  }
 11564  
 11565  // SetPSTNEnabled sets the PSTNEnabled field's value.
 11566  func (s *CreateProfileInput) SetPSTNEnabled(v bool) *CreateProfileInput {
 11567  	s.PSTNEnabled = &v
 11568  	return s
 11569  }
 11570  
 11571  // SetProfileName sets the ProfileName field's value.
 11572  func (s *CreateProfileInput) SetProfileName(v string) *CreateProfileInput {
 11573  	s.ProfileName = &v
 11574  	return s
 11575  }
 11576  
 11577  // SetSetupModeDisabled sets the SetupModeDisabled field's value.
 11578  func (s *CreateProfileInput) SetSetupModeDisabled(v bool) *CreateProfileInput {
 11579  	s.SetupModeDisabled = &v
 11580  	return s
 11581  }
 11582  
 11583  // SetTags sets the Tags field's value.
 11584  func (s *CreateProfileInput) SetTags(v []*Tag) *CreateProfileInput {
 11585  	s.Tags = v
 11586  	return s
 11587  }
 11588  
 11589  // SetTemperatureUnit sets the TemperatureUnit field's value.
 11590  func (s *CreateProfileInput) SetTemperatureUnit(v string) *CreateProfileInput {
 11591  	s.TemperatureUnit = &v
 11592  	return s
 11593  }
 11594  
 11595  // SetTimezone sets the Timezone field's value.
 11596  func (s *CreateProfileInput) SetTimezone(v string) *CreateProfileInput {
 11597  	s.Timezone = &v
 11598  	return s
 11599  }
 11600  
 11601  // SetWakeWord sets the WakeWord field's value.
 11602  func (s *CreateProfileInput) SetWakeWord(v string) *CreateProfileInput {
 11603  	s.WakeWord = &v
 11604  	return s
 11605  }
 11606  
 11607  type CreateProfileOutput struct {
 11608  	_ struct{} `type:"structure"`
 11609  
 11610  	// The ARN of the newly created room profile in the response.
 11611  	ProfileArn *string `type:"string"`
 11612  }
 11613  
 11614  // String returns the string representation.
 11615  //
 11616  // API parameter values that are decorated as "sensitive" in the API will not
 11617  // be included in the string output. The member name will be present, but the
 11618  // value will be replaced with "sensitive".
 11619  func (s CreateProfileOutput) String() string {
 11620  	return awsutil.Prettify(s)
 11621  }
 11622  
 11623  // GoString returns the string representation.
 11624  //
 11625  // API parameter values that are decorated as "sensitive" in the API will not
 11626  // be included in the string output. The member name will be present, but the
 11627  // value will be replaced with "sensitive".
 11628  func (s CreateProfileOutput) GoString() string {
 11629  	return s.String()
 11630  }
 11631  
 11632  // SetProfileArn sets the ProfileArn field's value.
 11633  func (s *CreateProfileOutput) SetProfileArn(v string) *CreateProfileOutput {
 11634  	s.ProfileArn = &v
 11635  	return s
 11636  }
 11637  
 11638  // Creates settings for the require check in feature that are applied to a room
 11639  // profile. Require check in allows a meeting room’s Alexa or AVS device to
 11640  // prompt the user to check in; otherwise, the room will be released.
 11641  type CreateRequireCheckIn struct {
 11642  	_ struct{} `type:"structure"`
 11643  
 11644  	// Whether require check in is enabled or not.
 11645  	//
 11646  	// Enabled is a required field
 11647  	Enabled *bool `type:"boolean" required:"true"`
 11648  
 11649  	// Duration between 5 and 20 minutes to determine when to release the room if
 11650  	// it's not checked into.
 11651  	//
 11652  	// ReleaseAfterMinutes is a required field
 11653  	ReleaseAfterMinutes *int64 `type:"integer" required:"true"`
 11654  }
 11655  
 11656  // String returns the string representation.
 11657  //
 11658  // API parameter values that are decorated as "sensitive" in the API will not
 11659  // be included in the string output. The member name will be present, but the
 11660  // value will be replaced with "sensitive".
 11661  func (s CreateRequireCheckIn) String() string {
 11662  	return awsutil.Prettify(s)
 11663  }
 11664  
 11665  // GoString returns the string representation.
 11666  //
 11667  // API parameter values that are decorated as "sensitive" in the API will not
 11668  // be included in the string output. The member name will be present, but the
 11669  // value will be replaced with "sensitive".
 11670  func (s CreateRequireCheckIn) GoString() string {
 11671  	return s.String()
 11672  }
 11673  
 11674  // Validate inspects the fields of the type to determine if they are valid.
 11675  func (s *CreateRequireCheckIn) Validate() error {
 11676  	invalidParams := request.ErrInvalidParams{Context: "CreateRequireCheckIn"}
 11677  	if s.Enabled == nil {
 11678  		invalidParams.Add(request.NewErrParamRequired("Enabled"))
 11679  	}
 11680  	if s.ReleaseAfterMinutes == nil {
 11681  		invalidParams.Add(request.NewErrParamRequired("ReleaseAfterMinutes"))
 11682  	}
 11683  
 11684  	if invalidParams.Len() > 0 {
 11685  		return invalidParams
 11686  	}
 11687  	return nil
 11688  }
 11689  
 11690  // SetEnabled sets the Enabled field's value.
 11691  func (s *CreateRequireCheckIn) SetEnabled(v bool) *CreateRequireCheckIn {
 11692  	s.Enabled = &v
 11693  	return s
 11694  }
 11695  
 11696  // SetReleaseAfterMinutes sets the ReleaseAfterMinutes field's value.
 11697  func (s *CreateRequireCheckIn) SetReleaseAfterMinutes(v int64) *CreateRequireCheckIn {
 11698  	s.ReleaseAfterMinutes = &v
 11699  	return s
 11700  }
 11701  
 11702  type CreateRoomInput struct {
 11703  	_ struct{} `type:"structure"`
 11704  
 11705  	// A unique, user-specified identifier for this request that ensures idempotency.
 11706  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 11707  
 11708  	// The description for the room.
 11709  	Description *string `min:"1" type:"string"`
 11710  
 11711  	// The profile ARN for the room. This is required.
 11712  	ProfileArn *string `type:"string"`
 11713  
 11714  	// The calendar ARN for the room.
 11715  	ProviderCalendarId *string `type:"string"`
 11716  
 11717  	// The name for the room.
 11718  	//
 11719  	// RoomName is a required field
 11720  	RoomName *string `min:"1" type:"string" required:"true"`
 11721  
 11722  	// The tags for the room.
 11723  	Tags []*Tag `type:"list"`
 11724  }
 11725  
 11726  // String returns the string representation.
 11727  //
 11728  // API parameter values that are decorated as "sensitive" in the API will not
 11729  // be included in the string output. The member name will be present, but the
 11730  // value will be replaced with "sensitive".
 11731  func (s CreateRoomInput) String() string {
 11732  	return awsutil.Prettify(s)
 11733  }
 11734  
 11735  // GoString returns the string representation.
 11736  //
 11737  // API parameter values that are decorated as "sensitive" in the API will not
 11738  // be included in the string output. The member name will be present, but the
 11739  // value will be replaced with "sensitive".
 11740  func (s CreateRoomInput) GoString() string {
 11741  	return s.String()
 11742  }
 11743  
 11744  // Validate inspects the fields of the type to determine if they are valid.
 11745  func (s *CreateRoomInput) Validate() error {
 11746  	invalidParams := request.ErrInvalidParams{Context: "CreateRoomInput"}
 11747  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 11748  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 11749  	}
 11750  	if s.Description != nil && len(*s.Description) < 1 {
 11751  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 11752  	}
 11753  	if s.RoomName == nil {
 11754  		invalidParams.Add(request.NewErrParamRequired("RoomName"))
 11755  	}
 11756  	if s.RoomName != nil && len(*s.RoomName) < 1 {
 11757  		invalidParams.Add(request.NewErrParamMinLen("RoomName", 1))
 11758  	}
 11759  	if s.Tags != nil {
 11760  		for i, v := range s.Tags {
 11761  			if v == nil {
 11762  				continue
 11763  			}
 11764  			if err := v.Validate(); err != nil {
 11765  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 11766  			}
 11767  		}
 11768  	}
 11769  
 11770  	if invalidParams.Len() > 0 {
 11771  		return invalidParams
 11772  	}
 11773  	return nil
 11774  }
 11775  
 11776  // SetClientRequestToken sets the ClientRequestToken field's value.
 11777  func (s *CreateRoomInput) SetClientRequestToken(v string) *CreateRoomInput {
 11778  	s.ClientRequestToken = &v
 11779  	return s
 11780  }
 11781  
 11782  // SetDescription sets the Description field's value.
 11783  func (s *CreateRoomInput) SetDescription(v string) *CreateRoomInput {
 11784  	s.Description = &v
 11785  	return s
 11786  }
 11787  
 11788  // SetProfileArn sets the ProfileArn field's value.
 11789  func (s *CreateRoomInput) SetProfileArn(v string) *CreateRoomInput {
 11790  	s.ProfileArn = &v
 11791  	return s
 11792  }
 11793  
 11794  // SetProviderCalendarId sets the ProviderCalendarId field's value.
 11795  func (s *CreateRoomInput) SetProviderCalendarId(v string) *CreateRoomInput {
 11796  	s.ProviderCalendarId = &v
 11797  	return s
 11798  }
 11799  
 11800  // SetRoomName sets the RoomName field's value.
 11801  func (s *CreateRoomInput) SetRoomName(v string) *CreateRoomInput {
 11802  	s.RoomName = &v
 11803  	return s
 11804  }
 11805  
 11806  // SetTags sets the Tags field's value.
 11807  func (s *CreateRoomInput) SetTags(v []*Tag) *CreateRoomInput {
 11808  	s.Tags = v
 11809  	return s
 11810  }
 11811  
 11812  type CreateRoomOutput struct {
 11813  	_ struct{} `type:"structure"`
 11814  
 11815  	// The ARN of the newly created room in the response.
 11816  	RoomArn *string `type:"string"`
 11817  }
 11818  
 11819  // String returns the string representation.
 11820  //
 11821  // API parameter values that are decorated as "sensitive" in the API will not
 11822  // be included in the string output. The member name will be present, but the
 11823  // value will be replaced with "sensitive".
 11824  func (s CreateRoomOutput) String() string {
 11825  	return awsutil.Prettify(s)
 11826  }
 11827  
 11828  // GoString returns the string representation.
 11829  //
 11830  // API parameter values that are decorated as "sensitive" in the API will not
 11831  // be included in the string output. The member name will be present, but the
 11832  // value will be replaced with "sensitive".
 11833  func (s CreateRoomOutput) GoString() string {
 11834  	return s.String()
 11835  }
 11836  
 11837  // SetRoomArn sets the RoomArn field's value.
 11838  func (s *CreateRoomOutput) SetRoomArn(v string) *CreateRoomOutput {
 11839  	s.RoomArn = &v
 11840  	return s
 11841  }
 11842  
 11843  type CreateSkillGroupInput struct {
 11844  	_ struct{} `type:"structure"`
 11845  
 11846  	// A unique, user-specified identifier for this request that ensures idempotency.
 11847  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 11848  
 11849  	// The description for the skill group.
 11850  	Description *string `min:"1" type:"string"`
 11851  
 11852  	// The name for the skill group.
 11853  	//
 11854  	// SkillGroupName is a required field
 11855  	SkillGroupName *string `min:"1" type:"string" required:"true"`
 11856  
 11857  	// The tags for the skill group.
 11858  	Tags []*Tag `type:"list"`
 11859  }
 11860  
 11861  // String returns the string representation.
 11862  //
 11863  // API parameter values that are decorated as "sensitive" in the API will not
 11864  // be included in the string output. The member name will be present, but the
 11865  // value will be replaced with "sensitive".
 11866  func (s CreateSkillGroupInput) String() string {
 11867  	return awsutil.Prettify(s)
 11868  }
 11869  
 11870  // GoString returns the string representation.
 11871  //
 11872  // API parameter values that are decorated as "sensitive" in the API will not
 11873  // be included in the string output. The member name will be present, but the
 11874  // value will be replaced with "sensitive".
 11875  func (s CreateSkillGroupInput) GoString() string {
 11876  	return s.String()
 11877  }
 11878  
 11879  // Validate inspects the fields of the type to determine if they are valid.
 11880  func (s *CreateSkillGroupInput) Validate() error {
 11881  	invalidParams := request.ErrInvalidParams{Context: "CreateSkillGroupInput"}
 11882  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 11883  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 11884  	}
 11885  	if s.Description != nil && len(*s.Description) < 1 {
 11886  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 11887  	}
 11888  	if s.SkillGroupName == nil {
 11889  		invalidParams.Add(request.NewErrParamRequired("SkillGroupName"))
 11890  	}
 11891  	if s.SkillGroupName != nil && len(*s.SkillGroupName) < 1 {
 11892  		invalidParams.Add(request.NewErrParamMinLen("SkillGroupName", 1))
 11893  	}
 11894  	if s.Tags != nil {
 11895  		for i, v := range s.Tags {
 11896  			if v == nil {
 11897  				continue
 11898  			}
 11899  			if err := v.Validate(); err != nil {
 11900  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 11901  			}
 11902  		}
 11903  	}
 11904  
 11905  	if invalidParams.Len() > 0 {
 11906  		return invalidParams
 11907  	}
 11908  	return nil
 11909  }
 11910  
 11911  // SetClientRequestToken sets the ClientRequestToken field's value.
 11912  func (s *CreateSkillGroupInput) SetClientRequestToken(v string) *CreateSkillGroupInput {
 11913  	s.ClientRequestToken = &v
 11914  	return s
 11915  }
 11916  
 11917  // SetDescription sets the Description field's value.
 11918  func (s *CreateSkillGroupInput) SetDescription(v string) *CreateSkillGroupInput {
 11919  	s.Description = &v
 11920  	return s
 11921  }
 11922  
 11923  // SetSkillGroupName sets the SkillGroupName field's value.
 11924  func (s *CreateSkillGroupInput) SetSkillGroupName(v string) *CreateSkillGroupInput {
 11925  	s.SkillGroupName = &v
 11926  	return s
 11927  }
 11928  
 11929  // SetTags sets the Tags field's value.
 11930  func (s *CreateSkillGroupInput) SetTags(v []*Tag) *CreateSkillGroupInput {
 11931  	s.Tags = v
 11932  	return s
 11933  }
 11934  
 11935  type CreateSkillGroupOutput struct {
 11936  	_ struct{} `type:"structure"`
 11937  
 11938  	// The ARN of the newly created skill group in the response.
 11939  	SkillGroupArn *string `type:"string"`
 11940  }
 11941  
 11942  // String returns the string representation.
 11943  //
 11944  // API parameter values that are decorated as "sensitive" in the API will not
 11945  // be included in the string output. The member name will be present, but the
 11946  // value will be replaced with "sensitive".
 11947  func (s CreateSkillGroupOutput) String() string {
 11948  	return awsutil.Prettify(s)
 11949  }
 11950  
 11951  // GoString returns the string representation.
 11952  //
 11953  // API parameter values that are decorated as "sensitive" in the API will not
 11954  // be included in the string output. The member name will be present, but the
 11955  // value will be replaced with "sensitive".
 11956  func (s CreateSkillGroupOutput) GoString() string {
 11957  	return s.String()
 11958  }
 11959  
 11960  // SetSkillGroupArn sets the SkillGroupArn field's value.
 11961  func (s *CreateSkillGroupOutput) SetSkillGroupArn(v string) *CreateSkillGroupOutput {
 11962  	s.SkillGroupArn = &v
 11963  	return s
 11964  }
 11965  
 11966  type CreateUserInput struct {
 11967  	_ struct{} `type:"structure"`
 11968  
 11969  	// A unique, user-specified identifier for this request that ensures idempotency.
 11970  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 11971  
 11972  	// The email address for the user.
 11973  	Email *string `min:"1" type:"string"`
 11974  
 11975  	// The first name for the user.
 11976  	FirstName *string `type:"string"`
 11977  
 11978  	// The last name for the user.
 11979  	LastName *string `type:"string"`
 11980  
 11981  	// The tags for the user.
 11982  	Tags []*Tag `type:"list"`
 11983  
 11984  	// The ARN for the user.
 11985  	//
 11986  	// UserId is a required field
 11987  	UserId *string `min:"1" type:"string" required:"true"`
 11988  }
 11989  
 11990  // String returns the string representation.
 11991  //
 11992  // API parameter values that are decorated as "sensitive" in the API will not
 11993  // be included in the string output. The member name will be present, but the
 11994  // value will be replaced with "sensitive".
 11995  func (s CreateUserInput) String() string {
 11996  	return awsutil.Prettify(s)
 11997  }
 11998  
 11999  // GoString returns the string representation.
 12000  //
 12001  // API parameter values that are decorated as "sensitive" in the API will not
 12002  // be included in the string output. The member name will be present, but the
 12003  // value will be replaced with "sensitive".
 12004  func (s CreateUserInput) GoString() string {
 12005  	return s.String()
 12006  }
 12007  
 12008  // Validate inspects the fields of the type to determine if they are valid.
 12009  func (s *CreateUserInput) Validate() error {
 12010  	invalidParams := request.ErrInvalidParams{Context: "CreateUserInput"}
 12011  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 12012  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 12013  	}
 12014  	if s.Email != nil && len(*s.Email) < 1 {
 12015  		invalidParams.Add(request.NewErrParamMinLen("Email", 1))
 12016  	}
 12017  	if s.UserId == nil {
 12018  		invalidParams.Add(request.NewErrParamRequired("UserId"))
 12019  	}
 12020  	if s.UserId != nil && len(*s.UserId) < 1 {
 12021  		invalidParams.Add(request.NewErrParamMinLen("UserId", 1))
 12022  	}
 12023  	if s.Tags != nil {
 12024  		for i, v := range s.Tags {
 12025  			if v == nil {
 12026  				continue
 12027  			}
 12028  			if err := v.Validate(); err != nil {
 12029  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 12030  			}
 12031  		}
 12032  	}
 12033  
 12034  	if invalidParams.Len() > 0 {
 12035  		return invalidParams
 12036  	}
 12037  	return nil
 12038  }
 12039  
 12040  // SetClientRequestToken sets the ClientRequestToken field's value.
 12041  func (s *CreateUserInput) SetClientRequestToken(v string) *CreateUserInput {
 12042  	s.ClientRequestToken = &v
 12043  	return s
 12044  }
 12045  
 12046  // SetEmail sets the Email field's value.
 12047  func (s *CreateUserInput) SetEmail(v string) *CreateUserInput {
 12048  	s.Email = &v
 12049  	return s
 12050  }
 12051  
 12052  // SetFirstName sets the FirstName field's value.
 12053  func (s *CreateUserInput) SetFirstName(v string) *CreateUserInput {
 12054  	s.FirstName = &v
 12055  	return s
 12056  }
 12057  
 12058  // SetLastName sets the LastName field's value.
 12059  func (s *CreateUserInput) SetLastName(v string) *CreateUserInput {
 12060  	s.LastName = &v
 12061  	return s
 12062  }
 12063  
 12064  // SetTags sets the Tags field's value.
 12065  func (s *CreateUserInput) SetTags(v []*Tag) *CreateUserInput {
 12066  	s.Tags = v
 12067  	return s
 12068  }
 12069  
 12070  // SetUserId sets the UserId field's value.
 12071  func (s *CreateUserInput) SetUserId(v string) *CreateUserInput {
 12072  	s.UserId = &v
 12073  	return s
 12074  }
 12075  
 12076  type CreateUserOutput struct {
 12077  	_ struct{} `type:"structure"`
 12078  
 12079  	// The ARN of the newly created user in the response.
 12080  	UserArn *string `type:"string"`
 12081  }
 12082  
 12083  // String returns the string representation.
 12084  //
 12085  // API parameter values that are decorated as "sensitive" in the API will not
 12086  // be included in the string output. The member name will be present, but the
 12087  // value will be replaced with "sensitive".
 12088  func (s CreateUserOutput) String() string {
 12089  	return awsutil.Prettify(s)
 12090  }
 12091  
 12092  // GoString returns the string representation.
 12093  //
 12094  // API parameter values that are decorated as "sensitive" in the API will not
 12095  // be included in the string output. The member name will be present, but the
 12096  // value will be replaced with "sensitive".
 12097  func (s CreateUserOutput) GoString() string {
 12098  	return s.String()
 12099  }
 12100  
 12101  // SetUserArn sets the UserArn field's value.
 12102  func (s *CreateUserOutput) SetUserArn(v string) *CreateUserOutput {
 12103  	s.UserArn = &v
 12104  	return s
 12105  }
 12106  
 12107  type DeleteAddressBookInput struct {
 12108  	_ struct{} `type:"structure"`
 12109  
 12110  	// The ARN of the address book to delete.
 12111  	//
 12112  	// AddressBookArn is a required field
 12113  	AddressBookArn *string `type:"string" required:"true"`
 12114  }
 12115  
 12116  // String returns the string representation.
 12117  //
 12118  // API parameter values that are decorated as "sensitive" in the API will not
 12119  // be included in the string output. The member name will be present, but the
 12120  // value will be replaced with "sensitive".
 12121  func (s DeleteAddressBookInput) String() string {
 12122  	return awsutil.Prettify(s)
 12123  }
 12124  
 12125  // GoString returns the string representation.
 12126  //
 12127  // API parameter values that are decorated as "sensitive" in the API will not
 12128  // be included in the string output. The member name will be present, but the
 12129  // value will be replaced with "sensitive".
 12130  func (s DeleteAddressBookInput) GoString() string {
 12131  	return s.String()
 12132  }
 12133  
 12134  // Validate inspects the fields of the type to determine if they are valid.
 12135  func (s *DeleteAddressBookInput) Validate() error {
 12136  	invalidParams := request.ErrInvalidParams{Context: "DeleteAddressBookInput"}
 12137  	if s.AddressBookArn == nil {
 12138  		invalidParams.Add(request.NewErrParamRequired("AddressBookArn"))
 12139  	}
 12140  
 12141  	if invalidParams.Len() > 0 {
 12142  		return invalidParams
 12143  	}
 12144  	return nil
 12145  }
 12146  
 12147  // SetAddressBookArn sets the AddressBookArn field's value.
 12148  func (s *DeleteAddressBookInput) SetAddressBookArn(v string) *DeleteAddressBookInput {
 12149  	s.AddressBookArn = &v
 12150  	return s
 12151  }
 12152  
 12153  type DeleteAddressBookOutput struct {
 12154  	_ struct{} `type:"structure"`
 12155  }
 12156  
 12157  // String returns the string representation.
 12158  //
 12159  // API parameter values that are decorated as "sensitive" in the API will not
 12160  // be included in the string output. The member name will be present, but the
 12161  // value will be replaced with "sensitive".
 12162  func (s DeleteAddressBookOutput) String() string {
 12163  	return awsutil.Prettify(s)
 12164  }
 12165  
 12166  // GoString returns the string representation.
 12167  //
 12168  // API parameter values that are decorated as "sensitive" in the API will not
 12169  // be included in the string output. The member name will be present, but the
 12170  // value will be replaced with "sensitive".
 12171  func (s DeleteAddressBookOutput) GoString() string {
 12172  	return s.String()
 12173  }
 12174  
 12175  type DeleteBusinessReportScheduleInput struct {
 12176  	_ struct{} `type:"structure"`
 12177  
 12178  	// The ARN of the business report schedule.
 12179  	//
 12180  	// ScheduleArn is a required field
 12181  	ScheduleArn *string `type:"string" required:"true"`
 12182  }
 12183  
 12184  // String returns the string representation.
 12185  //
 12186  // API parameter values that are decorated as "sensitive" in the API will not
 12187  // be included in the string output. The member name will be present, but the
 12188  // value will be replaced with "sensitive".
 12189  func (s DeleteBusinessReportScheduleInput) String() string {
 12190  	return awsutil.Prettify(s)
 12191  }
 12192  
 12193  // GoString returns the string representation.
 12194  //
 12195  // API parameter values that are decorated as "sensitive" in the API will not
 12196  // be included in the string output. The member name will be present, but the
 12197  // value will be replaced with "sensitive".
 12198  func (s DeleteBusinessReportScheduleInput) GoString() string {
 12199  	return s.String()
 12200  }
 12201  
 12202  // Validate inspects the fields of the type to determine if they are valid.
 12203  func (s *DeleteBusinessReportScheduleInput) Validate() error {
 12204  	invalidParams := request.ErrInvalidParams{Context: "DeleteBusinessReportScheduleInput"}
 12205  	if s.ScheduleArn == nil {
 12206  		invalidParams.Add(request.NewErrParamRequired("ScheduleArn"))
 12207  	}
 12208  
 12209  	if invalidParams.Len() > 0 {
 12210  		return invalidParams
 12211  	}
 12212  	return nil
 12213  }
 12214  
 12215  // SetScheduleArn sets the ScheduleArn field's value.
 12216  func (s *DeleteBusinessReportScheduleInput) SetScheduleArn(v string) *DeleteBusinessReportScheduleInput {
 12217  	s.ScheduleArn = &v
 12218  	return s
 12219  }
 12220  
 12221  type DeleteBusinessReportScheduleOutput struct {
 12222  	_ struct{} `type:"structure"`
 12223  }
 12224  
 12225  // String returns the string representation.
 12226  //
 12227  // API parameter values that are decorated as "sensitive" in the API will not
 12228  // be included in the string output. The member name will be present, but the
 12229  // value will be replaced with "sensitive".
 12230  func (s DeleteBusinessReportScheduleOutput) String() string {
 12231  	return awsutil.Prettify(s)
 12232  }
 12233  
 12234  // GoString returns the string representation.
 12235  //
 12236  // API parameter values that are decorated as "sensitive" in the API will not
 12237  // be included in the string output. The member name will be present, but the
 12238  // value will be replaced with "sensitive".
 12239  func (s DeleteBusinessReportScheduleOutput) GoString() string {
 12240  	return s.String()
 12241  }
 12242  
 12243  type DeleteConferenceProviderInput struct {
 12244  	_ struct{} `type:"structure"`
 12245  
 12246  	// The ARN of the conference provider.
 12247  	//
 12248  	// ConferenceProviderArn is a required field
 12249  	ConferenceProviderArn *string `type:"string" required:"true"`
 12250  }
 12251  
 12252  // String returns the string representation.
 12253  //
 12254  // API parameter values that are decorated as "sensitive" in the API will not
 12255  // be included in the string output. The member name will be present, but the
 12256  // value will be replaced with "sensitive".
 12257  func (s DeleteConferenceProviderInput) String() string {
 12258  	return awsutil.Prettify(s)
 12259  }
 12260  
 12261  // GoString returns the string representation.
 12262  //
 12263  // API parameter values that are decorated as "sensitive" in the API will not
 12264  // be included in the string output. The member name will be present, but the
 12265  // value will be replaced with "sensitive".
 12266  func (s DeleteConferenceProviderInput) GoString() string {
 12267  	return s.String()
 12268  }
 12269  
 12270  // Validate inspects the fields of the type to determine if they are valid.
 12271  func (s *DeleteConferenceProviderInput) Validate() error {
 12272  	invalidParams := request.ErrInvalidParams{Context: "DeleteConferenceProviderInput"}
 12273  	if s.ConferenceProviderArn == nil {
 12274  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderArn"))
 12275  	}
 12276  
 12277  	if invalidParams.Len() > 0 {
 12278  		return invalidParams
 12279  	}
 12280  	return nil
 12281  }
 12282  
 12283  // SetConferenceProviderArn sets the ConferenceProviderArn field's value.
 12284  func (s *DeleteConferenceProviderInput) SetConferenceProviderArn(v string) *DeleteConferenceProviderInput {
 12285  	s.ConferenceProviderArn = &v
 12286  	return s
 12287  }
 12288  
 12289  type DeleteConferenceProviderOutput struct {
 12290  	_ struct{} `type:"structure"`
 12291  }
 12292  
 12293  // String returns the string representation.
 12294  //
 12295  // API parameter values that are decorated as "sensitive" in the API will not
 12296  // be included in the string output. The member name will be present, but the
 12297  // value will be replaced with "sensitive".
 12298  func (s DeleteConferenceProviderOutput) String() string {
 12299  	return awsutil.Prettify(s)
 12300  }
 12301  
 12302  // GoString returns the string representation.
 12303  //
 12304  // API parameter values that are decorated as "sensitive" in the API will not
 12305  // be included in the string output. The member name will be present, but the
 12306  // value will be replaced with "sensitive".
 12307  func (s DeleteConferenceProviderOutput) GoString() string {
 12308  	return s.String()
 12309  }
 12310  
 12311  type DeleteContactInput struct {
 12312  	_ struct{} `type:"structure"`
 12313  
 12314  	// The ARN of the contact to delete.
 12315  	//
 12316  	// ContactArn is a required field
 12317  	ContactArn *string `type:"string" required:"true"`
 12318  }
 12319  
 12320  // String returns the string representation.
 12321  //
 12322  // API parameter values that are decorated as "sensitive" in the API will not
 12323  // be included in the string output. The member name will be present, but the
 12324  // value will be replaced with "sensitive".
 12325  func (s DeleteContactInput) String() string {
 12326  	return awsutil.Prettify(s)
 12327  }
 12328  
 12329  // GoString returns the string representation.
 12330  //
 12331  // API parameter values that are decorated as "sensitive" in the API will not
 12332  // be included in the string output. The member name will be present, but the
 12333  // value will be replaced with "sensitive".
 12334  func (s DeleteContactInput) GoString() string {
 12335  	return s.String()
 12336  }
 12337  
 12338  // Validate inspects the fields of the type to determine if they are valid.
 12339  func (s *DeleteContactInput) Validate() error {
 12340  	invalidParams := request.ErrInvalidParams{Context: "DeleteContactInput"}
 12341  	if s.ContactArn == nil {
 12342  		invalidParams.Add(request.NewErrParamRequired("ContactArn"))
 12343  	}
 12344  
 12345  	if invalidParams.Len() > 0 {
 12346  		return invalidParams
 12347  	}
 12348  	return nil
 12349  }
 12350  
 12351  // SetContactArn sets the ContactArn field's value.
 12352  func (s *DeleteContactInput) SetContactArn(v string) *DeleteContactInput {
 12353  	s.ContactArn = &v
 12354  	return s
 12355  }
 12356  
 12357  type DeleteContactOutput struct {
 12358  	_ struct{} `type:"structure"`
 12359  }
 12360  
 12361  // String returns the string representation.
 12362  //
 12363  // API parameter values that are decorated as "sensitive" in the API will not
 12364  // be included in the string output. The member name will be present, but the
 12365  // value will be replaced with "sensitive".
 12366  func (s DeleteContactOutput) String() string {
 12367  	return awsutil.Prettify(s)
 12368  }
 12369  
 12370  // GoString returns the string representation.
 12371  //
 12372  // API parameter values that are decorated as "sensitive" in the API will not
 12373  // be included in the string output. The member name will be present, but the
 12374  // value will be replaced with "sensitive".
 12375  func (s DeleteContactOutput) GoString() string {
 12376  	return s.String()
 12377  }
 12378  
 12379  type DeleteDeviceInput struct {
 12380  	_ struct{} `type:"structure"`
 12381  
 12382  	// The ARN of the device for which to request details.
 12383  	//
 12384  	// DeviceArn is a required field
 12385  	DeviceArn *string `type:"string" required:"true"`
 12386  }
 12387  
 12388  // String returns the string representation.
 12389  //
 12390  // API parameter values that are decorated as "sensitive" in the API will not
 12391  // be included in the string output. The member name will be present, but the
 12392  // value will be replaced with "sensitive".
 12393  func (s DeleteDeviceInput) String() string {
 12394  	return awsutil.Prettify(s)
 12395  }
 12396  
 12397  // GoString returns the string representation.
 12398  //
 12399  // API parameter values that are decorated as "sensitive" in the API will not
 12400  // be included in the string output. The member name will be present, but the
 12401  // value will be replaced with "sensitive".
 12402  func (s DeleteDeviceInput) GoString() string {
 12403  	return s.String()
 12404  }
 12405  
 12406  // Validate inspects the fields of the type to determine if they are valid.
 12407  func (s *DeleteDeviceInput) Validate() error {
 12408  	invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceInput"}
 12409  	if s.DeviceArn == nil {
 12410  		invalidParams.Add(request.NewErrParamRequired("DeviceArn"))
 12411  	}
 12412  
 12413  	if invalidParams.Len() > 0 {
 12414  		return invalidParams
 12415  	}
 12416  	return nil
 12417  }
 12418  
 12419  // SetDeviceArn sets the DeviceArn field's value.
 12420  func (s *DeleteDeviceInput) SetDeviceArn(v string) *DeleteDeviceInput {
 12421  	s.DeviceArn = &v
 12422  	return s
 12423  }
 12424  
 12425  type DeleteDeviceOutput struct {
 12426  	_ struct{} `type:"structure"`
 12427  }
 12428  
 12429  // String returns the string representation.
 12430  //
 12431  // API parameter values that are decorated as "sensitive" in the API will not
 12432  // be included in the string output. The member name will be present, but the
 12433  // value will be replaced with "sensitive".
 12434  func (s DeleteDeviceOutput) String() string {
 12435  	return awsutil.Prettify(s)
 12436  }
 12437  
 12438  // GoString returns the string representation.
 12439  //
 12440  // API parameter values that are decorated as "sensitive" in the API will not
 12441  // be included in the string output. The member name will be present, but the
 12442  // value will be replaced with "sensitive".
 12443  func (s DeleteDeviceOutput) GoString() string {
 12444  	return s.String()
 12445  }
 12446  
 12447  type DeleteDeviceUsageDataInput struct {
 12448  	_ struct{} `type:"structure"`
 12449  
 12450  	// The ARN of the device.
 12451  	//
 12452  	// DeviceArn is a required field
 12453  	DeviceArn *string `type:"string" required:"true"`
 12454  
 12455  	// The type of usage data to delete.
 12456  	//
 12457  	// DeviceUsageType is a required field
 12458  	DeviceUsageType *string `type:"string" required:"true" enum:"DeviceUsageType"`
 12459  }
 12460  
 12461  // String returns the string representation.
 12462  //
 12463  // API parameter values that are decorated as "sensitive" in the API will not
 12464  // be included in the string output. The member name will be present, but the
 12465  // value will be replaced with "sensitive".
 12466  func (s DeleteDeviceUsageDataInput) String() string {
 12467  	return awsutil.Prettify(s)
 12468  }
 12469  
 12470  // GoString returns the string representation.
 12471  //
 12472  // API parameter values that are decorated as "sensitive" in the API will not
 12473  // be included in the string output. The member name will be present, but the
 12474  // value will be replaced with "sensitive".
 12475  func (s DeleteDeviceUsageDataInput) GoString() string {
 12476  	return s.String()
 12477  }
 12478  
 12479  // Validate inspects the fields of the type to determine if they are valid.
 12480  func (s *DeleteDeviceUsageDataInput) Validate() error {
 12481  	invalidParams := request.ErrInvalidParams{Context: "DeleteDeviceUsageDataInput"}
 12482  	if s.DeviceArn == nil {
 12483  		invalidParams.Add(request.NewErrParamRequired("DeviceArn"))
 12484  	}
 12485  	if s.DeviceUsageType == nil {
 12486  		invalidParams.Add(request.NewErrParamRequired("DeviceUsageType"))
 12487  	}
 12488  
 12489  	if invalidParams.Len() > 0 {
 12490  		return invalidParams
 12491  	}
 12492  	return nil
 12493  }
 12494  
 12495  // SetDeviceArn sets the DeviceArn field's value.
 12496  func (s *DeleteDeviceUsageDataInput) SetDeviceArn(v string) *DeleteDeviceUsageDataInput {
 12497  	s.DeviceArn = &v
 12498  	return s
 12499  }
 12500  
 12501  // SetDeviceUsageType sets the DeviceUsageType field's value.
 12502  func (s *DeleteDeviceUsageDataInput) SetDeviceUsageType(v string) *DeleteDeviceUsageDataInput {
 12503  	s.DeviceUsageType = &v
 12504  	return s
 12505  }
 12506  
 12507  type DeleteDeviceUsageDataOutput struct {
 12508  	_ struct{} `type:"structure"`
 12509  }
 12510  
 12511  // String returns the string representation.
 12512  //
 12513  // API parameter values that are decorated as "sensitive" in the API will not
 12514  // be included in the string output. The member name will be present, but the
 12515  // value will be replaced with "sensitive".
 12516  func (s DeleteDeviceUsageDataOutput) String() string {
 12517  	return awsutil.Prettify(s)
 12518  }
 12519  
 12520  // GoString returns the string representation.
 12521  //
 12522  // API parameter values that are decorated as "sensitive" in the API will not
 12523  // be included in the string output. The member name will be present, but the
 12524  // value will be replaced with "sensitive".
 12525  func (s DeleteDeviceUsageDataOutput) GoString() string {
 12526  	return s.String()
 12527  }
 12528  
 12529  type DeleteGatewayGroupInput struct {
 12530  	_ struct{} `type:"structure"`
 12531  
 12532  	// The ARN of the gateway group to delete.
 12533  	//
 12534  	// GatewayGroupArn is a required field
 12535  	GatewayGroupArn *string `type:"string" required:"true"`
 12536  }
 12537  
 12538  // String returns the string representation.
 12539  //
 12540  // API parameter values that are decorated as "sensitive" in the API will not
 12541  // be included in the string output. The member name will be present, but the
 12542  // value will be replaced with "sensitive".
 12543  func (s DeleteGatewayGroupInput) String() string {
 12544  	return awsutil.Prettify(s)
 12545  }
 12546  
 12547  // GoString returns the string representation.
 12548  //
 12549  // API parameter values that are decorated as "sensitive" in the API will not
 12550  // be included in the string output. The member name will be present, but the
 12551  // value will be replaced with "sensitive".
 12552  func (s DeleteGatewayGroupInput) GoString() string {
 12553  	return s.String()
 12554  }
 12555  
 12556  // Validate inspects the fields of the type to determine if they are valid.
 12557  func (s *DeleteGatewayGroupInput) Validate() error {
 12558  	invalidParams := request.ErrInvalidParams{Context: "DeleteGatewayGroupInput"}
 12559  	if s.GatewayGroupArn == nil {
 12560  		invalidParams.Add(request.NewErrParamRequired("GatewayGroupArn"))
 12561  	}
 12562  
 12563  	if invalidParams.Len() > 0 {
 12564  		return invalidParams
 12565  	}
 12566  	return nil
 12567  }
 12568  
 12569  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 12570  func (s *DeleteGatewayGroupInput) SetGatewayGroupArn(v string) *DeleteGatewayGroupInput {
 12571  	s.GatewayGroupArn = &v
 12572  	return s
 12573  }
 12574  
 12575  type DeleteGatewayGroupOutput struct {
 12576  	_ struct{} `type:"structure"`
 12577  }
 12578  
 12579  // String returns the string representation.
 12580  //
 12581  // API parameter values that are decorated as "sensitive" in the API will not
 12582  // be included in the string output. The member name will be present, but the
 12583  // value will be replaced with "sensitive".
 12584  func (s DeleteGatewayGroupOutput) String() string {
 12585  	return awsutil.Prettify(s)
 12586  }
 12587  
 12588  // GoString returns the string representation.
 12589  //
 12590  // API parameter values that are decorated as "sensitive" in the API will not
 12591  // be included in the string output. The member name will be present, but the
 12592  // value will be replaced with "sensitive".
 12593  func (s DeleteGatewayGroupOutput) GoString() string {
 12594  	return s.String()
 12595  }
 12596  
 12597  type DeleteNetworkProfileInput struct {
 12598  	_ struct{} `type:"structure"`
 12599  
 12600  	// The ARN of the network profile associated with a device.
 12601  	//
 12602  	// NetworkProfileArn is a required field
 12603  	NetworkProfileArn *string `type:"string" required:"true"`
 12604  }
 12605  
 12606  // String returns the string representation.
 12607  //
 12608  // API parameter values that are decorated as "sensitive" in the API will not
 12609  // be included in the string output. The member name will be present, but the
 12610  // value will be replaced with "sensitive".
 12611  func (s DeleteNetworkProfileInput) String() string {
 12612  	return awsutil.Prettify(s)
 12613  }
 12614  
 12615  // GoString returns the string representation.
 12616  //
 12617  // API parameter values that are decorated as "sensitive" in the API will not
 12618  // be included in the string output. The member name will be present, but the
 12619  // value will be replaced with "sensitive".
 12620  func (s DeleteNetworkProfileInput) GoString() string {
 12621  	return s.String()
 12622  }
 12623  
 12624  // Validate inspects the fields of the type to determine if they are valid.
 12625  func (s *DeleteNetworkProfileInput) Validate() error {
 12626  	invalidParams := request.ErrInvalidParams{Context: "DeleteNetworkProfileInput"}
 12627  	if s.NetworkProfileArn == nil {
 12628  		invalidParams.Add(request.NewErrParamRequired("NetworkProfileArn"))
 12629  	}
 12630  
 12631  	if invalidParams.Len() > 0 {
 12632  		return invalidParams
 12633  	}
 12634  	return nil
 12635  }
 12636  
 12637  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 12638  func (s *DeleteNetworkProfileInput) SetNetworkProfileArn(v string) *DeleteNetworkProfileInput {
 12639  	s.NetworkProfileArn = &v
 12640  	return s
 12641  }
 12642  
 12643  type DeleteNetworkProfileOutput struct {
 12644  	_ struct{} `type:"structure"`
 12645  }
 12646  
 12647  // String returns the string representation.
 12648  //
 12649  // API parameter values that are decorated as "sensitive" in the API will not
 12650  // be included in the string output. The member name will be present, but the
 12651  // value will be replaced with "sensitive".
 12652  func (s DeleteNetworkProfileOutput) String() string {
 12653  	return awsutil.Prettify(s)
 12654  }
 12655  
 12656  // GoString returns the string representation.
 12657  //
 12658  // API parameter values that are decorated as "sensitive" in the API will not
 12659  // be included in the string output. The member name will be present, but the
 12660  // value will be replaced with "sensitive".
 12661  func (s DeleteNetworkProfileOutput) GoString() string {
 12662  	return s.String()
 12663  }
 12664  
 12665  type DeleteProfileInput struct {
 12666  	_ struct{} `type:"structure"`
 12667  
 12668  	// The ARN of the room profile to delete. Required.
 12669  	ProfileArn *string `type:"string"`
 12670  }
 12671  
 12672  // String returns the string representation.
 12673  //
 12674  // API parameter values that are decorated as "sensitive" in the API will not
 12675  // be included in the string output. The member name will be present, but the
 12676  // value will be replaced with "sensitive".
 12677  func (s DeleteProfileInput) String() string {
 12678  	return awsutil.Prettify(s)
 12679  }
 12680  
 12681  // GoString returns the string representation.
 12682  //
 12683  // API parameter values that are decorated as "sensitive" in the API will not
 12684  // be included in the string output. The member name will be present, but the
 12685  // value will be replaced with "sensitive".
 12686  func (s DeleteProfileInput) GoString() string {
 12687  	return s.String()
 12688  }
 12689  
 12690  // SetProfileArn sets the ProfileArn field's value.
 12691  func (s *DeleteProfileInput) SetProfileArn(v string) *DeleteProfileInput {
 12692  	s.ProfileArn = &v
 12693  	return s
 12694  }
 12695  
 12696  type DeleteProfileOutput struct {
 12697  	_ struct{} `type:"structure"`
 12698  }
 12699  
 12700  // String returns the string representation.
 12701  //
 12702  // API parameter values that are decorated as "sensitive" in the API will not
 12703  // be included in the string output. The member name will be present, but the
 12704  // value will be replaced with "sensitive".
 12705  func (s DeleteProfileOutput) String() string {
 12706  	return awsutil.Prettify(s)
 12707  }
 12708  
 12709  // GoString returns the string representation.
 12710  //
 12711  // API parameter values that are decorated as "sensitive" in the API will not
 12712  // be included in the string output. The member name will be present, but the
 12713  // value will be replaced with "sensitive".
 12714  func (s DeleteProfileOutput) GoString() string {
 12715  	return s.String()
 12716  }
 12717  
 12718  type DeleteRoomInput struct {
 12719  	_ struct{} `type:"structure"`
 12720  
 12721  	// The ARN of the room to delete. Required.
 12722  	RoomArn *string `type:"string"`
 12723  }
 12724  
 12725  // String returns the string representation.
 12726  //
 12727  // API parameter values that are decorated as "sensitive" in the API will not
 12728  // be included in the string output. The member name will be present, but the
 12729  // value will be replaced with "sensitive".
 12730  func (s DeleteRoomInput) String() string {
 12731  	return awsutil.Prettify(s)
 12732  }
 12733  
 12734  // GoString returns the string representation.
 12735  //
 12736  // API parameter values that are decorated as "sensitive" in the API will not
 12737  // be included in the string output. The member name will be present, but the
 12738  // value will be replaced with "sensitive".
 12739  func (s DeleteRoomInput) GoString() string {
 12740  	return s.String()
 12741  }
 12742  
 12743  // SetRoomArn sets the RoomArn field's value.
 12744  func (s *DeleteRoomInput) SetRoomArn(v string) *DeleteRoomInput {
 12745  	s.RoomArn = &v
 12746  	return s
 12747  }
 12748  
 12749  type DeleteRoomOutput struct {
 12750  	_ struct{} `type:"structure"`
 12751  }
 12752  
 12753  // String returns the string representation.
 12754  //
 12755  // API parameter values that are decorated as "sensitive" in the API will not
 12756  // be included in the string output. The member name will be present, but the
 12757  // value will be replaced with "sensitive".
 12758  func (s DeleteRoomOutput) String() string {
 12759  	return awsutil.Prettify(s)
 12760  }
 12761  
 12762  // GoString returns the string representation.
 12763  //
 12764  // API parameter values that are decorated as "sensitive" in the API will not
 12765  // be included in the string output. The member name will be present, but the
 12766  // value will be replaced with "sensitive".
 12767  func (s DeleteRoomOutput) GoString() string {
 12768  	return s.String()
 12769  }
 12770  
 12771  type DeleteRoomSkillParameterInput struct {
 12772  	_ struct{} `type:"structure"`
 12773  
 12774  	// The room skill parameter key for which to remove details.
 12775  	//
 12776  	// ParameterKey is a required field
 12777  	ParameterKey *string `min:"1" type:"string" required:"true"`
 12778  
 12779  	// The ARN of the room from which to remove the room skill parameter details.
 12780  	RoomArn *string `type:"string"`
 12781  
 12782  	// The ID of the skill from which to remove the room skill parameter details.
 12783  	//
 12784  	// SkillId is a required field
 12785  	SkillId *string `type:"string" required:"true"`
 12786  }
 12787  
 12788  // String returns the string representation.
 12789  //
 12790  // API parameter values that are decorated as "sensitive" in the API will not
 12791  // be included in the string output. The member name will be present, but the
 12792  // value will be replaced with "sensitive".
 12793  func (s DeleteRoomSkillParameterInput) String() string {
 12794  	return awsutil.Prettify(s)
 12795  }
 12796  
 12797  // GoString returns the string representation.
 12798  //
 12799  // API parameter values that are decorated as "sensitive" in the API will not
 12800  // be included in the string output. The member name will be present, but the
 12801  // value will be replaced with "sensitive".
 12802  func (s DeleteRoomSkillParameterInput) GoString() string {
 12803  	return s.String()
 12804  }
 12805  
 12806  // Validate inspects the fields of the type to determine if they are valid.
 12807  func (s *DeleteRoomSkillParameterInput) Validate() error {
 12808  	invalidParams := request.ErrInvalidParams{Context: "DeleteRoomSkillParameterInput"}
 12809  	if s.ParameterKey == nil {
 12810  		invalidParams.Add(request.NewErrParamRequired("ParameterKey"))
 12811  	}
 12812  	if s.ParameterKey != nil && len(*s.ParameterKey) < 1 {
 12813  		invalidParams.Add(request.NewErrParamMinLen("ParameterKey", 1))
 12814  	}
 12815  	if s.SkillId == nil {
 12816  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 12817  	}
 12818  
 12819  	if invalidParams.Len() > 0 {
 12820  		return invalidParams
 12821  	}
 12822  	return nil
 12823  }
 12824  
 12825  // SetParameterKey sets the ParameterKey field's value.
 12826  func (s *DeleteRoomSkillParameterInput) SetParameterKey(v string) *DeleteRoomSkillParameterInput {
 12827  	s.ParameterKey = &v
 12828  	return s
 12829  }
 12830  
 12831  // SetRoomArn sets the RoomArn field's value.
 12832  func (s *DeleteRoomSkillParameterInput) SetRoomArn(v string) *DeleteRoomSkillParameterInput {
 12833  	s.RoomArn = &v
 12834  	return s
 12835  }
 12836  
 12837  // SetSkillId sets the SkillId field's value.
 12838  func (s *DeleteRoomSkillParameterInput) SetSkillId(v string) *DeleteRoomSkillParameterInput {
 12839  	s.SkillId = &v
 12840  	return s
 12841  }
 12842  
 12843  type DeleteRoomSkillParameterOutput struct {
 12844  	_ struct{} `type:"structure"`
 12845  }
 12846  
 12847  // String returns the string representation.
 12848  //
 12849  // API parameter values that are decorated as "sensitive" in the API will not
 12850  // be included in the string output. The member name will be present, but the
 12851  // value will be replaced with "sensitive".
 12852  func (s DeleteRoomSkillParameterOutput) String() string {
 12853  	return awsutil.Prettify(s)
 12854  }
 12855  
 12856  // GoString returns the string representation.
 12857  //
 12858  // API parameter values that are decorated as "sensitive" in the API will not
 12859  // be included in the string output. The member name will be present, but the
 12860  // value will be replaced with "sensitive".
 12861  func (s DeleteRoomSkillParameterOutput) GoString() string {
 12862  	return s.String()
 12863  }
 12864  
 12865  type DeleteSkillAuthorizationInput struct {
 12866  	_ struct{} `type:"structure"`
 12867  
 12868  	// The room that the skill is authorized for.
 12869  	RoomArn *string `type:"string"`
 12870  
 12871  	// The unique identifier of a skill.
 12872  	//
 12873  	// SkillId is a required field
 12874  	SkillId *string `type:"string" required:"true"`
 12875  }
 12876  
 12877  // String returns the string representation.
 12878  //
 12879  // API parameter values that are decorated as "sensitive" in the API will not
 12880  // be included in the string output. The member name will be present, but the
 12881  // value will be replaced with "sensitive".
 12882  func (s DeleteSkillAuthorizationInput) String() string {
 12883  	return awsutil.Prettify(s)
 12884  }
 12885  
 12886  // GoString returns the string representation.
 12887  //
 12888  // API parameter values that are decorated as "sensitive" in the API will not
 12889  // be included in the string output. The member name will be present, but the
 12890  // value will be replaced with "sensitive".
 12891  func (s DeleteSkillAuthorizationInput) GoString() string {
 12892  	return s.String()
 12893  }
 12894  
 12895  // Validate inspects the fields of the type to determine if they are valid.
 12896  func (s *DeleteSkillAuthorizationInput) Validate() error {
 12897  	invalidParams := request.ErrInvalidParams{Context: "DeleteSkillAuthorizationInput"}
 12898  	if s.SkillId == nil {
 12899  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 12900  	}
 12901  
 12902  	if invalidParams.Len() > 0 {
 12903  		return invalidParams
 12904  	}
 12905  	return nil
 12906  }
 12907  
 12908  // SetRoomArn sets the RoomArn field's value.
 12909  func (s *DeleteSkillAuthorizationInput) SetRoomArn(v string) *DeleteSkillAuthorizationInput {
 12910  	s.RoomArn = &v
 12911  	return s
 12912  }
 12913  
 12914  // SetSkillId sets the SkillId field's value.
 12915  func (s *DeleteSkillAuthorizationInput) SetSkillId(v string) *DeleteSkillAuthorizationInput {
 12916  	s.SkillId = &v
 12917  	return s
 12918  }
 12919  
 12920  type DeleteSkillAuthorizationOutput struct {
 12921  	_ struct{} `type:"structure"`
 12922  }
 12923  
 12924  // String returns the string representation.
 12925  //
 12926  // API parameter values that are decorated as "sensitive" in the API will not
 12927  // be included in the string output. The member name will be present, but the
 12928  // value will be replaced with "sensitive".
 12929  func (s DeleteSkillAuthorizationOutput) String() string {
 12930  	return awsutil.Prettify(s)
 12931  }
 12932  
 12933  // GoString returns the string representation.
 12934  //
 12935  // API parameter values that are decorated as "sensitive" in the API will not
 12936  // be included in the string output. The member name will be present, but the
 12937  // value will be replaced with "sensitive".
 12938  func (s DeleteSkillAuthorizationOutput) GoString() string {
 12939  	return s.String()
 12940  }
 12941  
 12942  type DeleteSkillGroupInput struct {
 12943  	_ struct{} `type:"structure"`
 12944  
 12945  	// The ARN of the skill group to delete. Required.
 12946  	SkillGroupArn *string `type:"string"`
 12947  }
 12948  
 12949  // String returns the string representation.
 12950  //
 12951  // API parameter values that are decorated as "sensitive" in the API will not
 12952  // be included in the string output. The member name will be present, but the
 12953  // value will be replaced with "sensitive".
 12954  func (s DeleteSkillGroupInput) String() string {
 12955  	return awsutil.Prettify(s)
 12956  }
 12957  
 12958  // GoString returns the string representation.
 12959  //
 12960  // API parameter values that are decorated as "sensitive" in the API will not
 12961  // be included in the string output. The member name will be present, but the
 12962  // value will be replaced with "sensitive".
 12963  func (s DeleteSkillGroupInput) GoString() string {
 12964  	return s.String()
 12965  }
 12966  
 12967  // SetSkillGroupArn sets the SkillGroupArn field's value.
 12968  func (s *DeleteSkillGroupInput) SetSkillGroupArn(v string) *DeleteSkillGroupInput {
 12969  	s.SkillGroupArn = &v
 12970  	return s
 12971  }
 12972  
 12973  type DeleteSkillGroupOutput struct {
 12974  	_ struct{} `type:"structure"`
 12975  }
 12976  
 12977  // String returns the string representation.
 12978  //
 12979  // API parameter values that are decorated as "sensitive" in the API will not
 12980  // be included in the string output. The member name will be present, but the
 12981  // value will be replaced with "sensitive".
 12982  func (s DeleteSkillGroupOutput) String() string {
 12983  	return awsutil.Prettify(s)
 12984  }
 12985  
 12986  // GoString returns the string representation.
 12987  //
 12988  // API parameter values that are decorated as "sensitive" in the API will not
 12989  // be included in the string output. The member name will be present, but the
 12990  // value will be replaced with "sensitive".
 12991  func (s DeleteSkillGroupOutput) GoString() string {
 12992  	return s.String()
 12993  }
 12994  
 12995  type DeleteUserInput struct {
 12996  	_ struct{} `type:"structure"`
 12997  
 12998  	// The ARN of the user's enrollment in the organization. Required.
 12999  	//
 13000  	// EnrollmentId is a required field
 13001  	EnrollmentId *string `type:"string" required:"true"`
 13002  
 13003  	// The ARN of the user to delete in the organization. Required.
 13004  	UserArn *string `type:"string"`
 13005  }
 13006  
 13007  // String returns the string representation.
 13008  //
 13009  // API parameter values that are decorated as "sensitive" in the API will not
 13010  // be included in the string output. The member name will be present, but the
 13011  // value will be replaced with "sensitive".
 13012  func (s DeleteUserInput) String() string {
 13013  	return awsutil.Prettify(s)
 13014  }
 13015  
 13016  // GoString returns the string representation.
 13017  //
 13018  // API parameter values that are decorated as "sensitive" in the API will not
 13019  // be included in the string output. The member name will be present, but the
 13020  // value will be replaced with "sensitive".
 13021  func (s DeleteUserInput) GoString() string {
 13022  	return s.String()
 13023  }
 13024  
 13025  // Validate inspects the fields of the type to determine if they are valid.
 13026  func (s *DeleteUserInput) Validate() error {
 13027  	invalidParams := request.ErrInvalidParams{Context: "DeleteUserInput"}
 13028  	if s.EnrollmentId == nil {
 13029  		invalidParams.Add(request.NewErrParamRequired("EnrollmentId"))
 13030  	}
 13031  
 13032  	if invalidParams.Len() > 0 {
 13033  		return invalidParams
 13034  	}
 13035  	return nil
 13036  }
 13037  
 13038  // SetEnrollmentId sets the EnrollmentId field's value.
 13039  func (s *DeleteUserInput) SetEnrollmentId(v string) *DeleteUserInput {
 13040  	s.EnrollmentId = &v
 13041  	return s
 13042  }
 13043  
 13044  // SetUserArn sets the UserArn field's value.
 13045  func (s *DeleteUserInput) SetUserArn(v string) *DeleteUserInput {
 13046  	s.UserArn = &v
 13047  	return s
 13048  }
 13049  
 13050  type DeleteUserOutput struct {
 13051  	_ struct{} `type:"structure"`
 13052  }
 13053  
 13054  // String returns the string representation.
 13055  //
 13056  // API parameter values that are decorated as "sensitive" in the API will not
 13057  // be included in the string output. The member name will be present, but the
 13058  // value will be replaced with "sensitive".
 13059  func (s DeleteUserOutput) String() string {
 13060  	return awsutil.Prettify(s)
 13061  }
 13062  
 13063  // GoString returns the string representation.
 13064  //
 13065  // API parameter values that are decorated as "sensitive" in the API will not
 13066  // be included in the string output. The member name will be present, but the
 13067  // value will be replaced with "sensitive".
 13068  func (s DeleteUserOutput) GoString() string {
 13069  	return s.String()
 13070  }
 13071  
 13072  // The details about the developer that published the skill.
 13073  type DeveloperInfo struct {
 13074  	_ struct{} `type:"structure"`
 13075  
 13076  	// The name of the developer.
 13077  	DeveloperName *string `type:"string"`
 13078  
 13079  	// The email of the developer.
 13080  	Email *string `min:"1" type:"string"`
 13081  
 13082  	// The URL of the privacy policy.
 13083  	PrivacyPolicy *string `type:"string"`
 13084  
 13085  	// The website of the developer.
 13086  	Url *string `type:"string"`
 13087  }
 13088  
 13089  // String returns the string representation.
 13090  //
 13091  // API parameter values that are decorated as "sensitive" in the API will not
 13092  // be included in the string output. The member name will be present, but the
 13093  // value will be replaced with "sensitive".
 13094  func (s DeveloperInfo) String() string {
 13095  	return awsutil.Prettify(s)
 13096  }
 13097  
 13098  // GoString returns the string representation.
 13099  //
 13100  // API parameter values that are decorated as "sensitive" in the API will not
 13101  // be included in the string output. The member name will be present, but the
 13102  // value will be replaced with "sensitive".
 13103  func (s DeveloperInfo) GoString() string {
 13104  	return s.String()
 13105  }
 13106  
 13107  // SetDeveloperName sets the DeveloperName field's value.
 13108  func (s *DeveloperInfo) SetDeveloperName(v string) *DeveloperInfo {
 13109  	s.DeveloperName = &v
 13110  	return s
 13111  }
 13112  
 13113  // SetEmail sets the Email field's value.
 13114  func (s *DeveloperInfo) SetEmail(v string) *DeveloperInfo {
 13115  	s.Email = &v
 13116  	return s
 13117  }
 13118  
 13119  // SetPrivacyPolicy sets the PrivacyPolicy field's value.
 13120  func (s *DeveloperInfo) SetPrivacyPolicy(v string) *DeveloperInfo {
 13121  	s.PrivacyPolicy = &v
 13122  	return s
 13123  }
 13124  
 13125  // SetUrl sets the Url field's value.
 13126  func (s *DeveloperInfo) SetUrl(v string) *DeveloperInfo {
 13127  	s.Url = &v
 13128  	return s
 13129  }
 13130  
 13131  // A device with attributes.
 13132  type Device struct {
 13133  	_ struct{} `type:"structure"`
 13134  
 13135  	// The ARN of a device.
 13136  	DeviceArn *string `type:"string"`
 13137  
 13138  	// The name of a device.
 13139  	DeviceName *string `min:"2" type:"string"`
 13140  
 13141  	// The serial number of a device.
 13142  	DeviceSerialNumber *string `type:"string"`
 13143  
 13144  	// The status of a device. If the status is not READY, check the DeviceStatusInfo
 13145  	// value for details.
 13146  	DeviceStatus *string `type:"string" enum:"DeviceStatus"`
 13147  
 13148  	// Detailed information about a device's status.
 13149  	DeviceStatusInfo *DeviceStatusInfo `type:"structure"`
 13150  
 13151  	// The type of a device.
 13152  	DeviceType *string `type:"string"`
 13153  
 13154  	// The MAC address of a device.
 13155  	MacAddress *string `type:"string"`
 13156  
 13157  	// Detailed information about a device's network profile.
 13158  	NetworkProfileInfo *DeviceNetworkProfileInfo `type:"structure"`
 13159  
 13160  	// The room ARN of a device.
 13161  	RoomArn *string `type:"string"`
 13162  
 13163  	// The software version of a device.
 13164  	SoftwareVersion *string `type:"string"`
 13165  }
 13166  
 13167  // String returns the string representation.
 13168  //
 13169  // API parameter values that are decorated as "sensitive" in the API will not
 13170  // be included in the string output. The member name will be present, but the
 13171  // value will be replaced with "sensitive".
 13172  func (s Device) String() string {
 13173  	return awsutil.Prettify(s)
 13174  }
 13175  
 13176  // GoString returns the string representation.
 13177  //
 13178  // API parameter values that are decorated as "sensitive" in the API will not
 13179  // be included in the string output. The member name will be present, but the
 13180  // value will be replaced with "sensitive".
 13181  func (s Device) GoString() string {
 13182  	return s.String()
 13183  }
 13184  
 13185  // SetDeviceArn sets the DeviceArn field's value.
 13186  func (s *Device) SetDeviceArn(v string) *Device {
 13187  	s.DeviceArn = &v
 13188  	return s
 13189  }
 13190  
 13191  // SetDeviceName sets the DeviceName field's value.
 13192  func (s *Device) SetDeviceName(v string) *Device {
 13193  	s.DeviceName = &v
 13194  	return s
 13195  }
 13196  
 13197  // SetDeviceSerialNumber sets the DeviceSerialNumber field's value.
 13198  func (s *Device) SetDeviceSerialNumber(v string) *Device {
 13199  	s.DeviceSerialNumber = &v
 13200  	return s
 13201  }
 13202  
 13203  // SetDeviceStatus sets the DeviceStatus field's value.
 13204  func (s *Device) SetDeviceStatus(v string) *Device {
 13205  	s.DeviceStatus = &v
 13206  	return s
 13207  }
 13208  
 13209  // SetDeviceStatusInfo sets the DeviceStatusInfo field's value.
 13210  func (s *Device) SetDeviceStatusInfo(v *DeviceStatusInfo) *Device {
 13211  	s.DeviceStatusInfo = v
 13212  	return s
 13213  }
 13214  
 13215  // SetDeviceType sets the DeviceType field's value.
 13216  func (s *Device) SetDeviceType(v string) *Device {
 13217  	s.DeviceType = &v
 13218  	return s
 13219  }
 13220  
 13221  // SetMacAddress sets the MacAddress field's value.
 13222  func (s *Device) SetMacAddress(v string) *Device {
 13223  	s.MacAddress = &v
 13224  	return s
 13225  }
 13226  
 13227  // SetNetworkProfileInfo sets the NetworkProfileInfo field's value.
 13228  func (s *Device) SetNetworkProfileInfo(v *DeviceNetworkProfileInfo) *Device {
 13229  	s.NetworkProfileInfo = v
 13230  	return s
 13231  }
 13232  
 13233  // SetRoomArn sets the RoomArn field's value.
 13234  func (s *Device) SetRoomArn(v string) *Device {
 13235  	s.RoomArn = &v
 13236  	return s
 13237  }
 13238  
 13239  // SetSoftwareVersion sets the SoftwareVersion field's value.
 13240  func (s *Device) SetSoftwareVersion(v string) *Device {
 13241  	s.SoftwareVersion = &v
 13242  	return s
 13243  }
 13244  
 13245  // Device attributes.
 13246  type DeviceData struct {
 13247  	_ struct{} `type:"structure"`
 13248  
 13249  	// The time (in epoch) when the device data was created.
 13250  	CreatedTime *time.Time `type:"timestamp"`
 13251  
 13252  	// The ARN of a device.
 13253  	DeviceArn *string `type:"string"`
 13254  
 13255  	// The name of a device.
 13256  	DeviceName *string `min:"2" type:"string"`
 13257  
 13258  	// The serial number of a device.
 13259  	DeviceSerialNumber *string `type:"string"`
 13260  
 13261  	// The status of a device.
 13262  	DeviceStatus *string `type:"string" enum:"DeviceStatus"`
 13263  
 13264  	// Detailed information about a device's status.
 13265  	DeviceStatusInfo *DeviceStatusInfo `type:"structure"`
 13266  
 13267  	// The type of a device.
 13268  	DeviceType *string `type:"string"`
 13269  
 13270  	// The MAC address of a device.
 13271  	MacAddress *string `type:"string"`
 13272  
 13273  	// The ARN of the network profile associated with a device.
 13274  	NetworkProfileArn *string `type:"string"`
 13275  
 13276  	// The name of the network profile associated with a device.
 13277  	NetworkProfileName *string `min:"1" type:"string"`
 13278  
 13279  	// The room ARN associated with a device.
 13280  	RoomArn *string `type:"string"`
 13281  
 13282  	// The name of the room associated with a device.
 13283  	RoomName *string `min:"1" type:"string"`
 13284  
 13285  	// The software version of a device.
 13286  	SoftwareVersion *string `type:"string"`
 13287  }
 13288  
 13289  // String returns the string representation.
 13290  //
 13291  // API parameter values that are decorated as "sensitive" in the API will not
 13292  // be included in the string output. The member name will be present, but the
 13293  // value will be replaced with "sensitive".
 13294  func (s DeviceData) String() string {
 13295  	return awsutil.Prettify(s)
 13296  }
 13297  
 13298  // GoString returns the string representation.
 13299  //
 13300  // API parameter values that are decorated as "sensitive" in the API will not
 13301  // be included in the string output. The member name will be present, but the
 13302  // value will be replaced with "sensitive".
 13303  func (s DeviceData) GoString() string {
 13304  	return s.String()
 13305  }
 13306  
 13307  // SetCreatedTime sets the CreatedTime field's value.
 13308  func (s *DeviceData) SetCreatedTime(v time.Time) *DeviceData {
 13309  	s.CreatedTime = &v
 13310  	return s
 13311  }
 13312  
 13313  // SetDeviceArn sets the DeviceArn field's value.
 13314  func (s *DeviceData) SetDeviceArn(v string) *DeviceData {
 13315  	s.DeviceArn = &v
 13316  	return s
 13317  }
 13318  
 13319  // SetDeviceName sets the DeviceName field's value.
 13320  func (s *DeviceData) SetDeviceName(v string) *DeviceData {
 13321  	s.DeviceName = &v
 13322  	return s
 13323  }
 13324  
 13325  // SetDeviceSerialNumber sets the DeviceSerialNumber field's value.
 13326  func (s *DeviceData) SetDeviceSerialNumber(v string) *DeviceData {
 13327  	s.DeviceSerialNumber = &v
 13328  	return s
 13329  }
 13330  
 13331  // SetDeviceStatus sets the DeviceStatus field's value.
 13332  func (s *DeviceData) SetDeviceStatus(v string) *DeviceData {
 13333  	s.DeviceStatus = &v
 13334  	return s
 13335  }
 13336  
 13337  // SetDeviceStatusInfo sets the DeviceStatusInfo field's value.
 13338  func (s *DeviceData) SetDeviceStatusInfo(v *DeviceStatusInfo) *DeviceData {
 13339  	s.DeviceStatusInfo = v
 13340  	return s
 13341  }
 13342  
 13343  // SetDeviceType sets the DeviceType field's value.
 13344  func (s *DeviceData) SetDeviceType(v string) *DeviceData {
 13345  	s.DeviceType = &v
 13346  	return s
 13347  }
 13348  
 13349  // SetMacAddress sets the MacAddress field's value.
 13350  func (s *DeviceData) SetMacAddress(v string) *DeviceData {
 13351  	s.MacAddress = &v
 13352  	return s
 13353  }
 13354  
 13355  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 13356  func (s *DeviceData) SetNetworkProfileArn(v string) *DeviceData {
 13357  	s.NetworkProfileArn = &v
 13358  	return s
 13359  }
 13360  
 13361  // SetNetworkProfileName sets the NetworkProfileName field's value.
 13362  func (s *DeviceData) SetNetworkProfileName(v string) *DeviceData {
 13363  	s.NetworkProfileName = &v
 13364  	return s
 13365  }
 13366  
 13367  // SetRoomArn sets the RoomArn field's value.
 13368  func (s *DeviceData) SetRoomArn(v string) *DeviceData {
 13369  	s.RoomArn = &v
 13370  	return s
 13371  }
 13372  
 13373  // SetRoomName sets the RoomName field's value.
 13374  func (s *DeviceData) SetRoomName(v string) *DeviceData {
 13375  	s.RoomName = &v
 13376  	return s
 13377  }
 13378  
 13379  // SetSoftwareVersion sets the SoftwareVersion field's value.
 13380  func (s *DeviceData) SetSoftwareVersion(v string) *DeviceData {
 13381  	s.SoftwareVersion = &v
 13382  	return s
 13383  }
 13384  
 13385  // The list of device events.
 13386  type DeviceEvent struct {
 13387  	_ struct{} `type:"structure"`
 13388  
 13389  	// The time (in epoch) when the event occurred.
 13390  	Timestamp *time.Time `type:"timestamp"`
 13391  
 13392  	// The type of device event.
 13393  	Type *string `type:"string" enum:"DeviceEventType"`
 13394  
 13395  	// The value of the event.
 13396  	Value *string `type:"string"`
 13397  }
 13398  
 13399  // String returns the string representation.
 13400  //
 13401  // API parameter values that are decorated as "sensitive" in the API will not
 13402  // be included in the string output. The member name will be present, but the
 13403  // value will be replaced with "sensitive".
 13404  func (s DeviceEvent) String() string {
 13405  	return awsutil.Prettify(s)
 13406  }
 13407  
 13408  // GoString returns the string representation.
 13409  //
 13410  // API parameter values that are decorated as "sensitive" in the API will not
 13411  // be included in the string output. The member name will be present, but the
 13412  // value will be replaced with "sensitive".
 13413  func (s DeviceEvent) GoString() string {
 13414  	return s.String()
 13415  }
 13416  
 13417  // SetTimestamp sets the Timestamp field's value.
 13418  func (s *DeviceEvent) SetTimestamp(v time.Time) *DeviceEvent {
 13419  	s.Timestamp = &v
 13420  	return s
 13421  }
 13422  
 13423  // SetType sets the Type field's value.
 13424  func (s *DeviceEvent) SetType(v string) *DeviceEvent {
 13425  	s.Type = &v
 13426  	return s
 13427  }
 13428  
 13429  // SetValue sets the Value field's value.
 13430  func (s *DeviceEvent) SetValue(v string) *DeviceEvent {
 13431  	s.Value = &v
 13432  	return s
 13433  }
 13434  
 13435  // Detailed information about a device's network profile.
 13436  type DeviceNetworkProfileInfo struct {
 13437  	_ struct{} `type:"structure"`
 13438  
 13439  	// The ARN of the certificate associated with a device.
 13440  	CertificateArn *string `type:"string"`
 13441  
 13442  	// The time (in epoch) when the certificate expires.
 13443  	CertificateExpirationTime *time.Time `type:"timestamp"`
 13444  
 13445  	// The ARN of the network profile associated with a device.
 13446  	NetworkProfileArn *string `type:"string"`
 13447  }
 13448  
 13449  // String returns the string representation.
 13450  //
 13451  // API parameter values that are decorated as "sensitive" in the API will not
 13452  // be included in the string output. The member name will be present, but the
 13453  // value will be replaced with "sensitive".
 13454  func (s DeviceNetworkProfileInfo) String() string {
 13455  	return awsutil.Prettify(s)
 13456  }
 13457  
 13458  // GoString returns the string representation.
 13459  //
 13460  // API parameter values that are decorated as "sensitive" in the API will not
 13461  // be included in the string output. The member name will be present, but the
 13462  // value will be replaced with "sensitive".
 13463  func (s DeviceNetworkProfileInfo) GoString() string {
 13464  	return s.String()
 13465  }
 13466  
 13467  // SetCertificateArn sets the CertificateArn field's value.
 13468  func (s *DeviceNetworkProfileInfo) SetCertificateArn(v string) *DeviceNetworkProfileInfo {
 13469  	s.CertificateArn = &v
 13470  	return s
 13471  }
 13472  
 13473  // SetCertificateExpirationTime sets the CertificateExpirationTime field's value.
 13474  func (s *DeviceNetworkProfileInfo) SetCertificateExpirationTime(v time.Time) *DeviceNetworkProfileInfo {
 13475  	s.CertificateExpirationTime = &v
 13476  	return s
 13477  }
 13478  
 13479  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 13480  func (s *DeviceNetworkProfileInfo) SetNetworkProfileArn(v string) *DeviceNetworkProfileInfo {
 13481  	s.NetworkProfileArn = &v
 13482  	return s
 13483  }
 13484  
 13485  // The request failed because this device is no longer registered and therefore
 13486  // no longer managed by this account.
 13487  type DeviceNotRegisteredException struct {
 13488  	_            struct{}                  `type:"structure"`
 13489  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 13490  
 13491  	Message_ *string `locationName:"Message" type:"string"`
 13492  }
 13493  
 13494  // String returns the string representation.
 13495  //
 13496  // API parameter values that are decorated as "sensitive" in the API will not
 13497  // be included in the string output. The member name will be present, but the
 13498  // value will be replaced with "sensitive".
 13499  func (s DeviceNotRegisteredException) String() string {
 13500  	return awsutil.Prettify(s)
 13501  }
 13502  
 13503  // GoString returns the string representation.
 13504  //
 13505  // API parameter values that are decorated as "sensitive" in the API will not
 13506  // be included in the string output. The member name will be present, but the
 13507  // value will be replaced with "sensitive".
 13508  func (s DeviceNotRegisteredException) GoString() string {
 13509  	return s.String()
 13510  }
 13511  
 13512  func newErrorDeviceNotRegisteredException(v protocol.ResponseMetadata) error {
 13513  	return &DeviceNotRegisteredException{
 13514  		RespMetadata: v,
 13515  	}
 13516  }
 13517  
 13518  // Code returns the exception type name.
 13519  func (s *DeviceNotRegisteredException) Code() string {
 13520  	return "DeviceNotRegisteredException"
 13521  }
 13522  
 13523  // Message returns the exception's message.
 13524  func (s *DeviceNotRegisteredException) Message() string {
 13525  	if s.Message_ != nil {
 13526  		return *s.Message_
 13527  	}
 13528  	return ""
 13529  }
 13530  
 13531  // OrigErr always returns nil, satisfies awserr.Error interface.
 13532  func (s *DeviceNotRegisteredException) OrigErr() error {
 13533  	return nil
 13534  }
 13535  
 13536  func (s *DeviceNotRegisteredException) Error() string {
 13537  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 13538  }
 13539  
 13540  // Status code returns the HTTP status code for the request's response error.
 13541  func (s *DeviceNotRegisteredException) StatusCode() int {
 13542  	return s.RespMetadata.StatusCode
 13543  }
 13544  
 13545  // RequestID returns the service's response RequestID for request.
 13546  func (s *DeviceNotRegisteredException) RequestID() string {
 13547  	return s.RespMetadata.RequestID
 13548  }
 13549  
 13550  // Details of a device’s status.
 13551  type DeviceStatusDetail struct {
 13552  	_ struct{} `type:"structure"`
 13553  
 13554  	// The device status detail code.
 13555  	Code *string `type:"string" enum:"DeviceStatusDetailCode"`
 13556  
 13557  	// The list of available features on the device.
 13558  	Feature *string `type:"string" enum:"Feature"`
 13559  }
 13560  
 13561  // String returns the string representation.
 13562  //
 13563  // API parameter values that are decorated as "sensitive" in the API will not
 13564  // be included in the string output. The member name will be present, but the
 13565  // value will be replaced with "sensitive".
 13566  func (s DeviceStatusDetail) String() string {
 13567  	return awsutil.Prettify(s)
 13568  }
 13569  
 13570  // GoString returns the string representation.
 13571  //
 13572  // API parameter values that are decorated as "sensitive" in the API will not
 13573  // be included in the string output. The member name will be present, but the
 13574  // value will be replaced with "sensitive".
 13575  func (s DeviceStatusDetail) GoString() string {
 13576  	return s.String()
 13577  }
 13578  
 13579  // SetCode sets the Code field's value.
 13580  func (s *DeviceStatusDetail) SetCode(v string) *DeviceStatusDetail {
 13581  	s.Code = &v
 13582  	return s
 13583  }
 13584  
 13585  // SetFeature sets the Feature field's value.
 13586  func (s *DeviceStatusDetail) SetFeature(v string) *DeviceStatusDetail {
 13587  	s.Feature = &v
 13588  	return s
 13589  }
 13590  
 13591  // Detailed information about a device's status.
 13592  type DeviceStatusInfo struct {
 13593  	_ struct{} `type:"structure"`
 13594  
 13595  	// The latest available information about the connection status of a device.
 13596  	ConnectionStatus *string `type:"string" enum:"ConnectionStatus"`
 13597  
 13598  	// The time (in epoch) when the device connection status changed.
 13599  	ConnectionStatusUpdatedTime *time.Time `type:"timestamp"`
 13600  
 13601  	// One or more device status detail descriptions.
 13602  	DeviceStatusDetails []*DeviceStatusDetail `type:"list"`
 13603  }
 13604  
 13605  // String returns the string representation.
 13606  //
 13607  // API parameter values that are decorated as "sensitive" in the API will not
 13608  // be included in the string output. The member name will be present, but the
 13609  // value will be replaced with "sensitive".
 13610  func (s DeviceStatusInfo) String() string {
 13611  	return awsutil.Prettify(s)
 13612  }
 13613  
 13614  // GoString returns the string representation.
 13615  //
 13616  // API parameter values that are decorated as "sensitive" in the API will not
 13617  // be included in the string output. The member name will be present, but the
 13618  // value will be replaced with "sensitive".
 13619  func (s DeviceStatusInfo) GoString() string {
 13620  	return s.String()
 13621  }
 13622  
 13623  // SetConnectionStatus sets the ConnectionStatus field's value.
 13624  func (s *DeviceStatusInfo) SetConnectionStatus(v string) *DeviceStatusInfo {
 13625  	s.ConnectionStatus = &v
 13626  	return s
 13627  }
 13628  
 13629  // SetConnectionStatusUpdatedTime sets the ConnectionStatusUpdatedTime field's value.
 13630  func (s *DeviceStatusInfo) SetConnectionStatusUpdatedTime(v time.Time) *DeviceStatusInfo {
 13631  	s.ConnectionStatusUpdatedTime = &v
 13632  	return s
 13633  }
 13634  
 13635  // SetDeviceStatusDetails sets the DeviceStatusDetails field's value.
 13636  func (s *DeviceStatusInfo) SetDeviceStatusDetails(v []*DeviceStatusDetail) *DeviceStatusInfo {
 13637  	s.DeviceStatusDetails = v
 13638  	return s
 13639  }
 13640  
 13641  type DisassociateContactFromAddressBookInput struct {
 13642  	_ struct{} `type:"structure"`
 13643  
 13644  	// The ARN of the address from which to disassociate the contact.
 13645  	//
 13646  	// AddressBookArn is a required field
 13647  	AddressBookArn *string `type:"string" required:"true"`
 13648  
 13649  	// The ARN of the contact to disassociate from an address book.
 13650  	//
 13651  	// ContactArn is a required field
 13652  	ContactArn *string `type:"string" required:"true"`
 13653  }
 13654  
 13655  // String returns the string representation.
 13656  //
 13657  // API parameter values that are decorated as "sensitive" in the API will not
 13658  // be included in the string output. The member name will be present, but the
 13659  // value will be replaced with "sensitive".
 13660  func (s DisassociateContactFromAddressBookInput) String() string {
 13661  	return awsutil.Prettify(s)
 13662  }
 13663  
 13664  // GoString returns the string representation.
 13665  //
 13666  // API parameter values that are decorated as "sensitive" in the API will not
 13667  // be included in the string output. The member name will be present, but the
 13668  // value will be replaced with "sensitive".
 13669  func (s DisassociateContactFromAddressBookInput) GoString() string {
 13670  	return s.String()
 13671  }
 13672  
 13673  // Validate inspects the fields of the type to determine if they are valid.
 13674  func (s *DisassociateContactFromAddressBookInput) Validate() error {
 13675  	invalidParams := request.ErrInvalidParams{Context: "DisassociateContactFromAddressBookInput"}
 13676  	if s.AddressBookArn == nil {
 13677  		invalidParams.Add(request.NewErrParamRequired("AddressBookArn"))
 13678  	}
 13679  	if s.ContactArn == nil {
 13680  		invalidParams.Add(request.NewErrParamRequired("ContactArn"))
 13681  	}
 13682  
 13683  	if invalidParams.Len() > 0 {
 13684  		return invalidParams
 13685  	}
 13686  	return nil
 13687  }
 13688  
 13689  // SetAddressBookArn sets the AddressBookArn field's value.
 13690  func (s *DisassociateContactFromAddressBookInput) SetAddressBookArn(v string) *DisassociateContactFromAddressBookInput {
 13691  	s.AddressBookArn = &v
 13692  	return s
 13693  }
 13694  
 13695  // SetContactArn sets the ContactArn field's value.
 13696  func (s *DisassociateContactFromAddressBookInput) SetContactArn(v string) *DisassociateContactFromAddressBookInput {
 13697  	s.ContactArn = &v
 13698  	return s
 13699  }
 13700  
 13701  type DisassociateContactFromAddressBookOutput struct {
 13702  	_ struct{} `type:"structure"`
 13703  }
 13704  
 13705  // String returns the string representation.
 13706  //
 13707  // API parameter values that are decorated as "sensitive" in the API will not
 13708  // be included in the string output. The member name will be present, but the
 13709  // value will be replaced with "sensitive".
 13710  func (s DisassociateContactFromAddressBookOutput) String() string {
 13711  	return awsutil.Prettify(s)
 13712  }
 13713  
 13714  // GoString returns the string representation.
 13715  //
 13716  // API parameter values that are decorated as "sensitive" in the API will not
 13717  // be included in the string output. The member name will be present, but the
 13718  // value will be replaced with "sensitive".
 13719  func (s DisassociateContactFromAddressBookOutput) GoString() string {
 13720  	return s.String()
 13721  }
 13722  
 13723  type DisassociateDeviceFromRoomInput struct {
 13724  	_ struct{} `type:"structure"`
 13725  
 13726  	// The ARN of the device to disassociate from a room. Required.
 13727  	DeviceArn *string `type:"string"`
 13728  }
 13729  
 13730  // String returns the string representation.
 13731  //
 13732  // API parameter values that are decorated as "sensitive" in the API will not
 13733  // be included in the string output. The member name will be present, but the
 13734  // value will be replaced with "sensitive".
 13735  func (s DisassociateDeviceFromRoomInput) String() string {
 13736  	return awsutil.Prettify(s)
 13737  }
 13738  
 13739  // GoString returns the string representation.
 13740  //
 13741  // API parameter values that are decorated as "sensitive" in the API will not
 13742  // be included in the string output. The member name will be present, but the
 13743  // value will be replaced with "sensitive".
 13744  func (s DisassociateDeviceFromRoomInput) GoString() string {
 13745  	return s.String()
 13746  }
 13747  
 13748  // SetDeviceArn sets the DeviceArn field's value.
 13749  func (s *DisassociateDeviceFromRoomInput) SetDeviceArn(v string) *DisassociateDeviceFromRoomInput {
 13750  	s.DeviceArn = &v
 13751  	return s
 13752  }
 13753  
 13754  type DisassociateDeviceFromRoomOutput struct {
 13755  	_ struct{} `type:"structure"`
 13756  }
 13757  
 13758  // String returns the string representation.
 13759  //
 13760  // API parameter values that are decorated as "sensitive" in the API will not
 13761  // be included in the string output. The member name will be present, but the
 13762  // value will be replaced with "sensitive".
 13763  func (s DisassociateDeviceFromRoomOutput) String() string {
 13764  	return awsutil.Prettify(s)
 13765  }
 13766  
 13767  // GoString returns the string representation.
 13768  //
 13769  // API parameter values that are decorated as "sensitive" in the API will not
 13770  // be included in the string output. The member name will be present, but the
 13771  // value will be replaced with "sensitive".
 13772  func (s DisassociateDeviceFromRoomOutput) GoString() string {
 13773  	return s.String()
 13774  }
 13775  
 13776  type DisassociateSkillFromSkillGroupInput struct {
 13777  	_ struct{} `type:"structure"`
 13778  
 13779  	// The unique identifier of a skill. Required.
 13780  	SkillGroupArn *string `type:"string"`
 13781  
 13782  	// The ARN of a skill group to associate to a skill.
 13783  	//
 13784  	// SkillId is a required field
 13785  	SkillId *string `type:"string" required:"true"`
 13786  }
 13787  
 13788  // String returns the string representation.
 13789  //
 13790  // API parameter values that are decorated as "sensitive" in the API will not
 13791  // be included in the string output. The member name will be present, but the
 13792  // value will be replaced with "sensitive".
 13793  func (s DisassociateSkillFromSkillGroupInput) String() string {
 13794  	return awsutil.Prettify(s)
 13795  }
 13796  
 13797  // GoString returns the string representation.
 13798  //
 13799  // API parameter values that are decorated as "sensitive" in the API will not
 13800  // be included in the string output. The member name will be present, but the
 13801  // value will be replaced with "sensitive".
 13802  func (s DisassociateSkillFromSkillGroupInput) GoString() string {
 13803  	return s.String()
 13804  }
 13805  
 13806  // Validate inspects the fields of the type to determine if they are valid.
 13807  func (s *DisassociateSkillFromSkillGroupInput) Validate() error {
 13808  	invalidParams := request.ErrInvalidParams{Context: "DisassociateSkillFromSkillGroupInput"}
 13809  	if s.SkillId == nil {
 13810  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 13811  	}
 13812  
 13813  	if invalidParams.Len() > 0 {
 13814  		return invalidParams
 13815  	}
 13816  	return nil
 13817  }
 13818  
 13819  // SetSkillGroupArn sets the SkillGroupArn field's value.
 13820  func (s *DisassociateSkillFromSkillGroupInput) SetSkillGroupArn(v string) *DisassociateSkillFromSkillGroupInput {
 13821  	s.SkillGroupArn = &v
 13822  	return s
 13823  }
 13824  
 13825  // SetSkillId sets the SkillId field's value.
 13826  func (s *DisassociateSkillFromSkillGroupInput) SetSkillId(v string) *DisassociateSkillFromSkillGroupInput {
 13827  	s.SkillId = &v
 13828  	return s
 13829  }
 13830  
 13831  type DisassociateSkillFromSkillGroupOutput struct {
 13832  	_ struct{} `type:"structure"`
 13833  }
 13834  
 13835  // String returns the string representation.
 13836  //
 13837  // API parameter values that are decorated as "sensitive" in the API will not
 13838  // be included in the string output. The member name will be present, but the
 13839  // value will be replaced with "sensitive".
 13840  func (s DisassociateSkillFromSkillGroupOutput) String() string {
 13841  	return awsutil.Prettify(s)
 13842  }
 13843  
 13844  // GoString returns the string representation.
 13845  //
 13846  // API parameter values that are decorated as "sensitive" in the API will not
 13847  // be included in the string output. The member name will be present, but the
 13848  // value will be replaced with "sensitive".
 13849  func (s DisassociateSkillFromSkillGroupOutput) GoString() string {
 13850  	return s.String()
 13851  }
 13852  
 13853  type DisassociateSkillFromUsersInput struct {
 13854  	_ struct{} `type:"structure"`
 13855  
 13856  	// The private skill ID you want to make unavailable for enrolled users.
 13857  	//
 13858  	// SkillId is a required field
 13859  	SkillId *string `type:"string" required:"true"`
 13860  }
 13861  
 13862  // String returns the string representation.
 13863  //
 13864  // API parameter values that are decorated as "sensitive" in the API will not
 13865  // be included in the string output. The member name will be present, but the
 13866  // value will be replaced with "sensitive".
 13867  func (s DisassociateSkillFromUsersInput) String() string {
 13868  	return awsutil.Prettify(s)
 13869  }
 13870  
 13871  // GoString returns the string representation.
 13872  //
 13873  // API parameter values that are decorated as "sensitive" in the API will not
 13874  // be included in the string output. The member name will be present, but the
 13875  // value will be replaced with "sensitive".
 13876  func (s DisassociateSkillFromUsersInput) GoString() string {
 13877  	return s.String()
 13878  }
 13879  
 13880  // Validate inspects the fields of the type to determine if they are valid.
 13881  func (s *DisassociateSkillFromUsersInput) Validate() error {
 13882  	invalidParams := request.ErrInvalidParams{Context: "DisassociateSkillFromUsersInput"}
 13883  	if s.SkillId == nil {
 13884  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 13885  	}
 13886  
 13887  	if invalidParams.Len() > 0 {
 13888  		return invalidParams
 13889  	}
 13890  	return nil
 13891  }
 13892  
 13893  // SetSkillId sets the SkillId field's value.
 13894  func (s *DisassociateSkillFromUsersInput) SetSkillId(v string) *DisassociateSkillFromUsersInput {
 13895  	s.SkillId = &v
 13896  	return s
 13897  }
 13898  
 13899  type DisassociateSkillFromUsersOutput struct {
 13900  	_ struct{} `type:"structure"`
 13901  }
 13902  
 13903  // String returns the string representation.
 13904  //
 13905  // API parameter values that are decorated as "sensitive" in the API will not
 13906  // be included in the string output. The member name will be present, but the
 13907  // value will be replaced with "sensitive".
 13908  func (s DisassociateSkillFromUsersOutput) String() string {
 13909  	return awsutil.Prettify(s)
 13910  }
 13911  
 13912  // GoString returns the string representation.
 13913  //
 13914  // API parameter values that are decorated as "sensitive" in the API will not
 13915  // be included in the string output. The member name will be present, but the
 13916  // value will be replaced with "sensitive".
 13917  func (s DisassociateSkillFromUsersOutput) GoString() string {
 13918  	return s.String()
 13919  }
 13920  
 13921  type DisassociateSkillGroupFromRoomInput struct {
 13922  	_ struct{} `type:"structure"`
 13923  
 13924  	// The ARN of the room from which the skill group is to be disassociated. Required.
 13925  	RoomArn *string `type:"string"`
 13926  
 13927  	// The ARN of the skill group to disassociate from a room. Required.
 13928  	SkillGroupArn *string `type:"string"`
 13929  }
 13930  
 13931  // String returns the string representation.
 13932  //
 13933  // API parameter values that are decorated as "sensitive" in the API will not
 13934  // be included in the string output. The member name will be present, but the
 13935  // value will be replaced with "sensitive".
 13936  func (s DisassociateSkillGroupFromRoomInput) String() string {
 13937  	return awsutil.Prettify(s)
 13938  }
 13939  
 13940  // GoString returns the string representation.
 13941  //
 13942  // API parameter values that are decorated as "sensitive" in the API will not
 13943  // be included in the string output. The member name will be present, but the
 13944  // value will be replaced with "sensitive".
 13945  func (s DisassociateSkillGroupFromRoomInput) GoString() string {
 13946  	return s.String()
 13947  }
 13948  
 13949  // SetRoomArn sets the RoomArn field's value.
 13950  func (s *DisassociateSkillGroupFromRoomInput) SetRoomArn(v string) *DisassociateSkillGroupFromRoomInput {
 13951  	s.RoomArn = &v
 13952  	return s
 13953  }
 13954  
 13955  // SetSkillGroupArn sets the SkillGroupArn field's value.
 13956  func (s *DisassociateSkillGroupFromRoomInput) SetSkillGroupArn(v string) *DisassociateSkillGroupFromRoomInput {
 13957  	s.SkillGroupArn = &v
 13958  	return s
 13959  }
 13960  
 13961  type DisassociateSkillGroupFromRoomOutput struct {
 13962  	_ struct{} `type:"structure"`
 13963  }
 13964  
 13965  // String returns the string representation.
 13966  //
 13967  // API parameter values that are decorated as "sensitive" in the API will not
 13968  // be included in the string output. The member name will be present, but the
 13969  // value will be replaced with "sensitive".
 13970  func (s DisassociateSkillGroupFromRoomOutput) String() string {
 13971  	return awsutil.Prettify(s)
 13972  }
 13973  
 13974  // GoString returns the string representation.
 13975  //
 13976  // API parameter values that are decorated as "sensitive" in the API will not
 13977  // be included in the string output. The member name will be present, but the
 13978  // value will be replaced with "sensitive".
 13979  func (s DisassociateSkillGroupFromRoomOutput) GoString() string {
 13980  	return s.String()
 13981  }
 13982  
 13983  // Settings for the end of meeting reminder feature that are applied to a room
 13984  // profile. The end of meeting reminder enables Alexa to remind users when a
 13985  // meeting is ending.
 13986  type EndOfMeetingReminder struct {
 13987  	_ struct{} `type:"structure"`
 13988  
 13989  	// Whether an end of meeting reminder is enabled or not.
 13990  	Enabled *bool `type:"boolean"`
 13991  
 13992  	// A range of 3 to 15 minutes that determines when the reminder begins.
 13993  	ReminderAtMinutes []*int64 `min:"1" type:"list"`
 13994  
 13995  	// The type of sound that users hear during the end of meeting reminder.
 13996  	ReminderType *string `type:"string" enum:"EndOfMeetingReminderType"`
 13997  }
 13998  
 13999  // String returns the string representation.
 14000  //
 14001  // API parameter values that are decorated as "sensitive" in the API will not
 14002  // be included in the string output. The member name will be present, but the
 14003  // value will be replaced with "sensitive".
 14004  func (s EndOfMeetingReminder) String() string {
 14005  	return awsutil.Prettify(s)
 14006  }
 14007  
 14008  // GoString returns the string representation.
 14009  //
 14010  // API parameter values that are decorated as "sensitive" in the API will not
 14011  // be included in the string output. The member name will be present, but the
 14012  // value will be replaced with "sensitive".
 14013  func (s EndOfMeetingReminder) GoString() string {
 14014  	return s.String()
 14015  }
 14016  
 14017  // SetEnabled sets the Enabled field's value.
 14018  func (s *EndOfMeetingReminder) SetEnabled(v bool) *EndOfMeetingReminder {
 14019  	s.Enabled = &v
 14020  	return s
 14021  }
 14022  
 14023  // SetReminderAtMinutes sets the ReminderAtMinutes field's value.
 14024  func (s *EndOfMeetingReminder) SetReminderAtMinutes(v []*int64) *EndOfMeetingReminder {
 14025  	s.ReminderAtMinutes = v
 14026  	return s
 14027  }
 14028  
 14029  // SetReminderType sets the ReminderType field's value.
 14030  func (s *EndOfMeetingReminder) SetReminderType(v string) *EndOfMeetingReminder {
 14031  	s.ReminderType = &v
 14032  	return s
 14033  }
 14034  
 14035  // A filter name and value pair that is used to return a more specific list
 14036  // of results. Filters can be used to match a set of resources by various criteria.
 14037  type Filter struct {
 14038  	_ struct{} `type:"structure"`
 14039  
 14040  	// The key of a filter.
 14041  	//
 14042  	// Key is a required field
 14043  	Key *string `min:"1" type:"string" required:"true"`
 14044  
 14045  	// The values of a filter.
 14046  	//
 14047  	// Values is a required field
 14048  	Values []*string `type:"list" required:"true"`
 14049  }
 14050  
 14051  // String returns the string representation.
 14052  //
 14053  // API parameter values that are decorated as "sensitive" in the API will not
 14054  // be included in the string output. The member name will be present, but the
 14055  // value will be replaced with "sensitive".
 14056  func (s Filter) String() string {
 14057  	return awsutil.Prettify(s)
 14058  }
 14059  
 14060  // GoString returns the string representation.
 14061  //
 14062  // API parameter values that are decorated as "sensitive" in the API will not
 14063  // be included in the string output. The member name will be present, but the
 14064  // value will be replaced with "sensitive".
 14065  func (s Filter) GoString() string {
 14066  	return s.String()
 14067  }
 14068  
 14069  // Validate inspects the fields of the type to determine if they are valid.
 14070  func (s *Filter) Validate() error {
 14071  	invalidParams := request.ErrInvalidParams{Context: "Filter"}
 14072  	if s.Key == nil {
 14073  		invalidParams.Add(request.NewErrParamRequired("Key"))
 14074  	}
 14075  	if s.Key != nil && len(*s.Key) < 1 {
 14076  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 14077  	}
 14078  	if s.Values == nil {
 14079  		invalidParams.Add(request.NewErrParamRequired("Values"))
 14080  	}
 14081  
 14082  	if invalidParams.Len() > 0 {
 14083  		return invalidParams
 14084  	}
 14085  	return nil
 14086  }
 14087  
 14088  // SetKey sets the Key field's value.
 14089  func (s *Filter) SetKey(v string) *Filter {
 14090  	s.Key = &v
 14091  	return s
 14092  }
 14093  
 14094  // SetValues sets the Values field's value.
 14095  func (s *Filter) SetValues(v []*string) *Filter {
 14096  	s.Values = v
 14097  	return s
 14098  }
 14099  
 14100  type ForgetSmartHomeAppliancesInput struct {
 14101  	_ struct{} `type:"structure"`
 14102  
 14103  	// The room that the appliances are associated with.
 14104  	//
 14105  	// RoomArn is a required field
 14106  	RoomArn *string `type:"string" required:"true"`
 14107  }
 14108  
 14109  // String returns the string representation.
 14110  //
 14111  // API parameter values that are decorated as "sensitive" in the API will not
 14112  // be included in the string output. The member name will be present, but the
 14113  // value will be replaced with "sensitive".
 14114  func (s ForgetSmartHomeAppliancesInput) String() string {
 14115  	return awsutil.Prettify(s)
 14116  }
 14117  
 14118  // GoString returns the string representation.
 14119  //
 14120  // API parameter values that are decorated as "sensitive" in the API will not
 14121  // be included in the string output. The member name will be present, but the
 14122  // value will be replaced with "sensitive".
 14123  func (s ForgetSmartHomeAppliancesInput) GoString() string {
 14124  	return s.String()
 14125  }
 14126  
 14127  // Validate inspects the fields of the type to determine if they are valid.
 14128  func (s *ForgetSmartHomeAppliancesInput) Validate() error {
 14129  	invalidParams := request.ErrInvalidParams{Context: "ForgetSmartHomeAppliancesInput"}
 14130  	if s.RoomArn == nil {
 14131  		invalidParams.Add(request.NewErrParamRequired("RoomArn"))
 14132  	}
 14133  
 14134  	if invalidParams.Len() > 0 {
 14135  		return invalidParams
 14136  	}
 14137  	return nil
 14138  }
 14139  
 14140  // SetRoomArn sets the RoomArn field's value.
 14141  func (s *ForgetSmartHomeAppliancesInput) SetRoomArn(v string) *ForgetSmartHomeAppliancesInput {
 14142  	s.RoomArn = &v
 14143  	return s
 14144  }
 14145  
 14146  type ForgetSmartHomeAppliancesOutput struct {
 14147  	_ struct{} `type:"structure"`
 14148  }
 14149  
 14150  // String returns the string representation.
 14151  //
 14152  // API parameter values that are decorated as "sensitive" in the API will not
 14153  // be included in the string output. The member name will be present, but the
 14154  // value will be replaced with "sensitive".
 14155  func (s ForgetSmartHomeAppliancesOutput) String() string {
 14156  	return awsutil.Prettify(s)
 14157  }
 14158  
 14159  // GoString returns the string representation.
 14160  //
 14161  // API parameter values that are decorated as "sensitive" in the API will not
 14162  // be included in the string output. The member name will be present, but the
 14163  // value will be replaced with "sensitive".
 14164  func (s ForgetSmartHomeAppliancesOutput) GoString() string {
 14165  	return s.String()
 14166  }
 14167  
 14168  // The details of the gateway.
 14169  type Gateway struct {
 14170  	_ struct{} `type:"structure"`
 14171  
 14172  	// The ARN of the gateway.
 14173  	Arn *string `type:"string"`
 14174  
 14175  	// The description of the gateway.
 14176  	Description *string `type:"string"`
 14177  
 14178  	// The ARN of the gateway group that the gateway is associated to.
 14179  	GatewayGroupArn *string `type:"string"`
 14180  
 14181  	// The name of the gateway.
 14182  	Name *string `min:"1" type:"string"`
 14183  
 14184  	// The software version of the gateway. The gateway automatically updates its
 14185  	// software version during normal operation.
 14186  	SoftwareVersion *string `min:"1" type:"string"`
 14187  }
 14188  
 14189  // String returns the string representation.
 14190  //
 14191  // API parameter values that are decorated as "sensitive" in the API will not
 14192  // be included in the string output. The member name will be present, but the
 14193  // value will be replaced with "sensitive".
 14194  func (s Gateway) String() string {
 14195  	return awsutil.Prettify(s)
 14196  }
 14197  
 14198  // GoString returns the string representation.
 14199  //
 14200  // API parameter values that are decorated as "sensitive" in the API will not
 14201  // be included in the string output. The member name will be present, but the
 14202  // value will be replaced with "sensitive".
 14203  func (s Gateway) GoString() string {
 14204  	return s.String()
 14205  }
 14206  
 14207  // SetArn sets the Arn field's value.
 14208  func (s *Gateway) SetArn(v string) *Gateway {
 14209  	s.Arn = &v
 14210  	return s
 14211  }
 14212  
 14213  // SetDescription sets the Description field's value.
 14214  func (s *Gateway) SetDescription(v string) *Gateway {
 14215  	s.Description = &v
 14216  	return s
 14217  }
 14218  
 14219  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 14220  func (s *Gateway) SetGatewayGroupArn(v string) *Gateway {
 14221  	s.GatewayGroupArn = &v
 14222  	return s
 14223  }
 14224  
 14225  // SetName sets the Name field's value.
 14226  func (s *Gateway) SetName(v string) *Gateway {
 14227  	s.Name = &v
 14228  	return s
 14229  }
 14230  
 14231  // SetSoftwareVersion sets the SoftwareVersion field's value.
 14232  func (s *Gateway) SetSoftwareVersion(v string) *Gateway {
 14233  	s.SoftwareVersion = &v
 14234  	return s
 14235  }
 14236  
 14237  // The details of the gateway group.
 14238  type GatewayGroup struct {
 14239  	_ struct{} `type:"structure"`
 14240  
 14241  	// The ARN of the gateway group.
 14242  	Arn *string `type:"string"`
 14243  
 14244  	// The description of the gateway group.
 14245  	Description *string `type:"string"`
 14246  
 14247  	// The name of the gateway group.
 14248  	Name *string `min:"1" type:"string"`
 14249  }
 14250  
 14251  // String returns the string representation.
 14252  //
 14253  // API parameter values that are decorated as "sensitive" in the API will not
 14254  // be included in the string output. The member name will be present, but the
 14255  // value will be replaced with "sensitive".
 14256  func (s GatewayGroup) String() string {
 14257  	return awsutil.Prettify(s)
 14258  }
 14259  
 14260  // GoString returns the string representation.
 14261  //
 14262  // API parameter values that are decorated as "sensitive" in the API will not
 14263  // be included in the string output. The member name will be present, but the
 14264  // value will be replaced with "sensitive".
 14265  func (s GatewayGroup) GoString() string {
 14266  	return s.String()
 14267  }
 14268  
 14269  // SetArn sets the Arn field's value.
 14270  func (s *GatewayGroup) SetArn(v string) *GatewayGroup {
 14271  	s.Arn = &v
 14272  	return s
 14273  }
 14274  
 14275  // SetDescription sets the Description field's value.
 14276  func (s *GatewayGroup) SetDescription(v string) *GatewayGroup {
 14277  	s.Description = &v
 14278  	return s
 14279  }
 14280  
 14281  // SetName sets the Name field's value.
 14282  func (s *GatewayGroup) SetName(v string) *GatewayGroup {
 14283  	s.Name = &v
 14284  	return s
 14285  }
 14286  
 14287  // The summary of a gateway group.
 14288  type GatewayGroupSummary struct {
 14289  	_ struct{} `type:"structure"`
 14290  
 14291  	// The ARN of the gateway group.
 14292  	Arn *string `type:"string"`
 14293  
 14294  	// The description of the gateway group.
 14295  	Description *string `type:"string"`
 14296  
 14297  	// The name of the gateway group.
 14298  	Name *string `min:"1" type:"string"`
 14299  }
 14300  
 14301  // String returns the string representation.
 14302  //
 14303  // API parameter values that are decorated as "sensitive" in the API will not
 14304  // be included in the string output. The member name will be present, but the
 14305  // value will be replaced with "sensitive".
 14306  func (s GatewayGroupSummary) String() string {
 14307  	return awsutil.Prettify(s)
 14308  }
 14309  
 14310  // GoString returns the string representation.
 14311  //
 14312  // API parameter values that are decorated as "sensitive" in the API will not
 14313  // be included in the string output. The member name will be present, but the
 14314  // value will be replaced with "sensitive".
 14315  func (s GatewayGroupSummary) GoString() string {
 14316  	return s.String()
 14317  }
 14318  
 14319  // SetArn sets the Arn field's value.
 14320  func (s *GatewayGroupSummary) SetArn(v string) *GatewayGroupSummary {
 14321  	s.Arn = &v
 14322  	return s
 14323  }
 14324  
 14325  // SetDescription sets the Description field's value.
 14326  func (s *GatewayGroupSummary) SetDescription(v string) *GatewayGroupSummary {
 14327  	s.Description = &v
 14328  	return s
 14329  }
 14330  
 14331  // SetName sets the Name field's value.
 14332  func (s *GatewayGroupSummary) SetName(v string) *GatewayGroupSummary {
 14333  	s.Name = &v
 14334  	return s
 14335  }
 14336  
 14337  // The summary of a gateway.
 14338  type GatewaySummary struct {
 14339  	_ struct{} `type:"structure"`
 14340  
 14341  	// The ARN of the gateway.
 14342  	Arn *string `type:"string"`
 14343  
 14344  	// The description of the gateway.
 14345  	Description *string `type:"string"`
 14346  
 14347  	// The ARN of the gateway group that the gateway is associated to.
 14348  	GatewayGroupArn *string `type:"string"`
 14349  
 14350  	// The name of the gateway.
 14351  	Name *string `min:"1" type:"string"`
 14352  
 14353  	// The software version of the gateway. The gateway automatically updates its
 14354  	// software version during normal operation.
 14355  	SoftwareVersion *string `min:"1" type:"string"`
 14356  }
 14357  
 14358  // String returns the string representation.
 14359  //
 14360  // API parameter values that are decorated as "sensitive" in the API will not
 14361  // be included in the string output. The member name will be present, but the
 14362  // value will be replaced with "sensitive".
 14363  func (s GatewaySummary) String() string {
 14364  	return awsutil.Prettify(s)
 14365  }
 14366  
 14367  // GoString returns the string representation.
 14368  //
 14369  // API parameter values that are decorated as "sensitive" in the API will not
 14370  // be included in the string output. The member name will be present, but the
 14371  // value will be replaced with "sensitive".
 14372  func (s GatewaySummary) GoString() string {
 14373  	return s.String()
 14374  }
 14375  
 14376  // SetArn sets the Arn field's value.
 14377  func (s *GatewaySummary) SetArn(v string) *GatewaySummary {
 14378  	s.Arn = &v
 14379  	return s
 14380  }
 14381  
 14382  // SetDescription sets the Description field's value.
 14383  func (s *GatewaySummary) SetDescription(v string) *GatewaySummary {
 14384  	s.Description = &v
 14385  	return s
 14386  }
 14387  
 14388  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 14389  func (s *GatewaySummary) SetGatewayGroupArn(v string) *GatewaySummary {
 14390  	s.GatewayGroupArn = &v
 14391  	return s
 14392  }
 14393  
 14394  // SetName sets the Name field's value.
 14395  func (s *GatewaySummary) SetName(v string) *GatewaySummary {
 14396  	s.Name = &v
 14397  	return s
 14398  }
 14399  
 14400  // SetSoftwareVersion sets the SoftwareVersion field's value.
 14401  func (s *GatewaySummary) SetSoftwareVersion(v string) *GatewaySummary {
 14402  	s.SoftwareVersion = &v
 14403  	return s
 14404  }
 14405  
 14406  type GetAddressBookInput struct {
 14407  	_ struct{} `type:"structure"`
 14408  
 14409  	// The ARN of the address book for which to request details.
 14410  	//
 14411  	// AddressBookArn is a required field
 14412  	AddressBookArn *string `type:"string" required:"true"`
 14413  }
 14414  
 14415  // String returns the string representation.
 14416  //
 14417  // API parameter values that are decorated as "sensitive" in the API will not
 14418  // be included in the string output. The member name will be present, but the
 14419  // value will be replaced with "sensitive".
 14420  func (s GetAddressBookInput) String() string {
 14421  	return awsutil.Prettify(s)
 14422  }
 14423  
 14424  // GoString returns the string representation.
 14425  //
 14426  // API parameter values that are decorated as "sensitive" in the API will not
 14427  // be included in the string output. The member name will be present, but the
 14428  // value will be replaced with "sensitive".
 14429  func (s GetAddressBookInput) GoString() string {
 14430  	return s.String()
 14431  }
 14432  
 14433  // Validate inspects the fields of the type to determine if they are valid.
 14434  func (s *GetAddressBookInput) Validate() error {
 14435  	invalidParams := request.ErrInvalidParams{Context: "GetAddressBookInput"}
 14436  	if s.AddressBookArn == nil {
 14437  		invalidParams.Add(request.NewErrParamRequired("AddressBookArn"))
 14438  	}
 14439  
 14440  	if invalidParams.Len() > 0 {
 14441  		return invalidParams
 14442  	}
 14443  	return nil
 14444  }
 14445  
 14446  // SetAddressBookArn sets the AddressBookArn field's value.
 14447  func (s *GetAddressBookInput) SetAddressBookArn(v string) *GetAddressBookInput {
 14448  	s.AddressBookArn = &v
 14449  	return s
 14450  }
 14451  
 14452  type GetAddressBookOutput struct {
 14453  	_ struct{} `type:"structure"`
 14454  
 14455  	// The details of the requested address book.
 14456  	AddressBook *AddressBook `type:"structure"`
 14457  }
 14458  
 14459  // String returns the string representation.
 14460  //
 14461  // API parameter values that are decorated as "sensitive" in the API will not
 14462  // be included in the string output. The member name will be present, but the
 14463  // value will be replaced with "sensitive".
 14464  func (s GetAddressBookOutput) String() string {
 14465  	return awsutil.Prettify(s)
 14466  }
 14467  
 14468  // GoString returns the string representation.
 14469  //
 14470  // API parameter values that are decorated as "sensitive" in the API will not
 14471  // be included in the string output. The member name will be present, but the
 14472  // value will be replaced with "sensitive".
 14473  func (s GetAddressBookOutput) GoString() string {
 14474  	return s.String()
 14475  }
 14476  
 14477  // SetAddressBook sets the AddressBook field's value.
 14478  func (s *GetAddressBookOutput) SetAddressBook(v *AddressBook) *GetAddressBookOutput {
 14479  	s.AddressBook = v
 14480  	return s
 14481  }
 14482  
 14483  type GetConferencePreferenceInput struct {
 14484  	_ struct{} `type:"structure"`
 14485  }
 14486  
 14487  // String returns the string representation.
 14488  //
 14489  // API parameter values that are decorated as "sensitive" in the API will not
 14490  // be included in the string output. The member name will be present, but the
 14491  // value will be replaced with "sensitive".
 14492  func (s GetConferencePreferenceInput) String() string {
 14493  	return awsutil.Prettify(s)
 14494  }
 14495  
 14496  // GoString returns the string representation.
 14497  //
 14498  // API parameter values that are decorated as "sensitive" in the API will not
 14499  // be included in the string output. The member name will be present, but the
 14500  // value will be replaced with "sensitive".
 14501  func (s GetConferencePreferenceInput) GoString() string {
 14502  	return s.String()
 14503  }
 14504  
 14505  type GetConferencePreferenceOutput struct {
 14506  	_ struct{} `type:"structure"`
 14507  
 14508  	// The conference preference.
 14509  	Preference *ConferencePreference `type:"structure"`
 14510  }
 14511  
 14512  // String returns the string representation.
 14513  //
 14514  // API parameter values that are decorated as "sensitive" in the API will not
 14515  // be included in the string output. The member name will be present, but the
 14516  // value will be replaced with "sensitive".
 14517  func (s GetConferencePreferenceOutput) String() string {
 14518  	return awsutil.Prettify(s)
 14519  }
 14520  
 14521  // GoString returns the string representation.
 14522  //
 14523  // API parameter values that are decorated as "sensitive" in the API will not
 14524  // be included in the string output. The member name will be present, but the
 14525  // value will be replaced with "sensitive".
 14526  func (s GetConferencePreferenceOutput) GoString() string {
 14527  	return s.String()
 14528  }
 14529  
 14530  // SetPreference sets the Preference field's value.
 14531  func (s *GetConferencePreferenceOutput) SetPreference(v *ConferencePreference) *GetConferencePreferenceOutput {
 14532  	s.Preference = v
 14533  	return s
 14534  }
 14535  
 14536  type GetConferenceProviderInput struct {
 14537  	_ struct{} `type:"structure"`
 14538  
 14539  	// The ARN of the newly created conference provider.
 14540  	//
 14541  	// ConferenceProviderArn is a required field
 14542  	ConferenceProviderArn *string `type:"string" required:"true"`
 14543  }
 14544  
 14545  // String returns the string representation.
 14546  //
 14547  // API parameter values that are decorated as "sensitive" in the API will not
 14548  // be included in the string output. The member name will be present, but the
 14549  // value will be replaced with "sensitive".
 14550  func (s GetConferenceProviderInput) String() string {
 14551  	return awsutil.Prettify(s)
 14552  }
 14553  
 14554  // GoString returns the string representation.
 14555  //
 14556  // API parameter values that are decorated as "sensitive" in the API will not
 14557  // be included in the string output. The member name will be present, but the
 14558  // value will be replaced with "sensitive".
 14559  func (s GetConferenceProviderInput) GoString() string {
 14560  	return s.String()
 14561  }
 14562  
 14563  // Validate inspects the fields of the type to determine if they are valid.
 14564  func (s *GetConferenceProviderInput) Validate() error {
 14565  	invalidParams := request.ErrInvalidParams{Context: "GetConferenceProviderInput"}
 14566  	if s.ConferenceProviderArn == nil {
 14567  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderArn"))
 14568  	}
 14569  
 14570  	if invalidParams.Len() > 0 {
 14571  		return invalidParams
 14572  	}
 14573  	return nil
 14574  }
 14575  
 14576  // SetConferenceProviderArn sets the ConferenceProviderArn field's value.
 14577  func (s *GetConferenceProviderInput) SetConferenceProviderArn(v string) *GetConferenceProviderInput {
 14578  	s.ConferenceProviderArn = &v
 14579  	return s
 14580  }
 14581  
 14582  type GetConferenceProviderOutput struct {
 14583  	_ struct{} `type:"structure"`
 14584  
 14585  	// The conference provider.
 14586  	ConferenceProvider *ConferenceProvider `type:"structure"`
 14587  }
 14588  
 14589  // String returns the string representation.
 14590  //
 14591  // API parameter values that are decorated as "sensitive" in the API will not
 14592  // be included in the string output. The member name will be present, but the
 14593  // value will be replaced with "sensitive".
 14594  func (s GetConferenceProviderOutput) String() string {
 14595  	return awsutil.Prettify(s)
 14596  }
 14597  
 14598  // GoString returns the string representation.
 14599  //
 14600  // API parameter values that are decorated as "sensitive" in the API will not
 14601  // be included in the string output. The member name will be present, but the
 14602  // value will be replaced with "sensitive".
 14603  func (s GetConferenceProviderOutput) GoString() string {
 14604  	return s.String()
 14605  }
 14606  
 14607  // SetConferenceProvider sets the ConferenceProvider field's value.
 14608  func (s *GetConferenceProviderOutput) SetConferenceProvider(v *ConferenceProvider) *GetConferenceProviderOutput {
 14609  	s.ConferenceProvider = v
 14610  	return s
 14611  }
 14612  
 14613  type GetContactInput struct {
 14614  	_ struct{} `type:"structure"`
 14615  
 14616  	// The ARN of the contact for which to request details.
 14617  	//
 14618  	// ContactArn is a required field
 14619  	ContactArn *string `type:"string" required:"true"`
 14620  }
 14621  
 14622  // String returns the string representation.
 14623  //
 14624  // API parameter values that are decorated as "sensitive" in the API will not
 14625  // be included in the string output. The member name will be present, but the
 14626  // value will be replaced with "sensitive".
 14627  func (s GetContactInput) String() string {
 14628  	return awsutil.Prettify(s)
 14629  }
 14630  
 14631  // GoString returns the string representation.
 14632  //
 14633  // API parameter values that are decorated as "sensitive" in the API will not
 14634  // be included in the string output. The member name will be present, but the
 14635  // value will be replaced with "sensitive".
 14636  func (s GetContactInput) GoString() string {
 14637  	return s.String()
 14638  }
 14639  
 14640  // Validate inspects the fields of the type to determine if they are valid.
 14641  func (s *GetContactInput) Validate() error {
 14642  	invalidParams := request.ErrInvalidParams{Context: "GetContactInput"}
 14643  	if s.ContactArn == nil {
 14644  		invalidParams.Add(request.NewErrParamRequired("ContactArn"))
 14645  	}
 14646  
 14647  	if invalidParams.Len() > 0 {
 14648  		return invalidParams
 14649  	}
 14650  	return nil
 14651  }
 14652  
 14653  // SetContactArn sets the ContactArn field's value.
 14654  func (s *GetContactInput) SetContactArn(v string) *GetContactInput {
 14655  	s.ContactArn = &v
 14656  	return s
 14657  }
 14658  
 14659  type GetContactOutput struct {
 14660  	_ struct{} `type:"structure"`
 14661  
 14662  	// The details of the requested contact.
 14663  	Contact *Contact `type:"structure"`
 14664  }
 14665  
 14666  // String returns the string representation.
 14667  //
 14668  // API parameter values that are decorated as "sensitive" in the API will not
 14669  // be included in the string output. The member name will be present, but the
 14670  // value will be replaced with "sensitive".
 14671  func (s GetContactOutput) String() string {
 14672  	return awsutil.Prettify(s)
 14673  }
 14674  
 14675  // GoString returns the string representation.
 14676  //
 14677  // API parameter values that are decorated as "sensitive" in the API will not
 14678  // be included in the string output. The member name will be present, but the
 14679  // value will be replaced with "sensitive".
 14680  func (s GetContactOutput) GoString() string {
 14681  	return s.String()
 14682  }
 14683  
 14684  // SetContact sets the Contact field's value.
 14685  func (s *GetContactOutput) SetContact(v *Contact) *GetContactOutput {
 14686  	s.Contact = v
 14687  	return s
 14688  }
 14689  
 14690  type GetDeviceInput struct {
 14691  	_ struct{} `type:"structure"`
 14692  
 14693  	// The ARN of the device for which to request details. Required.
 14694  	DeviceArn *string `type:"string"`
 14695  }
 14696  
 14697  // String returns the string representation.
 14698  //
 14699  // API parameter values that are decorated as "sensitive" in the API will not
 14700  // be included in the string output. The member name will be present, but the
 14701  // value will be replaced with "sensitive".
 14702  func (s GetDeviceInput) String() string {
 14703  	return awsutil.Prettify(s)
 14704  }
 14705  
 14706  // GoString returns the string representation.
 14707  //
 14708  // API parameter values that are decorated as "sensitive" in the API will not
 14709  // be included in the string output. The member name will be present, but the
 14710  // value will be replaced with "sensitive".
 14711  func (s GetDeviceInput) GoString() string {
 14712  	return s.String()
 14713  }
 14714  
 14715  // SetDeviceArn sets the DeviceArn field's value.
 14716  func (s *GetDeviceInput) SetDeviceArn(v string) *GetDeviceInput {
 14717  	s.DeviceArn = &v
 14718  	return s
 14719  }
 14720  
 14721  type GetDeviceOutput struct {
 14722  	_ struct{} `type:"structure"`
 14723  
 14724  	// The details of the device requested. Required.
 14725  	Device *Device `type:"structure"`
 14726  }
 14727  
 14728  // String returns the string representation.
 14729  //
 14730  // API parameter values that are decorated as "sensitive" in the API will not
 14731  // be included in the string output. The member name will be present, but the
 14732  // value will be replaced with "sensitive".
 14733  func (s GetDeviceOutput) String() string {
 14734  	return awsutil.Prettify(s)
 14735  }
 14736  
 14737  // GoString returns the string representation.
 14738  //
 14739  // API parameter values that are decorated as "sensitive" in the API will not
 14740  // be included in the string output. The member name will be present, but the
 14741  // value will be replaced with "sensitive".
 14742  func (s GetDeviceOutput) GoString() string {
 14743  	return s.String()
 14744  }
 14745  
 14746  // SetDevice sets the Device field's value.
 14747  func (s *GetDeviceOutput) SetDevice(v *Device) *GetDeviceOutput {
 14748  	s.Device = v
 14749  	return s
 14750  }
 14751  
 14752  type GetGatewayGroupInput struct {
 14753  	_ struct{} `type:"structure"`
 14754  
 14755  	// The ARN of the gateway group to get.
 14756  	//
 14757  	// GatewayGroupArn is a required field
 14758  	GatewayGroupArn *string `type:"string" required:"true"`
 14759  }
 14760  
 14761  // String returns the string representation.
 14762  //
 14763  // API parameter values that are decorated as "sensitive" in the API will not
 14764  // be included in the string output. The member name will be present, but the
 14765  // value will be replaced with "sensitive".
 14766  func (s GetGatewayGroupInput) String() string {
 14767  	return awsutil.Prettify(s)
 14768  }
 14769  
 14770  // GoString returns the string representation.
 14771  //
 14772  // API parameter values that are decorated as "sensitive" in the API will not
 14773  // be included in the string output. The member name will be present, but the
 14774  // value will be replaced with "sensitive".
 14775  func (s GetGatewayGroupInput) GoString() string {
 14776  	return s.String()
 14777  }
 14778  
 14779  // Validate inspects the fields of the type to determine if they are valid.
 14780  func (s *GetGatewayGroupInput) Validate() error {
 14781  	invalidParams := request.ErrInvalidParams{Context: "GetGatewayGroupInput"}
 14782  	if s.GatewayGroupArn == nil {
 14783  		invalidParams.Add(request.NewErrParamRequired("GatewayGroupArn"))
 14784  	}
 14785  
 14786  	if invalidParams.Len() > 0 {
 14787  		return invalidParams
 14788  	}
 14789  	return nil
 14790  }
 14791  
 14792  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 14793  func (s *GetGatewayGroupInput) SetGatewayGroupArn(v string) *GetGatewayGroupInput {
 14794  	s.GatewayGroupArn = &v
 14795  	return s
 14796  }
 14797  
 14798  type GetGatewayGroupOutput struct {
 14799  	_ struct{} `type:"structure"`
 14800  
 14801  	// The details of the gateway group.
 14802  	GatewayGroup *GatewayGroup `type:"structure"`
 14803  }
 14804  
 14805  // String returns the string representation.
 14806  //
 14807  // API parameter values that are decorated as "sensitive" in the API will not
 14808  // be included in the string output. The member name will be present, but the
 14809  // value will be replaced with "sensitive".
 14810  func (s GetGatewayGroupOutput) String() string {
 14811  	return awsutil.Prettify(s)
 14812  }
 14813  
 14814  // GoString returns the string representation.
 14815  //
 14816  // API parameter values that are decorated as "sensitive" in the API will not
 14817  // be included in the string output. The member name will be present, but the
 14818  // value will be replaced with "sensitive".
 14819  func (s GetGatewayGroupOutput) GoString() string {
 14820  	return s.String()
 14821  }
 14822  
 14823  // SetGatewayGroup sets the GatewayGroup field's value.
 14824  func (s *GetGatewayGroupOutput) SetGatewayGroup(v *GatewayGroup) *GetGatewayGroupOutput {
 14825  	s.GatewayGroup = v
 14826  	return s
 14827  }
 14828  
 14829  type GetGatewayInput struct {
 14830  	_ struct{} `type:"structure"`
 14831  
 14832  	// The ARN of the gateway to get.
 14833  	//
 14834  	// GatewayArn is a required field
 14835  	GatewayArn *string `type:"string" required:"true"`
 14836  }
 14837  
 14838  // String returns the string representation.
 14839  //
 14840  // API parameter values that are decorated as "sensitive" in the API will not
 14841  // be included in the string output. The member name will be present, but the
 14842  // value will be replaced with "sensitive".
 14843  func (s GetGatewayInput) String() string {
 14844  	return awsutil.Prettify(s)
 14845  }
 14846  
 14847  // GoString returns the string representation.
 14848  //
 14849  // API parameter values that are decorated as "sensitive" in the API will not
 14850  // be included in the string output. The member name will be present, but the
 14851  // value will be replaced with "sensitive".
 14852  func (s GetGatewayInput) GoString() string {
 14853  	return s.String()
 14854  }
 14855  
 14856  // Validate inspects the fields of the type to determine if they are valid.
 14857  func (s *GetGatewayInput) Validate() error {
 14858  	invalidParams := request.ErrInvalidParams{Context: "GetGatewayInput"}
 14859  	if s.GatewayArn == nil {
 14860  		invalidParams.Add(request.NewErrParamRequired("GatewayArn"))
 14861  	}
 14862  
 14863  	if invalidParams.Len() > 0 {
 14864  		return invalidParams
 14865  	}
 14866  	return nil
 14867  }
 14868  
 14869  // SetGatewayArn sets the GatewayArn field's value.
 14870  func (s *GetGatewayInput) SetGatewayArn(v string) *GetGatewayInput {
 14871  	s.GatewayArn = &v
 14872  	return s
 14873  }
 14874  
 14875  type GetGatewayOutput struct {
 14876  	_ struct{} `type:"structure"`
 14877  
 14878  	// The details of the gateway.
 14879  	Gateway *Gateway `type:"structure"`
 14880  }
 14881  
 14882  // String returns the string representation.
 14883  //
 14884  // API parameter values that are decorated as "sensitive" in the API will not
 14885  // be included in the string output. The member name will be present, but the
 14886  // value will be replaced with "sensitive".
 14887  func (s GetGatewayOutput) String() string {
 14888  	return awsutil.Prettify(s)
 14889  }
 14890  
 14891  // GoString returns the string representation.
 14892  //
 14893  // API parameter values that are decorated as "sensitive" in the API will not
 14894  // be included in the string output. The member name will be present, but the
 14895  // value will be replaced with "sensitive".
 14896  func (s GetGatewayOutput) GoString() string {
 14897  	return s.String()
 14898  }
 14899  
 14900  // SetGateway sets the Gateway field's value.
 14901  func (s *GetGatewayOutput) SetGateway(v *Gateway) *GetGatewayOutput {
 14902  	s.Gateway = v
 14903  	return s
 14904  }
 14905  
 14906  type GetInvitationConfigurationInput struct {
 14907  	_ struct{} `type:"structure"`
 14908  }
 14909  
 14910  // String returns the string representation.
 14911  //
 14912  // API parameter values that are decorated as "sensitive" in the API will not
 14913  // be included in the string output. The member name will be present, but the
 14914  // value will be replaced with "sensitive".
 14915  func (s GetInvitationConfigurationInput) String() string {
 14916  	return awsutil.Prettify(s)
 14917  }
 14918  
 14919  // GoString returns the string representation.
 14920  //
 14921  // API parameter values that are decorated as "sensitive" in the API will not
 14922  // be included in the string output. The member name will be present, but the
 14923  // value will be replaced with "sensitive".
 14924  func (s GetInvitationConfigurationInput) GoString() string {
 14925  	return s.String()
 14926  }
 14927  
 14928  type GetInvitationConfigurationOutput struct {
 14929  	_ struct{} `type:"structure"`
 14930  
 14931  	// The email ID of the organization or individual contact that the enrolled
 14932  	// user can use.
 14933  	ContactEmail *string `min:"1" type:"string"`
 14934  
 14935  	// The name of the organization sending the enrollment invite to a user.
 14936  	OrganizationName *string `min:"1" type:"string"`
 14937  
 14938  	// The list of private skill IDs that you want to recommend to the user to enable
 14939  	// in the invitation.
 14940  	PrivateSkillIds []*string `type:"list"`
 14941  }
 14942  
 14943  // String returns the string representation.
 14944  //
 14945  // API parameter values that are decorated as "sensitive" in the API will not
 14946  // be included in the string output. The member name will be present, but the
 14947  // value will be replaced with "sensitive".
 14948  func (s GetInvitationConfigurationOutput) String() string {
 14949  	return awsutil.Prettify(s)
 14950  }
 14951  
 14952  // GoString returns the string representation.
 14953  //
 14954  // API parameter values that are decorated as "sensitive" in the API will not
 14955  // be included in the string output. The member name will be present, but the
 14956  // value will be replaced with "sensitive".
 14957  func (s GetInvitationConfigurationOutput) GoString() string {
 14958  	return s.String()
 14959  }
 14960  
 14961  // SetContactEmail sets the ContactEmail field's value.
 14962  func (s *GetInvitationConfigurationOutput) SetContactEmail(v string) *GetInvitationConfigurationOutput {
 14963  	s.ContactEmail = &v
 14964  	return s
 14965  }
 14966  
 14967  // SetOrganizationName sets the OrganizationName field's value.
 14968  func (s *GetInvitationConfigurationOutput) SetOrganizationName(v string) *GetInvitationConfigurationOutput {
 14969  	s.OrganizationName = &v
 14970  	return s
 14971  }
 14972  
 14973  // SetPrivateSkillIds sets the PrivateSkillIds field's value.
 14974  func (s *GetInvitationConfigurationOutput) SetPrivateSkillIds(v []*string) *GetInvitationConfigurationOutput {
 14975  	s.PrivateSkillIds = v
 14976  	return s
 14977  }
 14978  
 14979  type GetNetworkProfileInput struct {
 14980  	_ struct{} `type:"structure"`
 14981  
 14982  	// The ARN of the network profile associated with a device.
 14983  	//
 14984  	// NetworkProfileArn is a required field
 14985  	NetworkProfileArn *string `type:"string" required:"true"`
 14986  }
 14987  
 14988  // String returns the string representation.
 14989  //
 14990  // API parameter values that are decorated as "sensitive" in the API will not
 14991  // be included in the string output. The member name will be present, but the
 14992  // value will be replaced with "sensitive".
 14993  func (s GetNetworkProfileInput) String() string {
 14994  	return awsutil.Prettify(s)
 14995  }
 14996  
 14997  // GoString returns the string representation.
 14998  //
 14999  // API parameter values that are decorated as "sensitive" in the API will not
 15000  // be included in the string output. The member name will be present, but the
 15001  // value will be replaced with "sensitive".
 15002  func (s GetNetworkProfileInput) GoString() string {
 15003  	return s.String()
 15004  }
 15005  
 15006  // Validate inspects the fields of the type to determine if they are valid.
 15007  func (s *GetNetworkProfileInput) Validate() error {
 15008  	invalidParams := request.ErrInvalidParams{Context: "GetNetworkProfileInput"}
 15009  	if s.NetworkProfileArn == nil {
 15010  		invalidParams.Add(request.NewErrParamRequired("NetworkProfileArn"))
 15011  	}
 15012  
 15013  	if invalidParams.Len() > 0 {
 15014  		return invalidParams
 15015  	}
 15016  	return nil
 15017  }
 15018  
 15019  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 15020  func (s *GetNetworkProfileInput) SetNetworkProfileArn(v string) *GetNetworkProfileInput {
 15021  	s.NetworkProfileArn = &v
 15022  	return s
 15023  }
 15024  
 15025  type GetNetworkProfileOutput struct {
 15026  	_ struct{} `type:"structure"`
 15027  
 15028  	// The network profile associated with a device.
 15029  	NetworkProfile *NetworkProfile `type:"structure"`
 15030  }
 15031  
 15032  // String returns the string representation.
 15033  //
 15034  // API parameter values that are decorated as "sensitive" in the API will not
 15035  // be included in the string output. The member name will be present, but the
 15036  // value will be replaced with "sensitive".
 15037  func (s GetNetworkProfileOutput) String() string {
 15038  	return awsutil.Prettify(s)
 15039  }
 15040  
 15041  // GoString returns the string representation.
 15042  //
 15043  // API parameter values that are decorated as "sensitive" in the API will not
 15044  // be included in the string output. The member name will be present, but the
 15045  // value will be replaced with "sensitive".
 15046  func (s GetNetworkProfileOutput) GoString() string {
 15047  	return s.String()
 15048  }
 15049  
 15050  // SetNetworkProfile sets the NetworkProfile field's value.
 15051  func (s *GetNetworkProfileOutput) SetNetworkProfile(v *NetworkProfile) *GetNetworkProfileOutput {
 15052  	s.NetworkProfile = v
 15053  	return s
 15054  }
 15055  
 15056  type GetProfileInput struct {
 15057  	_ struct{} `type:"structure"`
 15058  
 15059  	// The ARN of the room profile for which to request details. Required.
 15060  	ProfileArn *string `type:"string"`
 15061  }
 15062  
 15063  // String returns the string representation.
 15064  //
 15065  // API parameter values that are decorated as "sensitive" in the API will not
 15066  // be included in the string output. The member name will be present, but the
 15067  // value will be replaced with "sensitive".
 15068  func (s GetProfileInput) String() string {
 15069  	return awsutil.Prettify(s)
 15070  }
 15071  
 15072  // GoString returns the string representation.
 15073  //
 15074  // API parameter values that are decorated as "sensitive" in the API will not
 15075  // be included in the string output. The member name will be present, but the
 15076  // value will be replaced with "sensitive".
 15077  func (s GetProfileInput) GoString() string {
 15078  	return s.String()
 15079  }
 15080  
 15081  // SetProfileArn sets the ProfileArn field's value.
 15082  func (s *GetProfileInput) SetProfileArn(v string) *GetProfileInput {
 15083  	s.ProfileArn = &v
 15084  	return s
 15085  }
 15086  
 15087  type GetProfileOutput struct {
 15088  	_ struct{} `type:"structure"`
 15089  
 15090  	// The details of the room profile requested. Required.
 15091  	Profile *Profile `type:"structure"`
 15092  }
 15093  
 15094  // String returns the string representation.
 15095  //
 15096  // API parameter values that are decorated as "sensitive" in the API will not
 15097  // be included in the string output. The member name will be present, but the
 15098  // value will be replaced with "sensitive".
 15099  func (s GetProfileOutput) String() string {
 15100  	return awsutil.Prettify(s)
 15101  }
 15102  
 15103  // GoString returns the string representation.
 15104  //
 15105  // API parameter values that are decorated as "sensitive" in the API will not
 15106  // be included in the string output. The member name will be present, but the
 15107  // value will be replaced with "sensitive".
 15108  func (s GetProfileOutput) GoString() string {
 15109  	return s.String()
 15110  }
 15111  
 15112  // SetProfile sets the Profile field's value.
 15113  func (s *GetProfileOutput) SetProfile(v *Profile) *GetProfileOutput {
 15114  	s.Profile = v
 15115  	return s
 15116  }
 15117  
 15118  type GetRoomInput struct {
 15119  	_ struct{} `type:"structure"`
 15120  
 15121  	// The ARN of the room for which to request details. Required.
 15122  	RoomArn *string `type:"string"`
 15123  }
 15124  
 15125  // String returns the string representation.
 15126  //
 15127  // API parameter values that are decorated as "sensitive" in the API will not
 15128  // be included in the string output. The member name will be present, but the
 15129  // value will be replaced with "sensitive".
 15130  func (s GetRoomInput) String() string {
 15131  	return awsutil.Prettify(s)
 15132  }
 15133  
 15134  // GoString returns the string representation.
 15135  //
 15136  // API parameter values that are decorated as "sensitive" in the API will not
 15137  // be included in the string output. The member name will be present, but the
 15138  // value will be replaced with "sensitive".
 15139  func (s GetRoomInput) GoString() string {
 15140  	return s.String()
 15141  }
 15142  
 15143  // SetRoomArn sets the RoomArn field's value.
 15144  func (s *GetRoomInput) SetRoomArn(v string) *GetRoomInput {
 15145  	s.RoomArn = &v
 15146  	return s
 15147  }
 15148  
 15149  type GetRoomOutput struct {
 15150  	_ struct{} `type:"structure"`
 15151  
 15152  	// The details of the room requested.
 15153  	Room *Room `type:"structure"`
 15154  }
 15155  
 15156  // String returns the string representation.
 15157  //
 15158  // API parameter values that are decorated as "sensitive" in the API will not
 15159  // be included in the string output. The member name will be present, but the
 15160  // value will be replaced with "sensitive".
 15161  func (s GetRoomOutput) String() string {
 15162  	return awsutil.Prettify(s)
 15163  }
 15164  
 15165  // GoString returns the string representation.
 15166  //
 15167  // API parameter values that are decorated as "sensitive" in the API will not
 15168  // be included in the string output. The member name will be present, but the
 15169  // value will be replaced with "sensitive".
 15170  func (s GetRoomOutput) GoString() string {
 15171  	return s.String()
 15172  }
 15173  
 15174  // SetRoom sets the Room field's value.
 15175  func (s *GetRoomOutput) SetRoom(v *Room) *GetRoomOutput {
 15176  	s.Room = v
 15177  	return s
 15178  }
 15179  
 15180  type GetRoomSkillParameterInput struct {
 15181  	_ struct{} `type:"structure"`
 15182  
 15183  	// The room skill parameter key for which to get details. Required.
 15184  	//
 15185  	// ParameterKey is a required field
 15186  	ParameterKey *string `min:"1" type:"string" required:"true"`
 15187  
 15188  	// The ARN of the room from which to get the room skill parameter details.
 15189  	RoomArn *string `type:"string"`
 15190  
 15191  	// The ARN of the skill from which to get the room skill parameter details.
 15192  	// Required.
 15193  	//
 15194  	// SkillId is a required field
 15195  	SkillId *string `type:"string" required:"true"`
 15196  }
 15197  
 15198  // String returns the string representation.
 15199  //
 15200  // API parameter values that are decorated as "sensitive" in the API will not
 15201  // be included in the string output. The member name will be present, but the
 15202  // value will be replaced with "sensitive".
 15203  func (s GetRoomSkillParameterInput) String() string {
 15204  	return awsutil.Prettify(s)
 15205  }
 15206  
 15207  // GoString returns the string representation.
 15208  //
 15209  // API parameter values that are decorated as "sensitive" in the API will not
 15210  // be included in the string output. The member name will be present, but the
 15211  // value will be replaced with "sensitive".
 15212  func (s GetRoomSkillParameterInput) GoString() string {
 15213  	return s.String()
 15214  }
 15215  
 15216  // Validate inspects the fields of the type to determine if they are valid.
 15217  func (s *GetRoomSkillParameterInput) Validate() error {
 15218  	invalidParams := request.ErrInvalidParams{Context: "GetRoomSkillParameterInput"}
 15219  	if s.ParameterKey == nil {
 15220  		invalidParams.Add(request.NewErrParamRequired("ParameterKey"))
 15221  	}
 15222  	if s.ParameterKey != nil && len(*s.ParameterKey) < 1 {
 15223  		invalidParams.Add(request.NewErrParamMinLen("ParameterKey", 1))
 15224  	}
 15225  	if s.SkillId == nil {
 15226  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 15227  	}
 15228  
 15229  	if invalidParams.Len() > 0 {
 15230  		return invalidParams
 15231  	}
 15232  	return nil
 15233  }
 15234  
 15235  // SetParameterKey sets the ParameterKey field's value.
 15236  func (s *GetRoomSkillParameterInput) SetParameterKey(v string) *GetRoomSkillParameterInput {
 15237  	s.ParameterKey = &v
 15238  	return s
 15239  }
 15240  
 15241  // SetRoomArn sets the RoomArn field's value.
 15242  func (s *GetRoomSkillParameterInput) SetRoomArn(v string) *GetRoomSkillParameterInput {
 15243  	s.RoomArn = &v
 15244  	return s
 15245  }
 15246  
 15247  // SetSkillId sets the SkillId field's value.
 15248  func (s *GetRoomSkillParameterInput) SetSkillId(v string) *GetRoomSkillParameterInput {
 15249  	s.SkillId = &v
 15250  	return s
 15251  }
 15252  
 15253  type GetRoomSkillParameterOutput struct {
 15254  	_ struct{} `type:"structure"`
 15255  
 15256  	// The details of the room skill parameter requested. Required.
 15257  	RoomSkillParameter *RoomSkillParameter `type:"structure"`
 15258  }
 15259  
 15260  // String returns the string representation.
 15261  //
 15262  // API parameter values that are decorated as "sensitive" in the API will not
 15263  // be included in the string output. The member name will be present, but the
 15264  // value will be replaced with "sensitive".
 15265  func (s GetRoomSkillParameterOutput) String() string {
 15266  	return awsutil.Prettify(s)
 15267  }
 15268  
 15269  // GoString returns the string representation.
 15270  //
 15271  // API parameter values that are decorated as "sensitive" in the API will not
 15272  // be included in the string output. The member name will be present, but the
 15273  // value will be replaced with "sensitive".
 15274  func (s GetRoomSkillParameterOutput) GoString() string {
 15275  	return s.String()
 15276  }
 15277  
 15278  // SetRoomSkillParameter sets the RoomSkillParameter field's value.
 15279  func (s *GetRoomSkillParameterOutput) SetRoomSkillParameter(v *RoomSkillParameter) *GetRoomSkillParameterOutput {
 15280  	s.RoomSkillParameter = v
 15281  	return s
 15282  }
 15283  
 15284  type GetSkillGroupInput struct {
 15285  	_ struct{} `type:"structure"`
 15286  
 15287  	// The ARN of the skill group for which to get details. Required.
 15288  	SkillGroupArn *string `type:"string"`
 15289  }
 15290  
 15291  // String returns the string representation.
 15292  //
 15293  // API parameter values that are decorated as "sensitive" in the API will not
 15294  // be included in the string output. The member name will be present, but the
 15295  // value will be replaced with "sensitive".
 15296  func (s GetSkillGroupInput) String() string {
 15297  	return awsutil.Prettify(s)
 15298  }
 15299  
 15300  // GoString returns the string representation.
 15301  //
 15302  // API parameter values that are decorated as "sensitive" in the API will not
 15303  // be included in the string output. The member name will be present, but the
 15304  // value will be replaced with "sensitive".
 15305  func (s GetSkillGroupInput) GoString() string {
 15306  	return s.String()
 15307  }
 15308  
 15309  // SetSkillGroupArn sets the SkillGroupArn field's value.
 15310  func (s *GetSkillGroupInput) SetSkillGroupArn(v string) *GetSkillGroupInput {
 15311  	s.SkillGroupArn = &v
 15312  	return s
 15313  }
 15314  
 15315  type GetSkillGroupOutput struct {
 15316  	_ struct{} `type:"structure"`
 15317  
 15318  	// The details of the skill group requested. Required.
 15319  	SkillGroup *SkillGroup `type:"structure"`
 15320  }
 15321  
 15322  // String returns the string representation.
 15323  //
 15324  // API parameter values that are decorated as "sensitive" in the API will not
 15325  // be included in the string output. The member name will be present, but the
 15326  // value will be replaced with "sensitive".
 15327  func (s GetSkillGroupOutput) String() string {
 15328  	return awsutil.Prettify(s)
 15329  }
 15330  
 15331  // GoString returns the string representation.
 15332  //
 15333  // API parameter values that are decorated as "sensitive" in the API will not
 15334  // be included in the string output. The member name will be present, but the
 15335  // value will be replaced with "sensitive".
 15336  func (s GetSkillGroupOutput) GoString() string {
 15337  	return s.String()
 15338  }
 15339  
 15340  // SetSkillGroup sets the SkillGroup field's value.
 15341  func (s *GetSkillGroupOutput) SetSkillGroup(v *SkillGroup) *GetSkillGroupOutput {
 15342  	s.SkillGroup = v
 15343  	return s
 15344  }
 15345  
 15346  // The IP endpoint and protocol for calling.
 15347  type IPDialIn struct {
 15348  	_ struct{} `type:"structure"`
 15349  
 15350  	// The protocol, including SIP, SIPS, and H323.
 15351  	//
 15352  	// CommsProtocol is a required field
 15353  	CommsProtocol *string `type:"string" required:"true" enum:"CommsProtocol"`
 15354  
 15355  	// The IP address.
 15356  	//
 15357  	// Endpoint is a required field
 15358  	Endpoint *string `min:"1" type:"string" required:"true"`
 15359  }
 15360  
 15361  // String returns the string representation.
 15362  //
 15363  // API parameter values that are decorated as "sensitive" in the API will not
 15364  // be included in the string output. The member name will be present, but the
 15365  // value will be replaced with "sensitive".
 15366  func (s IPDialIn) String() string {
 15367  	return awsutil.Prettify(s)
 15368  }
 15369  
 15370  // GoString returns the string representation.
 15371  //
 15372  // API parameter values that are decorated as "sensitive" in the API will not
 15373  // be included in the string output. The member name will be present, but the
 15374  // value will be replaced with "sensitive".
 15375  func (s IPDialIn) GoString() string {
 15376  	return s.String()
 15377  }
 15378  
 15379  // Validate inspects the fields of the type to determine if they are valid.
 15380  func (s *IPDialIn) Validate() error {
 15381  	invalidParams := request.ErrInvalidParams{Context: "IPDialIn"}
 15382  	if s.CommsProtocol == nil {
 15383  		invalidParams.Add(request.NewErrParamRequired("CommsProtocol"))
 15384  	}
 15385  	if s.Endpoint == nil {
 15386  		invalidParams.Add(request.NewErrParamRequired("Endpoint"))
 15387  	}
 15388  	if s.Endpoint != nil && len(*s.Endpoint) < 1 {
 15389  		invalidParams.Add(request.NewErrParamMinLen("Endpoint", 1))
 15390  	}
 15391  
 15392  	if invalidParams.Len() > 0 {
 15393  		return invalidParams
 15394  	}
 15395  	return nil
 15396  }
 15397  
 15398  // SetCommsProtocol sets the CommsProtocol field's value.
 15399  func (s *IPDialIn) SetCommsProtocol(v string) *IPDialIn {
 15400  	s.CommsProtocol = &v
 15401  	return s
 15402  }
 15403  
 15404  // SetEndpoint sets the Endpoint field's value.
 15405  func (s *IPDialIn) SetEndpoint(v string) *IPDialIn {
 15406  	s.Endpoint = &v
 15407  	return s
 15408  }
 15409  
 15410  // Settings for the instant booking feature that are applied to a room profile.
 15411  // When users start their meeting with Alexa, Alexa automatically books the
 15412  // room for the configured duration if the room is available.
 15413  type InstantBooking struct {
 15414  	_ struct{} `type:"structure"`
 15415  
 15416  	// Duration between 15 and 240 minutes at increments of 15 that determines how
 15417  	// long to book an available room when a meeting is started with Alexa.
 15418  	DurationInMinutes *int64 `type:"integer"`
 15419  
 15420  	// Whether instant booking is enabled or not.
 15421  	Enabled *bool `type:"boolean"`
 15422  }
 15423  
 15424  // String returns the string representation.
 15425  //
 15426  // API parameter values that are decorated as "sensitive" in the API will not
 15427  // be included in the string output. The member name will be present, but the
 15428  // value will be replaced with "sensitive".
 15429  func (s InstantBooking) String() string {
 15430  	return awsutil.Prettify(s)
 15431  }
 15432  
 15433  // GoString returns the string representation.
 15434  //
 15435  // API parameter values that are decorated as "sensitive" in the API will not
 15436  // be included in the string output. The member name will be present, but the
 15437  // value will be replaced with "sensitive".
 15438  func (s InstantBooking) GoString() string {
 15439  	return s.String()
 15440  }
 15441  
 15442  // SetDurationInMinutes sets the DurationInMinutes field's value.
 15443  func (s *InstantBooking) SetDurationInMinutes(v int64) *InstantBooking {
 15444  	s.DurationInMinutes = &v
 15445  	return s
 15446  }
 15447  
 15448  // SetEnabled sets the Enabled field's value.
 15449  func (s *InstantBooking) SetEnabled(v bool) *InstantBooking {
 15450  	s.Enabled = &v
 15451  	return s
 15452  }
 15453  
 15454  // The Certificate Authority can't issue or revoke a certificate.
 15455  type InvalidCertificateAuthorityException struct {
 15456  	_            struct{}                  `type:"structure"`
 15457  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15458  
 15459  	Message_ *string `locationName:"Message" type:"string"`
 15460  }
 15461  
 15462  // String returns the string representation.
 15463  //
 15464  // API parameter values that are decorated as "sensitive" in the API will not
 15465  // be included in the string output. The member name will be present, but the
 15466  // value will be replaced with "sensitive".
 15467  func (s InvalidCertificateAuthorityException) String() string {
 15468  	return awsutil.Prettify(s)
 15469  }
 15470  
 15471  // GoString returns the string representation.
 15472  //
 15473  // API parameter values that are decorated as "sensitive" in the API will not
 15474  // be included in the string output. The member name will be present, but the
 15475  // value will be replaced with "sensitive".
 15476  func (s InvalidCertificateAuthorityException) GoString() string {
 15477  	return s.String()
 15478  }
 15479  
 15480  func newErrorInvalidCertificateAuthorityException(v protocol.ResponseMetadata) error {
 15481  	return &InvalidCertificateAuthorityException{
 15482  		RespMetadata: v,
 15483  	}
 15484  }
 15485  
 15486  // Code returns the exception type name.
 15487  func (s *InvalidCertificateAuthorityException) Code() string {
 15488  	return "InvalidCertificateAuthorityException"
 15489  }
 15490  
 15491  // Message returns the exception's message.
 15492  func (s *InvalidCertificateAuthorityException) Message() string {
 15493  	if s.Message_ != nil {
 15494  		return *s.Message_
 15495  	}
 15496  	return ""
 15497  }
 15498  
 15499  // OrigErr always returns nil, satisfies awserr.Error interface.
 15500  func (s *InvalidCertificateAuthorityException) OrigErr() error {
 15501  	return nil
 15502  }
 15503  
 15504  func (s *InvalidCertificateAuthorityException) Error() string {
 15505  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15506  }
 15507  
 15508  // Status code returns the HTTP status code for the request's response error.
 15509  func (s *InvalidCertificateAuthorityException) StatusCode() int {
 15510  	return s.RespMetadata.StatusCode
 15511  }
 15512  
 15513  // RequestID returns the service's response RequestID for request.
 15514  func (s *InvalidCertificateAuthorityException) RequestID() string {
 15515  	return s.RespMetadata.RequestID
 15516  }
 15517  
 15518  // The device is in an invalid state.
 15519  type InvalidDeviceException struct {
 15520  	_            struct{}                  `type:"structure"`
 15521  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15522  
 15523  	Message_ *string `locationName:"Message" type:"string"`
 15524  }
 15525  
 15526  // String returns the string representation.
 15527  //
 15528  // API parameter values that are decorated as "sensitive" in the API will not
 15529  // be included in the string output. The member name will be present, but the
 15530  // value will be replaced with "sensitive".
 15531  func (s InvalidDeviceException) String() string {
 15532  	return awsutil.Prettify(s)
 15533  }
 15534  
 15535  // GoString returns the string representation.
 15536  //
 15537  // API parameter values that are decorated as "sensitive" in the API will not
 15538  // be included in the string output. The member name will be present, but the
 15539  // value will be replaced with "sensitive".
 15540  func (s InvalidDeviceException) GoString() string {
 15541  	return s.String()
 15542  }
 15543  
 15544  func newErrorInvalidDeviceException(v protocol.ResponseMetadata) error {
 15545  	return &InvalidDeviceException{
 15546  		RespMetadata: v,
 15547  	}
 15548  }
 15549  
 15550  // Code returns the exception type name.
 15551  func (s *InvalidDeviceException) Code() string {
 15552  	return "InvalidDeviceException"
 15553  }
 15554  
 15555  // Message returns the exception's message.
 15556  func (s *InvalidDeviceException) Message() string {
 15557  	if s.Message_ != nil {
 15558  		return *s.Message_
 15559  	}
 15560  	return ""
 15561  }
 15562  
 15563  // OrigErr always returns nil, satisfies awserr.Error interface.
 15564  func (s *InvalidDeviceException) OrigErr() error {
 15565  	return nil
 15566  }
 15567  
 15568  func (s *InvalidDeviceException) Error() string {
 15569  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15570  }
 15571  
 15572  // Status code returns the HTTP status code for the request's response error.
 15573  func (s *InvalidDeviceException) StatusCode() int {
 15574  	return s.RespMetadata.StatusCode
 15575  }
 15576  
 15577  // RequestID returns the service's response RequestID for request.
 15578  func (s *InvalidDeviceException) RequestID() string {
 15579  	return s.RespMetadata.RequestID
 15580  }
 15581  
 15582  // A password in SecretsManager is in an invalid state.
 15583  type InvalidSecretsManagerResourceException struct {
 15584  	_            struct{}                  `type:"structure"`
 15585  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15586  
 15587  	Message_ *string `locationName:"Message" type:"string"`
 15588  }
 15589  
 15590  // String returns the string representation.
 15591  //
 15592  // API parameter values that are decorated as "sensitive" in the API will not
 15593  // be included in the string output. The member name will be present, but the
 15594  // value will be replaced with "sensitive".
 15595  func (s InvalidSecretsManagerResourceException) String() string {
 15596  	return awsutil.Prettify(s)
 15597  }
 15598  
 15599  // GoString returns the string representation.
 15600  //
 15601  // API parameter values that are decorated as "sensitive" in the API will not
 15602  // be included in the string output. The member name will be present, but the
 15603  // value will be replaced with "sensitive".
 15604  func (s InvalidSecretsManagerResourceException) GoString() string {
 15605  	return s.String()
 15606  }
 15607  
 15608  func newErrorInvalidSecretsManagerResourceException(v protocol.ResponseMetadata) error {
 15609  	return &InvalidSecretsManagerResourceException{
 15610  		RespMetadata: v,
 15611  	}
 15612  }
 15613  
 15614  // Code returns the exception type name.
 15615  func (s *InvalidSecretsManagerResourceException) Code() string {
 15616  	return "InvalidSecretsManagerResourceException"
 15617  }
 15618  
 15619  // Message returns the exception's message.
 15620  func (s *InvalidSecretsManagerResourceException) Message() string {
 15621  	if s.Message_ != nil {
 15622  		return *s.Message_
 15623  	}
 15624  	return ""
 15625  }
 15626  
 15627  // OrigErr always returns nil, satisfies awserr.Error interface.
 15628  func (s *InvalidSecretsManagerResourceException) OrigErr() error {
 15629  	return nil
 15630  }
 15631  
 15632  func (s *InvalidSecretsManagerResourceException) Error() string {
 15633  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15634  }
 15635  
 15636  // Status code returns the HTTP status code for the request's response error.
 15637  func (s *InvalidSecretsManagerResourceException) StatusCode() int {
 15638  	return s.RespMetadata.StatusCode
 15639  }
 15640  
 15641  // RequestID returns the service's response RequestID for request.
 15642  func (s *InvalidSecretsManagerResourceException) RequestID() string {
 15643  	return s.RespMetadata.RequestID
 15644  }
 15645  
 15646  // The service linked role is locked for deletion.
 15647  type InvalidServiceLinkedRoleStateException struct {
 15648  	_            struct{}                  `type:"structure"`
 15649  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15650  
 15651  	Message_ *string `locationName:"Message" type:"string"`
 15652  }
 15653  
 15654  // String returns the string representation.
 15655  //
 15656  // API parameter values that are decorated as "sensitive" in the API will not
 15657  // be included in the string output. The member name will be present, but the
 15658  // value will be replaced with "sensitive".
 15659  func (s InvalidServiceLinkedRoleStateException) String() string {
 15660  	return awsutil.Prettify(s)
 15661  }
 15662  
 15663  // GoString returns the string representation.
 15664  //
 15665  // API parameter values that are decorated as "sensitive" in the API will not
 15666  // be included in the string output. The member name will be present, but the
 15667  // value will be replaced with "sensitive".
 15668  func (s InvalidServiceLinkedRoleStateException) GoString() string {
 15669  	return s.String()
 15670  }
 15671  
 15672  func newErrorInvalidServiceLinkedRoleStateException(v protocol.ResponseMetadata) error {
 15673  	return &InvalidServiceLinkedRoleStateException{
 15674  		RespMetadata: v,
 15675  	}
 15676  }
 15677  
 15678  // Code returns the exception type name.
 15679  func (s *InvalidServiceLinkedRoleStateException) Code() string {
 15680  	return "InvalidServiceLinkedRoleStateException"
 15681  }
 15682  
 15683  // Message returns the exception's message.
 15684  func (s *InvalidServiceLinkedRoleStateException) Message() string {
 15685  	if s.Message_ != nil {
 15686  		return *s.Message_
 15687  	}
 15688  	return ""
 15689  }
 15690  
 15691  // OrigErr always returns nil, satisfies awserr.Error interface.
 15692  func (s *InvalidServiceLinkedRoleStateException) OrigErr() error {
 15693  	return nil
 15694  }
 15695  
 15696  func (s *InvalidServiceLinkedRoleStateException) Error() string {
 15697  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15698  }
 15699  
 15700  // Status code returns the HTTP status code for the request's response error.
 15701  func (s *InvalidServiceLinkedRoleStateException) StatusCode() int {
 15702  	return s.RespMetadata.StatusCode
 15703  }
 15704  
 15705  // RequestID returns the service's response RequestID for request.
 15706  func (s *InvalidServiceLinkedRoleStateException) RequestID() string {
 15707  	return s.RespMetadata.RequestID
 15708  }
 15709  
 15710  // The attempt to update a user is invalid due to the user's current status.
 15711  type InvalidUserStatusException struct {
 15712  	_            struct{}                  `type:"structure"`
 15713  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15714  
 15715  	Message_ *string `locationName:"Message" type:"string"`
 15716  }
 15717  
 15718  // String returns the string representation.
 15719  //
 15720  // API parameter values that are decorated as "sensitive" in the API will not
 15721  // be included in the string output. The member name will be present, but the
 15722  // value will be replaced with "sensitive".
 15723  func (s InvalidUserStatusException) String() string {
 15724  	return awsutil.Prettify(s)
 15725  }
 15726  
 15727  // GoString returns the string representation.
 15728  //
 15729  // API parameter values that are decorated as "sensitive" in the API will not
 15730  // be included in the string output. The member name will be present, but the
 15731  // value will be replaced with "sensitive".
 15732  func (s InvalidUserStatusException) GoString() string {
 15733  	return s.String()
 15734  }
 15735  
 15736  func newErrorInvalidUserStatusException(v protocol.ResponseMetadata) error {
 15737  	return &InvalidUserStatusException{
 15738  		RespMetadata: v,
 15739  	}
 15740  }
 15741  
 15742  // Code returns the exception type name.
 15743  func (s *InvalidUserStatusException) Code() string {
 15744  	return "InvalidUserStatusException"
 15745  }
 15746  
 15747  // Message returns the exception's message.
 15748  func (s *InvalidUserStatusException) Message() string {
 15749  	if s.Message_ != nil {
 15750  		return *s.Message_
 15751  	}
 15752  	return ""
 15753  }
 15754  
 15755  // OrigErr always returns nil, satisfies awserr.Error interface.
 15756  func (s *InvalidUserStatusException) OrigErr() error {
 15757  	return nil
 15758  }
 15759  
 15760  func (s *InvalidUserStatusException) Error() string {
 15761  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15762  }
 15763  
 15764  // Status code returns the HTTP status code for the request's response error.
 15765  func (s *InvalidUserStatusException) StatusCode() int {
 15766  	return s.RespMetadata.StatusCode
 15767  }
 15768  
 15769  // RequestID returns the service's response RequestID for request.
 15770  func (s *InvalidUserStatusException) RequestID() string {
 15771  	return s.RespMetadata.RequestID
 15772  }
 15773  
 15774  // You are performing an action that would put you beyond your account's limits.
 15775  type LimitExceededException struct {
 15776  	_            struct{}                  `type:"structure"`
 15777  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 15778  
 15779  	Message_ *string `locationName:"Message" type:"string"`
 15780  }
 15781  
 15782  // String returns the string representation.
 15783  //
 15784  // API parameter values that are decorated as "sensitive" in the API will not
 15785  // be included in the string output. The member name will be present, but the
 15786  // value will be replaced with "sensitive".
 15787  func (s LimitExceededException) String() string {
 15788  	return awsutil.Prettify(s)
 15789  }
 15790  
 15791  // GoString returns the string representation.
 15792  //
 15793  // API parameter values that are decorated as "sensitive" in the API will not
 15794  // be included in the string output. The member name will be present, but the
 15795  // value will be replaced with "sensitive".
 15796  func (s LimitExceededException) GoString() string {
 15797  	return s.String()
 15798  }
 15799  
 15800  func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
 15801  	return &LimitExceededException{
 15802  		RespMetadata: v,
 15803  	}
 15804  }
 15805  
 15806  // Code returns the exception type name.
 15807  func (s *LimitExceededException) Code() string {
 15808  	return "LimitExceededException"
 15809  }
 15810  
 15811  // Message returns the exception's message.
 15812  func (s *LimitExceededException) Message() string {
 15813  	if s.Message_ != nil {
 15814  		return *s.Message_
 15815  	}
 15816  	return ""
 15817  }
 15818  
 15819  // OrigErr always returns nil, satisfies awserr.Error interface.
 15820  func (s *LimitExceededException) OrigErr() error {
 15821  	return nil
 15822  }
 15823  
 15824  func (s *LimitExceededException) Error() string {
 15825  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 15826  }
 15827  
 15828  // Status code returns the HTTP status code for the request's response error.
 15829  func (s *LimitExceededException) StatusCode() int {
 15830  	return s.RespMetadata.StatusCode
 15831  }
 15832  
 15833  // RequestID returns the service's response RequestID for request.
 15834  func (s *LimitExceededException) RequestID() string {
 15835  	return s.RespMetadata.RequestID
 15836  }
 15837  
 15838  type ListBusinessReportSchedulesInput struct {
 15839  	_ struct{} `type:"structure"`
 15840  
 15841  	// The maximum number of schedules listed in the call.
 15842  	MaxResults *int64 `min:"1" type:"integer"`
 15843  
 15844  	// The token used to list the remaining schedules from the previous API call.
 15845  	NextToken *string `min:"1" type:"string"`
 15846  }
 15847  
 15848  // String returns the string representation.
 15849  //
 15850  // API parameter values that are decorated as "sensitive" in the API will not
 15851  // be included in the string output. The member name will be present, but the
 15852  // value will be replaced with "sensitive".
 15853  func (s ListBusinessReportSchedulesInput) String() string {
 15854  	return awsutil.Prettify(s)
 15855  }
 15856  
 15857  // GoString returns the string representation.
 15858  //
 15859  // API parameter values that are decorated as "sensitive" in the API will not
 15860  // be included in the string output. The member name will be present, but the
 15861  // value will be replaced with "sensitive".
 15862  func (s ListBusinessReportSchedulesInput) GoString() string {
 15863  	return s.String()
 15864  }
 15865  
 15866  // Validate inspects the fields of the type to determine if they are valid.
 15867  func (s *ListBusinessReportSchedulesInput) Validate() error {
 15868  	invalidParams := request.ErrInvalidParams{Context: "ListBusinessReportSchedulesInput"}
 15869  	if s.MaxResults != nil && *s.MaxResults < 1 {
 15870  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 15871  	}
 15872  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 15873  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 15874  	}
 15875  
 15876  	if invalidParams.Len() > 0 {
 15877  		return invalidParams
 15878  	}
 15879  	return nil
 15880  }
 15881  
 15882  // SetMaxResults sets the MaxResults field's value.
 15883  func (s *ListBusinessReportSchedulesInput) SetMaxResults(v int64) *ListBusinessReportSchedulesInput {
 15884  	s.MaxResults = &v
 15885  	return s
 15886  }
 15887  
 15888  // SetNextToken sets the NextToken field's value.
 15889  func (s *ListBusinessReportSchedulesInput) SetNextToken(v string) *ListBusinessReportSchedulesInput {
 15890  	s.NextToken = &v
 15891  	return s
 15892  }
 15893  
 15894  type ListBusinessReportSchedulesOutput struct {
 15895  	_ struct{} `type:"structure"`
 15896  
 15897  	// The schedule of the reports.
 15898  	BusinessReportSchedules []*BusinessReportSchedule `type:"list"`
 15899  
 15900  	// The token used to list the remaining schedules from the previous API call.
 15901  	NextToken *string `min:"1" type:"string"`
 15902  }
 15903  
 15904  // String returns the string representation.
 15905  //
 15906  // API parameter values that are decorated as "sensitive" in the API will not
 15907  // be included in the string output. The member name will be present, but the
 15908  // value will be replaced with "sensitive".
 15909  func (s ListBusinessReportSchedulesOutput) String() string {
 15910  	return awsutil.Prettify(s)
 15911  }
 15912  
 15913  // GoString returns the string representation.
 15914  //
 15915  // API parameter values that are decorated as "sensitive" in the API will not
 15916  // be included in the string output. The member name will be present, but the
 15917  // value will be replaced with "sensitive".
 15918  func (s ListBusinessReportSchedulesOutput) GoString() string {
 15919  	return s.String()
 15920  }
 15921  
 15922  // SetBusinessReportSchedules sets the BusinessReportSchedules field's value.
 15923  func (s *ListBusinessReportSchedulesOutput) SetBusinessReportSchedules(v []*BusinessReportSchedule) *ListBusinessReportSchedulesOutput {
 15924  	s.BusinessReportSchedules = v
 15925  	return s
 15926  }
 15927  
 15928  // SetNextToken sets the NextToken field's value.
 15929  func (s *ListBusinessReportSchedulesOutput) SetNextToken(v string) *ListBusinessReportSchedulesOutput {
 15930  	s.NextToken = &v
 15931  	return s
 15932  }
 15933  
 15934  type ListConferenceProvidersInput struct {
 15935  	_ struct{} `type:"structure"`
 15936  
 15937  	// The maximum number of conference providers to be returned, per paginated
 15938  	// calls.
 15939  	MaxResults *int64 `min:"1" type:"integer"`
 15940  
 15941  	// The tokens used for pagination.
 15942  	NextToken *string `min:"1" type:"string"`
 15943  }
 15944  
 15945  // String returns the string representation.
 15946  //
 15947  // API parameter values that are decorated as "sensitive" in the API will not
 15948  // be included in the string output. The member name will be present, but the
 15949  // value will be replaced with "sensitive".
 15950  func (s ListConferenceProvidersInput) String() string {
 15951  	return awsutil.Prettify(s)
 15952  }
 15953  
 15954  // GoString returns the string representation.
 15955  //
 15956  // API parameter values that are decorated as "sensitive" in the API will not
 15957  // be included in the string output. The member name will be present, but the
 15958  // value will be replaced with "sensitive".
 15959  func (s ListConferenceProvidersInput) GoString() string {
 15960  	return s.String()
 15961  }
 15962  
 15963  // Validate inspects the fields of the type to determine if they are valid.
 15964  func (s *ListConferenceProvidersInput) Validate() error {
 15965  	invalidParams := request.ErrInvalidParams{Context: "ListConferenceProvidersInput"}
 15966  	if s.MaxResults != nil && *s.MaxResults < 1 {
 15967  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 15968  	}
 15969  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 15970  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 15971  	}
 15972  
 15973  	if invalidParams.Len() > 0 {
 15974  		return invalidParams
 15975  	}
 15976  	return nil
 15977  }
 15978  
 15979  // SetMaxResults sets the MaxResults field's value.
 15980  func (s *ListConferenceProvidersInput) SetMaxResults(v int64) *ListConferenceProvidersInput {
 15981  	s.MaxResults = &v
 15982  	return s
 15983  }
 15984  
 15985  // SetNextToken sets the NextToken field's value.
 15986  func (s *ListConferenceProvidersInput) SetNextToken(v string) *ListConferenceProvidersInput {
 15987  	s.NextToken = &v
 15988  	return s
 15989  }
 15990  
 15991  type ListConferenceProvidersOutput struct {
 15992  	_ struct{} `type:"structure"`
 15993  
 15994  	// The conference providers.
 15995  	ConferenceProviders []*ConferenceProvider `type:"list"`
 15996  
 15997  	// The tokens used for pagination.
 15998  	NextToken *string `min:"1" type:"string"`
 15999  }
 16000  
 16001  // String returns the string representation.
 16002  //
 16003  // API parameter values that are decorated as "sensitive" in the API will not
 16004  // be included in the string output. The member name will be present, but the
 16005  // value will be replaced with "sensitive".
 16006  func (s ListConferenceProvidersOutput) String() string {
 16007  	return awsutil.Prettify(s)
 16008  }
 16009  
 16010  // GoString returns the string representation.
 16011  //
 16012  // API parameter values that are decorated as "sensitive" in the API will not
 16013  // be included in the string output. The member name will be present, but the
 16014  // value will be replaced with "sensitive".
 16015  func (s ListConferenceProvidersOutput) GoString() string {
 16016  	return s.String()
 16017  }
 16018  
 16019  // SetConferenceProviders sets the ConferenceProviders field's value.
 16020  func (s *ListConferenceProvidersOutput) SetConferenceProviders(v []*ConferenceProvider) *ListConferenceProvidersOutput {
 16021  	s.ConferenceProviders = v
 16022  	return s
 16023  }
 16024  
 16025  // SetNextToken sets the NextToken field's value.
 16026  func (s *ListConferenceProvidersOutput) SetNextToken(v string) *ListConferenceProvidersOutput {
 16027  	s.NextToken = &v
 16028  	return s
 16029  }
 16030  
 16031  type ListDeviceEventsInput struct {
 16032  	_ struct{} `type:"structure"`
 16033  
 16034  	// The ARN of a device.
 16035  	//
 16036  	// DeviceArn is a required field
 16037  	DeviceArn *string `type:"string" required:"true"`
 16038  
 16039  	// The event type to filter device events. If EventType isn't specified, this
 16040  	// returns a list of all device events in reverse chronological order. If EventType
 16041  	// is specified, this returns a list of device events for that EventType in
 16042  	// reverse chronological order.
 16043  	EventType *string `type:"string" enum:"DeviceEventType"`
 16044  
 16045  	// The maximum number of results to include in the response. The default value
 16046  	// is 50. If more results exist than the specified MaxResults value, a token
 16047  	// is included in the response so that the remaining results can be retrieved.
 16048  	MaxResults *int64 `min:"1" type:"integer"`
 16049  
 16050  	// An optional token returned from a prior request. Use this token for pagination
 16051  	// of results from this action. If this parameter is specified, the response
 16052  	// only includes results beyond the token, up to the value specified by MaxResults.
 16053  	// When the end of results is reached, the response has a value of null.
 16054  	NextToken *string `min:"1" type:"string"`
 16055  }
 16056  
 16057  // String returns the string representation.
 16058  //
 16059  // API parameter values that are decorated as "sensitive" in the API will not
 16060  // be included in the string output. The member name will be present, but the
 16061  // value will be replaced with "sensitive".
 16062  func (s ListDeviceEventsInput) String() string {
 16063  	return awsutil.Prettify(s)
 16064  }
 16065  
 16066  // GoString returns the string representation.
 16067  //
 16068  // API parameter values that are decorated as "sensitive" in the API will not
 16069  // be included in the string output. The member name will be present, but the
 16070  // value will be replaced with "sensitive".
 16071  func (s ListDeviceEventsInput) GoString() string {
 16072  	return s.String()
 16073  }
 16074  
 16075  // Validate inspects the fields of the type to determine if they are valid.
 16076  func (s *ListDeviceEventsInput) Validate() error {
 16077  	invalidParams := request.ErrInvalidParams{Context: "ListDeviceEventsInput"}
 16078  	if s.DeviceArn == nil {
 16079  		invalidParams.Add(request.NewErrParamRequired("DeviceArn"))
 16080  	}
 16081  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16082  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16083  	}
 16084  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16085  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16086  	}
 16087  
 16088  	if invalidParams.Len() > 0 {
 16089  		return invalidParams
 16090  	}
 16091  	return nil
 16092  }
 16093  
 16094  // SetDeviceArn sets the DeviceArn field's value.
 16095  func (s *ListDeviceEventsInput) SetDeviceArn(v string) *ListDeviceEventsInput {
 16096  	s.DeviceArn = &v
 16097  	return s
 16098  }
 16099  
 16100  // SetEventType sets the EventType field's value.
 16101  func (s *ListDeviceEventsInput) SetEventType(v string) *ListDeviceEventsInput {
 16102  	s.EventType = &v
 16103  	return s
 16104  }
 16105  
 16106  // SetMaxResults sets the MaxResults field's value.
 16107  func (s *ListDeviceEventsInput) SetMaxResults(v int64) *ListDeviceEventsInput {
 16108  	s.MaxResults = &v
 16109  	return s
 16110  }
 16111  
 16112  // SetNextToken sets the NextToken field's value.
 16113  func (s *ListDeviceEventsInput) SetNextToken(v string) *ListDeviceEventsInput {
 16114  	s.NextToken = &v
 16115  	return s
 16116  }
 16117  
 16118  type ListDeviceEventsOutput struct {
 16119  	_ struct{} `type:"structure"`
 16120  
 16121  	// The device events requested for the device ARN.
 16122  	DeviceEvents []*DeviceEvent `type:"list"`
 16123  
 16124  	// The token returned to indicate that there is more data available.
 16125  	NextToken *string `min:"1" type:"string"`
 16126  }
 16127  
 16128  // String returns the string representation.
 16129  //
 16130  // API parameter values that are decorated as "sensitive" in the API will not
 16131  // be included in the string output. The member name will be present, but the
 16132  // value will be replaced with "sensitive".
 16133  func (s ListDeviceEventsOutput) String() string {
 16134  	return awsutil.Prettify(s)
 16135  }
 16136  
 16137  // GoString returns the string representation.
 16138  //
 16139  // API parameter values that are decorated as "sensitive" in the API will not
 16140  // be included in the string output. The member name will be present, but the
 16141  // value will be replaced with "sensitive".
 16142  func (s ListDeviceEventsOutput) GoString() string {
 16143  	return s.String()
 16144  }
 16145  
 16146  // SetDeviceEvents sets the DeviceEvents field's value.
 16147  func (s *ListDeviceEventsOutput) SetDeviceEvents(v []*DeviceEvent) *ListDeviceEventsOutput {
 16148  	s.DeviceEvents = v
 16149  	return s
 16150  }
 16151  
 16152  // SetNextToken sets the NextToken field's value.
 16153  func (s *ListDeviceEventsOutput) SetNextToken(v string) *ListDeviceEventsOutput {
 16154  	s.NextToken = &v
 16155  	return s
 16156  }
 16157  
 16158  type ListGatewayGroupsInput struct {
 16159  	_ struct{} `type:"structure"`
 16160  
 16161  	// The maximum number of gateway group summaries to return. The default is 50.
 16162  	MaxResults *int64 `min:"1" type:"integer"`
 16163  
 16164  	// The token used to paginate though multiple pages of gateway group summaries.
 16165  	NextToken *string `min:"1" type:"string"`
 16166  }
 16167  
 16168  // String returns the string representation.
 16169  //
 16170  // API parameter values that are decorated as "sensitive" in the API will not
 16171  // be included in the string output. The member name will be present, but the
 16172  // value will be replaced with "sensitive".
 16173  func (s ListGatewayGroupsInput) String() string {
 16174  	return awsutil.Prettify(s)
 16175  }
 16176  
 16177  // GoString returns the string representation.
 16178  //
 16179  // API parameter values that are decorated as "sensitive" in the API will not
 16180  // be included in the string output. The member name will be present, but the
 16181  // value will be replaced with "sensitive".
 16182  func (s ListGatewayGroupsInput) GoString() string {
 16183  	return s.String()
 16184  }
 16185  
 16186  // Validate inspects the fields of the type to determine if they are valid.
 16187  func (s *ListGatewayGroupsInput) Validate() error {
 16188  	invalidParams := request.ErrInvalidParams{Context: "ListGatewayGroupsInput"}
 16189  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16190  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16191  	}
 16192  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16193  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16194  	}
 16195  
 16196  	if invalidParams.Len() > 0 {
 16197  		return invalidParams
 16198  	}
 16199  	return nil
 16200  }
 16201  
 16202  // SetMaxResults sets the MaxResults field's value.
 16203  func (s *ListGatewayGroupsInput) SetMaxResults(v int64) *ListGatewayGroupsInput {
 16204  	s.MaxResults = &v
 16205  	return s
 16206  }
 16207  
 16208  // SetNextToken sets the NextToken field's value.
 16209  func (s *ListGatewayGroupsInput) SetNextToken(v string) *ListGatewayGroupsInput {
 16210  	s.NextToken = &v
 16211  	return s
 16212  }
 16213  
 16214  type ListGatewayGroupsOutput struct {
 16215  	_ struct{} `type:"structure"`
 16216  
 16217  	// The gateway groups in the list.
 16218  	GatewayGroups []*GatewayGroupSummary `type:"list"`
 16219  
 16220  	// The token used to paginate though multiple pages of gateway group summaries.
 16221  	NextToken *string `min:"1" type:"string"`
 16222  }
 16223  
 16224  // String returns the string representation.
 16225  //
 16226  // API parameter values that are decorated as "sensitive" in the API will not
 16227  // be included in the string output. The member name will be present, but the
 16228  // value will be replaced with "sensitive".
 16229  func (s ListGatewayGroupsOutput) String() string {
 16230  	return awsutil.Prettify(s)
 16231  }
 16232  
 16233  // GoString returns the string representation.
 16234  //
 16235  // API parameter values that are decorated as "sensitive" in the API will not
 16236  // be included in the string output. The member name will be present, but the
 16237  // value will be replaced with "sensitive".
 16238  func (s ListGatewayGroupsOutput) GoString() string {
 16239  	return s.String()
 16240  }
 16241  
 16242  // SetGatewayGroups sets the GatewayGroups field's value.
 16243  func (s *ListGatewayGroupsOutput) SetGatewayGroups(v []*GatewayGroupSummary) *ListGatewayGroupsOutput {
 16244  	s.GatewayGroups = v
 16245  	return s
 16246  }
 16247  
 16248  // SetNextToken sets the NextToken field's value.
 16249  func (s *ListGatewayGroupsOutput) SetNextToken(v string) *ListGatewayGroupsOutput {
 16250  	s.NextToken = &v
 16251  	return s
 16252  }
 16253  
 16254  type ListGatewaysInput struct {
 16255  	_ struct{} `type:"structure"`
 16256  
 16257  	// The gateway group ARN for which to list gateways.
 16258  	GatewayGroupArn *string `type:"string"`
 16259  
 16260  	// The maximum number of gateway summaries to return. The default is 50.
 16261  	MaxResults *int64 `min:"1" type:"integer"`
 16262  
 16263  	// The token used to paginate though multiple pages of gateway summaries.
 16264  	NextToken *string `min:"1" type:"string"`
 16265  }
 16266  
 16267  // String returns the string representation.
 16268  //
 16269  // API parameter values that are decorated as "sensitive" in the API will not
 16270  // be included in the string output. The member name will be present, but the
 16271  // value will be replaced with "sensitive".
 16272  func (s ListGatewaysInput) String() string {
 16273  	return awsutil.Prettify(s)
 16274  }
 16275  
 16276  // GoString returns the string representation.
 16277  //
 16278  // API parameter values that are decorated as "sensitive" in the API will not
 16279  // be included in the string output. The member name will be present, but the
 16280  // value will be replaced with "sensitive".
 16281  func (s ListGatewaysInput) GoString() string {
 16282  	return s.String()
 16283  }
 16284  
 16285  // Validate inspects the fields of the type to determine if they are valid.
 16286  func (s *ListGatewaysInput) Validate() error {
 16287  	invalidParams := request.ErrInvalidParams{Context: "ListGatewaysInput"}
 16288  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16289  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16290  	}
 16291  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16292  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16293  	}
 16294  
 16295  	if invalidParams.Len() > 0 {
 16296  		return invalidParams
 16297  	}
 16298  	return nil
 16299  }
 16300  
 16301  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 16302  func (s *ListGatewaysInput) SetGatewayGroupArn(v string) *ListGatewaysInput {
 16303  	s.GatewayGroupArn = &v
 16304  	return s
 16305  }
 16306  
 16307  // SetMaxResults sets the MaxResults field's value.
 16308  func (s *ListGatewaysInput) SetMaxResults(v int64) *ListGatewaysInput {
 16309  	s.MaxResults = &v
 16310  	return s
 16311  }
 16312  
 16313  // SetNextToken sets the NextToken field's value.
 16314  func (s *ListGatewaysInput) SetNextToken(v string) *ListGatewaysInput {
 16315  	s.NextToken = &v
 16316  	return s
 16317  }
 16318  
 16319  type ListGatewaysOutput struct {
 16320  	_ struct{} `type:"structure"`
 16321  
 16322  	// The gateways in the list.
 16323  	Gateways []*GatewaySummary `type:"list"`
 16324  
 16325  	// The token used to paginate though multiple pages of gateway summaries.
 16326  	NextToken *string `min:"1" type:"string"`
 16327  }
 16328  
 16329  // String returns the string representation.
 16330  //
 16331  // API parameter values that are decorated as "sensitive" in the API will not
 16332  // be included in the string output. The member name will be present, but the
 16333  // value will be replaced with "sensitive".
 16334  func (s ListGatewaysOutput) String() string {
 16335  	return awsutil.Prettify(s)
 16336  }
 16337  
 16338  // GoString returns the string representation.
 16339  //
 16340  // API parameter values that are decorated as "sensitive" in the API will not
 16341  // be included in the string output. The member name will be present, but the
 16342  // value will be replaced with "sensitive".
 16343  func (s ListGatewaysOutput) GoString() string {
 16344  	return s.String()
 16345  }
 16346  
 16347  // SetGateways sets the Gateways field's value.
 16348  func (s *ListGatewaysOutput) SetGateways(v []*GatewaySummary) *ListGatewaysOutput {
 16349  	s.Gateways = v
 16350  	return s
 16351  }
 16352  
 16353  // SetNextToken sets the NextToken field's value.
 16354  func (s *ListGatewaysOutput) SetNextToken(v string) *ListGatewaysOutput {
 16355  	s.NextToken = &v
 16356  	return s
 16357  }
 16358  
 16359  type ListSkillsInput struct {
 16360  	_ struct{} `type:"structure"`
 16361  
 16362  	// Whether the skill is enabled under the user's account.
 16363  	EnablementType *string `type:"string" enum:"EnablementTypeFilter"`
 16364  
 16365  	// The maximum number of results to include in the response. If more results
 16366  	// exist than the specified MaxResults value, a token is included in the response
 16367  	// so that the remaining results can be retrieved.
 16368  	MaxResults *int64 `min:"1" type:"integer"`
 16369  
 16370  	// An optional token returned from a prior request. Use this token for pagination
 16371  	// of results from this action. If this parameter is specified, the response
 16372  	// includes only results beyond the token, up to the value specified by MaxResults.
 16373  	NextToken *string `min:"1" type:"string"`
 16374  
 16375  	// The ARN of the skill group for which to list enabled skills.
 16376  	SkillGroupArn *string `type:"string"`
 16377  
 16378  	// Whether the skill is publicly available or is a private skill.
 16379  	SkillType *string `type:"string" enum:"SkillTypeFilter"`
 16380  }
 16381  
 16382  // String returns the string representation.
 16383  //
 16384  // API parameter values that are decorated as "sensitive" in the API will not
 16385  // be included in the string output. The member name will be present, but the
 16386  // value will be replaced with "sensitive".
 16387  func (s ListSkillsInput) String() string {
 16388  	return awsutil.Prettify(s)
 16389  }
 16390  
 16391  // GoString returns the string representation.
 16392  //
 16393  // API parameter values that are decorated as "sensitive" in the API will not
 16394  // be included in the string output. The member name will be present, but the
 16395  // value will be replaced with "sensitive".
 16396  func (s ListSkillsInput) GoString() string {
 16397  	return s.String()
 16398  }
 16399  
 16400  // Validate inspects the fields of the type to determine if they are valid.
 16401  func (s *ListSkillsInput) Validate() error {
 16402  	invalidParams := request.ErrInvalidParams{Context: "ListSkillsInput"}
 16403  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16404  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16405  	}
 16406  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16407  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16408  	}
 16409  
 16410  	if invalidParams.Len() > 0 {
 16411  		return invalidParams
 16412  	}
 16413  	return nil
 16414  }
 16415  
 16416  // SetEnablementType sets the EnablementType field's value.
 16417  func (s *ListSkillsInput) SetEnablementType(v string) *ListSkillsInput {
 16418  	s.EnablementType = &v
 16419  	return s
 16420  }
 16421  
 16422  // SetMaxResults sets the MaxResults field's value.
 16423  func (s *ListSkillsInput) SetMaxResults(v int64) *ListSkillsInput {
 16424  	s.MaxResults = &v
 16425  	return s
 16426  }
 16427  
 16428  // SetNextToken sets the NextToken field's value.
 16429  func (s *ListSkillsInput) SetNextToken(v string) *ListSkillsInput {
 16430  	s.NextToken = &v
 16431  	return s
 16432  }
 16433  
 16434  // SetSkillGroupArn sets the SkillGroupArn field's value.
 16435  func (s *ListSkillsInput) SetSkillGroupArn(v string) *ListSkillsInput {
 16436  	s.SkillGroupArn = &v
 16437  	return s
 16438  }
 16439  
 16440  // SetSkillType sets the SkillType field's value.
 16441  func (s *ListSkillsInput) SetSkillType(v string) *ListSkillsInput {
 16442  	s.SkillType = &v
 16443  	return s
 16444  }
 16445  
 16446  type ListSkillsOutput struct {
 16447  	_ struct{} `type:"structure"`
 16448  
 16449  	// The token returned to indicate that there is more data available.
 16450  	NextToken *string `min:"1" type:"string"`
 16451  
 16452  	// The list of enabled skills requested. Required.
 16453  	SkillSummaries []*SkillSummary `type:"list"`
 16454  }
 16455  
 16456  // String returns the string representation.
 16457  //
 16458  // API parameter values that are decorated as "sensitive" in the API will not
 16459  // be included in the string output. The member name will be present, but the
 16460  // value will be replaced with "sensitive".
 16461  func (s ListSkillsOutput) String() string {
 16462  	return awsutil.Prettify(s)
 16463  }
 16464  
 16465  // GoString returns the string representation.
 16466  //
 16467  // API parameter values that are decorated as "sensitive" in the API will not
 16468  // be included in the string output. The member name will be present, but the
 16469  // value will be replaced with "sensitive".
 16470  func (s ListSkillsOutput) GoString() string {
 16471  	return s.String()
 16472  }
 16473  
 16474  // SetNextToken sets the NextToken field's value.
 16475  func (s *ListSkillsOutput) SetNextToken(v string) *ListSkillsOutput {
 16476  	s.NextToken = &v
 16477  	return s
 16478  }
 16479  
 16480  // SetSkillSummaries sets the SkillSummaries field's value.
 16481  func (s *ListSkillsOutput) SetSkillSummaries(v []*SkillSummary) *ListSkillsOutput {
 16482  	s.SkillSummaries = v
 16483  	return s
 16484  }
 16485  
 16486  type ListSkillsStoreCategoriesInput struct {
 16487  	_ struct{} `type:"structure"`
 16488  
 16489  	// The maximum number of categories returned, per paginated calls.
 16490  	MaxResults *int64 `min:"1" type:"integer"`
 16491  
 16492  	// The tokens used for pagination.
 16493  	NextToken *string `min:"1" type:"string"`
 16494  }
 16495  
 16496  // String returns the string representation.
 16497  //
 16498  // API parameter values that are decorated as "sensitive" in the API will not
 16499  // be included in the string output. The member name will be present, but the
 16500  // value will be replaced with "sensitive".
 16501  func (s ListSkillsStoreCategoriesInput) String() string {
 16502  	return awsutil.Prettify(s)
 16503  }
 16504  
 16505  // GoString returns the string representation.
 16506  //
 16507  // API parameter values that are decorated as "sensitive" in the API will not
 16508  // be included in the string output. The member name will be present, but the
 16509  // value will be replaced with "sensitive".
 16510  func (s ListSkillsStoreCategoriesInput) GoString() string {
 16511  	return s.String()
 16512  }
 16513  
 16514  // Validate inspects the fields of the type to determine if they are valid.
 16515  func (s *ListSkillsStoreCategoriesInput) Validate() error {
 16516  	invalidParams := request.ErrInvalidParams{Context: "ListSkillsStoreCategoriesInput"}
 16517  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16518  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16519  	}
 16520  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16521  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16522  	}
 16523  
 16524  	if invalidParams.Len() > 0 {
 16525  		return invalidParams
 16526  	}
 16527  	return nil
 16528  }
 16529  
 16530  // SetMaxResults sets the MaxResults field's value.
 16531  func (s *ListSkillsStoreCategoriesInput) SetMaxResults(v int64) *ListSkillsStoreCategoriesInput {
 16532  	s.MaxResults = &v
 16533  	return s
 16534  }
 16535  
 16536  // SetNextToken sets the NextToken field's value.
 16537  func (s *ListSkillsStoreCategoriesInput) SetNextToken(v string) *ListSkillsStoreCategoriesInput {
 16538  	s.NextToken = &v
 16539  	return s
 16540  }
 16541  
 16542  type ListSkillsStoreCategoriesOutput struct {
 16543  	_ struct{} `type:"structure"`
 16544  
 16545  	// The list of categories.
 16546  	CategoryList []*Category `type:"list"`
 16547  
 16548  	// The tokens used for pagination.
 16549  	NextToken *string `min:"1" type:"string"`
 16550  }
 16551  
 16552  // String returns the string representation.
 16553  //
 16554  // API parameter values that are decorated as "sensitive" in the API will not
 16555  // be included in the string output. The member name will be present, but the
 16556  // value will be replaced with "sensitive".
 16557  func (s ListSkillsStoreCategoriesOutput) String() string {
 16558  	return awsutil.Prettify(s)
 16559  }
 16560  
 16561  // GoString returns the string representation.
 16562  //
 16563  // API parameter values that are decorated as "sensitive" in the API will not
 16564  // be included in the string output. The member name will be present, but the
 16565  // value will be replaced with "sensitive".
 16566  func (s ListSkillsStoreCategoriesOutput) GoString() string {
 16567  	return s.String()
 16568  }
 16569  
 16570  // SetCategoryList sets the CategoryList field's value.
 16571  func (s *ListSkillsStoreCategoriesOutput) SetCategoryList(v []*Category) *ListSkillsStoreCategoriesOutput {
 16572  	s.CategoryList = v
 16573  	return s
 16574  }
 16575  
 16576  // SetNextToken sets the NextToken field's value.
 16577  func (s *ListSkillsStoreCategoriesOutput) SetNextToken(v string) *ListSkillsStoreCategoriesOutput {
 16578  	s.NextToken = &v
 16579  	return s
 16580  }
 16581  
 16582  type ListSkillsStoreSkillsByCategoryInput struct {
 16583  	_ struct{} `type:"structure"`
 16584  
 16585  	// The category ID for which the skills are being retrieved from the skill store.
 16586  	//
 16587  	// CategoryId is a required field
 16588  	CategoryId *int64 `min:"1" type:"long" required:"true"`
 16589  
 16590  	// The maximum number of skills returned per paginated calls.
 16591  	MaxResults *int64 `min:"1" type:"integer"`
 16592  
 16593  	// The tokens used for pagination.
 16594  	NextToken *string `min:"1" type:"string"`
 16595  }
 16596  
 16597  // String returns the string representation.
 16598  //
 16599  // API parameter values that are decorated as "sensitive" in the API will not
 16600  // be included in the string output. The member name will be present, but the
 16601  // value will be replaced with "sensitive".
 16602  func (s ListSkillsStoreSkillsByCategoryInput) String() string {
 16603  	return awsutil.Prettify(s)
 16604  }
 16605  
 16606  // GoString returns the string representation.
 16607  //
 16608  // API parameter values that are decorated as "sensitive" in the API will not
 16609  // be included in the string output. The member name will be present, but the
 16610  // value will be replaced with "sensitive".
 16611  func (s ListSkillsStoreSkillsByCategoryInput) GoString() string {
 16612  	return s.String()
 16613  }
 16614  
 16615  // Validate inspects the fields of the type to determine if they are valid.
 16616  func (s *ListSkillsStoreSkillsByCategoryInput) Validate() error {
 16617  	invalidParams := request.ErrInvalidParams{Context: "ListSkillsStoreSkillsByCategoryInput"}
 16618  	if s.CategoryId == nil {
 16619  		invalidParams.Add(request.NewErrParamRequired("CategoryId"))
 16620  	}
 16621  	if s.CategoryId != nil && *s.CategoryId < 1 {
 16622  		invalidParams.Add(request.NewErrParamMinValue("CategoryId", 1))
 16623  	}
 16624  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16625  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16626  	}
 16627  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16628  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16629  	}
 16630  
 16631  	if invalidParams.Len() > 0 {
 16632  		return invalidParams
 16633  	}
 16634  	return nil
 16635  }
 16636  
 16637  // SetCategoryId sets the CategoryId field's value.
 16638  func (s *ListSkillsStoreSkillsByCategoryInput) SetCategoryId(v int64) *ListSkillsStoreSkillsByCategoryInput {
 16639  	s.CategoryId = &v
 16640  	return s
 16641  }
 16642  
 16643  // SetMaxResults sets the MaxResults field's value.
 16644  func (s *ListSkillsStoreSkillsByCategoryInput) SetMaxResults(v int64) *ListSkillsStoreSkillsByCategoryInput {
 16645  	s.MaxResults = &v
 16646  	return s
 16647  }
 16648  
 16649  // SetNextToken sets the NextToken field's value.
 16650  func (s *ListSkillsStoreSkillsByCategoryInput) SetNextToken(v string) *ListSkillsStoreSkillsByCategoryInput {
 16651  	s.NextToken = &v
 16652  	return s
 16653  }
 16654  
 16655  type ListSkillsStoreSkillsByCategoryOutput struct {
 16656  	_ struct{} `type:"structure"`
 16657  
 16658  	// The tokens used for pagination.
 16659  	NextToken *string `min:"1" type:"string"`
 16660  
 16661  	// The skill store skills.
 16662  	SkillsStoreSkills []*SkillsStoreSkill `type:"list"`
 16663  }
 16664  
 16665  // String returns the string representation.
 16666  //
 16667  // API parameter values that are decorated as "sensitive" in the API will not
 16668  // be included in the string output. The member name will be present, but the
 16669  // value will be replaced with "sensitive".
 16670  func (s ListSkillsStoreSkillsByCategoryOutput) String() string {
 16671  	return awsutil.Prettify(s)
 16672  }
 16673  
 16674  // GoString returns the string representation.
 16675  //
 16676  // API parameter values that are decorated as "sensitive" in the API will not
 16677  // be included in the string output. The member name will be present, but the
 16678  // value will be replaced with "sensitive".
 16679  func (s ListSkillsStoreSkillsByCategoryOutput) GoString() string {
 16680  	return s.String()
 16681  }
 16682  
 16683  // SetNextToken sets the NextToken field's value.
 16684  func (s *ListSkillsStoreSkillsByCategoryOutput) SetNextToken(v string) *ListSkillsStoreSkillsByCategoryOutput {
 16685  	s.NextToken = &v
 16686  	return s
 16687  }
 16688  
 16689  // SetSkillsStoreSkills sets the SkillsStoreSkills field's value.
 16690  func (s *ListSkillsStoreSkillsByCategoryOutput) SetSkillsStoreSkills(v []*SkillsStoreSkill) *ListSkillsStoreSkillsByCategoryOutput {
 16691  	s.SkillsStoreSkills = v
 16692  	return s
 16693  }
 16694  
 16695  type ListSmartHomeAppliancesInput struct {
 16696  	_ struct{} `type:"structure"`
 16697  
 16698  	// The maximum number of appliances to be returned, per paginated calls.
 16699  	MaxResults *int64 `min:"1" type:"integer"`
 16700  
 16701  	// The tokens used for pagination.
 16702  	NextToken *string `min:"1" type:"string"`
 16703  
 16704  	// The room that the appliances are associated with.
 16705  	//
 16706  	// RoomArn is a required field
 16707  	RoomArn *string `type:"string" required:"true"`
 16708  }
 16709  
 16710  // String returns the string representation.
 16711  //
 16712  // API parameter values that are decorated as "sensitive" in the API will not
 16713  // be included in the string output. The member name will be present, but the
 16714  // value will be replaced with "sensitive".
 16715  func (s ListSmartHomeAppliancesInput) String() string {
 16716  	return awsutil.Prettify(s)
 16717  }
 16718  
 16719  // GoString returns the string representation.
 16720  //
 16721  // API parameter values that are decorated as "sensitive" in the API will not
 16722  // be included in the string output. The member name will be present, but the
 16723  // value will be replaced with "sensitive".
 16724  func (s ListSmartHomeAppliancesInput) GoString() string {
 16725  	return s.String()
 16726  }
 16727  
 16728  // Validate inspects the fields of the type to determine if they are valid.
 16729  func (s *ListSmartHomeAppliancesInput) Validate() error {
 16730  	invalidParams := request.ErrInvalidParams{Context: "ListSmartHomeAppliancesInput"}
 16731  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16732  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16733  	}
 16734  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16735  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16736  	}
 16737  	if s.RoomArn == nil {
 16738  		invalidParams.Add(request.NewErrParamRequired("RoomArn"))
 16739  	}
 16740  
 16741  	if invalidParams.Len() > 0 {
 16742  		return invalidParams
 16743  	}
 16744  	return nil
 16745  }
 16746  
 16747  // SetMaxResults sets the MaxResults field's value.
 16748  func (s *ListSmartHomeAppliancesInput) SetMaxResults(v int64) *ListSmartHomeAppliancesInput {
 16749  	s.MaxResults = &v
 16750  	return s
 16751  }
 16752  
 16753  // SetNextToken sets the NextToken field's value.
 16754  func (s *ListSmartHomeAppliancesInput) SetNextToken(v string) *ListSmartHomeAppliancesInput {
 16755  	s.NextToken = &v
 16756  	return s
 16757  }
 16758  
 16759  // SetRoomArn sets the RoomArn field's value.
 16760  func (s *ListSmartHomeAppliancesInput) SetRoomArn(v string) *ListSmartHomeAppliancesInput {
 16761  	s.RoomArn = &v
 16762  	return s
 16763  }
 16764  
 16765  type ListSmartHomeAppliancesOutput struct {
 16766  	_ struct{} `type:"structure"`
 16767  
 16768  	// The tokens used for pagination.
 16769  	NextToken *string `min:"1" type:"string"`
 16770  
 16771  	// The smart home appliances.
 16772  	SmartHomeAppliances []*SmartHomeAppliance `type:"list"`
 16773  }
 16774  
 16775  // String returns the string representation.
 16776  //
 16777  // API parameter values that are decorated as "sensitive" in the API will not
 16778  // be included in the string output. The member name will be present, but the
 16779  // value will be replaced with "sensitive".
 16780  func (s ListSmartHomeAppliancesOutput) String() string {
 16781  	return awsutil.Prettify(s)
 16782  }
 16783  
 16784  // GoString returns the string representation.
 16785  //
 16786  // API parameter values that are decorated as "sensitive" in the API will not
 16787  // be included in the string output. The member name will be present, but the
 16788  // value will be replaced with "sensitive".
 16789  func (s ListSmartHomeAppliancesOutput) GoString() string {
 16790  	return s.String()
 16791  }
 16792  
 16793  // SetNextToken sets the NextToken field's value.
 16794  func (s *ListSmartHomeAppliancesOutput) SetNextToken(v string) *ListSmartHomeAppliancesOutput {
 16795  	s.NextToken = &v
 16796  	return s
 16797  }
 16798  
 16799  // SetSmartHomeAppliances sets the SmartHomeAppliances field's value.
 16800  func (s *ListSmartHomeAppliancesOutput) SetSmartHomeAppliances(v []*SmartHomeAppliance) *ListSmartHomeAppliancesOutput {
 16801  	s.SmartHomeAppliances = v
 16802  	return s
 16803  }
 16804  
 16805  type ListTagsInput struct {
 16806  	_ struct{} `type:"structure"`
 16807  
 16808  	// The ARN of the specified resource for which to list tags.
 16809  	//
 16810  	// Arn is a required field
 16811  	Arn *string `type:"string" required:"true"`
 16812  
 16813  	// The maximum number of results to include in the response. If more results
 16814  	// exist than the specified MaxResults value, a token is included in the response
 16815  	// so that the remaining results can be retrieved.
 16816  	MaxResults *int64 `min:"1" type:"integer"`
 16817  
 16818  	// An optional token returned from a prior request. Use this token for pagination
 16819  	// of results from this action. If this parameter is specified, the response
 16820  	// includes only results beyond the token, up to the value specified by MaxResults.
 16821  	NextToken *string `min:"1" type:"string"`
 16822  }
 16823  
 16824  // String returns the string representation.
 16825  //
 16826  // API parameter values that are decorated as "sensitive" in the API will not
 16827  // be included in the string output. The member name will be present, but the
 16828  // value will be replaced with "sensitive".
 16829  func (s ListTagsInput) String() string {
 16830  	return awsutil.Prettify(s)
 16831  }
 16832  
 16833  // GoString returns the string representation.
 16834  //
 16835  // API parameter values that are decorated as "sensitive" in the API will not
 16836  // be included in the string output. The member name will be present, but the
 16837  // value will be replaced with "sensitive".
 16838  func (s ListTagsInput) GoString() string {
 16839  	return s.String()
 16840  }
 16841  
 16842  // Validate inspects the fields of the type to determine if they are valid.
 16843  func (s *ListTagsInput) Validate() error {
 16844  	invalidParams := request.ErrInvalidParams{Context: "ListTagsInput"}
 16845  	if s.Arn == nil {
 16846  		invalidParams.Add(request.NewErrParamRequired("Arn"))
 16847  	}
 16848  	if s.MaxResults != nil && *s.MaxResults < 1 {
 16849  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 16850  	}
 16851  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 16852  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 16853  	}
 16854  
 16855  	if invalidParams.Len() > 0 {
 16856  		return invalidParams
 16857  	}
 16858  	return nil
 16859  }
 16860  
 16861  // SetArn sets the Arn field's value.
 16862  func (s *ListTagsInput) SetArn(v string) *ListTagsInput {
 16863  	s.Arn = &v
 16864  	return s
 16865  }
 16866  
 16867  // SetMaxResults sets the MaxResults field's value.
 16868  func (s *ListTagsInput) SetMaxResults(v int64) *ListTagsInput {
 16869  	s.MaxResults = &v
 16870  	return s
 16871  }
 16872  
 16873  // SetNextToken sets the NextToken field's value.
 16874  func (s *ListTagsInput) SetNextToken(v string) *ListTagsInput {
 16875  	s.NextToken = &v
 16876  	return s
 16877  }
 16878  
 16879  type ListTagsOutput struct {
 16880  	_ struct{} `type:"structure"`
 16881  
 16882  	// The token returned to indicate that there is more data available.
 16883  	NextToken *string `min:"1" type:"string"`
 16884  
 16885  	// The tags requested for the specified resource.
 16886  	Tags []*Tag `type:"list"`
 16887  }
 16888  
 16889  // String returns the string representation.
 16890  //
 16891  // API parameter values that are decorated as "sensitive" in the API will not
 16892  // be included in the string output. The member name will be present, but the
 16893  // value will be replaced with "sensitive".
 16894  func (s ListTagsOutput) String() string {
 16895  	return awsutil.Prettify(s)
 16896  }
 16897  
 16898  // GoString returns the string representation.
 16899  //
 16900  // API parameter values that are decorated as "sensitive" in the API will not
 16901  // be included in the string output. The member name will be present, but the
 16902  // value will be replaced with "sensitive".
 16903  func (s ListTagsOutput) GoString() string {
 16904  	return s.String()
 16905  }
 16906  
 16907  // SetNextToken sets the NextToken field's value.
 16908  func (s *ListTagsOutput) SetNextToken(v string) *ListTagsOutput {
 16909  	s.NextToken = &v
 16910  	return s
 16911  }
 16912  
 16913  // SetTags sets the Tags field's value.
 16914  func (s *ListTagsOutput) SetTags(v []*Tag) *ListTagsOutput {
 16915  	s.Tags = v
 16916  	return s
 16917  }
 16918  
 16919  // Meeting room settings of a room profile.
 16920  type MeetingRoomConfiguration struct {
 16921  	_ struct{} `type:"structure"`
 16922  
 16923  	// Settings for the end of meeting reminder feature that are applied to a room
 16924  	// profile. The end of meeting reminder enables Alexa to remind users when a
 16925  	// meeting is ending.
 16926  	EndOfMeetingReminder *EndOfMeetingReminder `type:"structure"`
 16927  
 16928  	// Settings to automatically book the room if available for a configured duration
 16929  	// when joining a meeting with Alexa.
 16930  	InstantBooking *InstantBooking `type:"structure"`
 16931  
 16932  	// Settings for requiring a check in when a room is reserved. Alexa can cancel
 16933  	// a room reservation if it's not checked into. This makes the room available
 16934  	// for others. Users can check in by joining the meeting with Alexa or an AVS
 16935  	// device, or by saying “Alexa, check in.”
 16936  	RequireCheckIn *RequireCheckIn `type:"structure"`
 16937  
 16938  	// Whether room utilization metrics are enabled or not.
 16939  	RoomUtilizationMetricsEnabled *bool `type:"boolean"`
 16940  }
 16941  
 16942  // String returns the string representation.
 16943  //
 16944  // API parameter values that are decorated as "sensitive" in the API will not
 16945  // be included in the string output. The member name will be present, but the
 16946  // value will be replaced with "sensitive".
 16947  func (s MeetingRoomConfiguration) String() string {
 16948  	return awsutil.Prettify(s)
 16949  }
 16950  
 16951  // GoString returns the string representation.
 16952  //
 16953  // API parameter values that are decorated as "sensitive" in the API will not
 16954  // be included in the string output. The member name will be present, but the
 16955  // value will be replaced with "sensitive".
 16956  func (s MeetingRoomConfiguration) GoString() string {
 16957  	return s.String()
 16958  }
 16959  
 16960  // SetEndOfMeetingReminder sets the EndOfMeetingReminder field's value.
 16961  func (s *MeetingRoomConfiguration) SetEndOfMeetingReminder(v *EndOfMeetingReminder) *MeetingRoomConfiguration {
 16962  	s.EndOfMeetingReminder = v
 16963  	return s
 16964  }
 16965  
 16966  // SetInstantBooking sets the InstantBooking field's value.
 16967  func (s *MeetingRoomConfiguration) SetInstantBooking(v *InstantBooking) *MeetingRoomConfiguration {
 16968  	s.InstantBooking = v
 16969  	return s
 16970  }
 16971  
 16972  // SetRequireCheckIn sets the RequireCheckIn field's value.
 16973  func (s *MeetingRoomConfiguration) SetRequireCheckIn(v *RequireCheckIn) *MeetingRoomConfiguration {
 16974  	s.RequireCheckIn = v
 16975  	return s
 16976  }
 16977  
 16978  // SetRoomUtilizationMetricsEnabled sets the RoomUtilizationMetricsEnabled field's value.
 16979  func (s *MeetingRoomConfiguration) SetRoomUtilizationMetricsEnabled(v bool) *MeetingRoomConfiguration {
 16980  	s.RoomUtilizationMetricsEnabled = &v
 16981  	return s
 16982  }
 16983  
 16984  // The values that indicate whether a pin is always required (YES), never required
 16985  // (NO), or OPTIONAL.
 16986  //
 16987  //    * If YES, Alexa will always ask for a meeting pin.
 16988  //
 16989  //    * If NO, Alexa will never ask for a meeting pin.
 16990  //
 16991  //    * If OPTIONAL, Alexa will ask if you have a meeting pin and if the customer
 16992  //    responds with yes, it will ask for the meeting pin.
 16993  type MeetingSetting struct {
 16994  	_ struct{} `type:"structure"`
 16995  
 16996  	// The values that indicate whether the pin is always required.
 16997  	//
 16998  	// RequirePin is a required field
 16999  	RequirePin *string `type:"string" required:"true" enum:"RequirePin"`
 17000  }
 17001  
 17002  // String returns the string representation.
 17003  //
 17004  // API parameter values that are decorated as "sensitive" in the API will not
 17005  // be included in the string output. The member name will be present, but the
 17006  // value will be replaced with "sensitive".
 17007  func (s MeetingSetting) String() string {
 17008  	return awsutil.Prettify(s)
 17009  }
 17010  
 17011  // GoString returns the string representation.
 17012  //
 17013  // API parameter values that are decorated as "sensitive" in the API will not
 17014  // be included in the string output. The member name will be present, but the
 17015  // value will be replaced with "sensitive".
 17016  func (s MeetingSetting) GoString() string {
 17017  	return s.String()
 17018  }
 17019  
 17020  // Validate inspects the fields of the type to determine if they are valid.
 17021  func (s *MeetingSetting) Validate() error {
 17022  	invalidParams := request.ErrInvalidParams{Context: "MeetingSetting"}
 17023  	if s.RequirePin == nil {
 17024  		invalidParams.Add(request.NewErrParamRequired("RequirePin"))
 17025  	}
 17026  
 17027  	if invalidParams.Len() > 0 {
 17028  		return invalidParams
 17029  	}
 17030  	return nil
 17031  }
 17032  
 17033  // SetRequirePin sets the RequirePin field's value.
 17034  func (s *MeetingSetting) SetRequirePin(v string) *MeetingSetting {
 17035  	s.RequirePin = &v
 17036  	return s
 17037  }
 17038  
 17039  // The name sent in the request is already in use.
 17040  type NameInUseException struct {
 17041  	_            struct{}                  `type:"structure"`
 17042  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17043  
 17044  	Message_ *string `locationName:"Message" type:"string"`
 17045  }
 17046  
 17047  // String returns the string representation.
 17048  //
 17049  // API parameter values that are decorated as "sensitive" in the API will not
 17050  // be included in the string output. The member name will be present, but the
 17051  // value will be replaced with "sensitive".
 17052  func (s NameInUseException) String() string {
 17053  	return awsutil.Prettify(s)
 17054  }
 17055  
 17056  // GoString returns the string representation.
 17057  //
 17058  // API parameter values that are decorated as "sensitive" in the API will not
 17059  // be included in the string output. The member name will be present, but the
 17060  // value will be replaced with "sensitive".
 17061  func (s NameInUseException) GoString() string {
 17062  	return s.String()
 17063  }
 17064  
 17065  func newErrorNameInUseException(v protocol.ResponseMetadata) error {
 17066  	return &NameInUseException{
 17067  		RespMetadata: v,
 17068  	}
 17069  }
 17070  
 17071  // Code returns the exception type name.
 17072  func (s *NameInUseException) Code() string {
 17073  	return "NameInUseException"
 17074  }
 17075  
 17076  // Message returns the exception's message.
 17077  func (s *NameInUseException) Message() string {
 17078  	if s.Message_ != nil {
 17079  		return *s.Message_
 17080  	}
 17081  	return ""
 17082  }
 17083  
 17084  // OrigErr always returns nil, satisfies awserr.Error interface.
 17085  func (s *NameInUseException) OrigErr() error {
 17086  	return nil
 17087  }
 17088  
 17089  func (s *NameInUseException) Error() string {
 17090  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17091  }
 17092  
 17093  // Status code returns the HTTP status code for the request's response error.
 17094  func (s *NameInUseException) StatusCode() int {
 17095  	return s.RespMetadata.StatusCode
 17096  }
 17097  
 17098  // RequestID returns the service's response RequestID for request.
 17099  func (s *NameInUseException) RequestID() string {
 17100  	return s.RespMetadata.RequestID
 17101  }
 17102  
 17103  // The network profile associated with a device.
 17104  type NetworkProfile struct {
 17105  	_ struct{} `type:"structure"`
 17106  
 17107  	// The ARN of the Private Certificate Authority (PCA) created in AWS Certificate
 17108  	// Manager (ACM). This is used to issue certificates to the devices.
 17109  	CertificateAuthorityArn *string `type:"string"`
 17110  
 17111  	// The current password of the Wi-Fi network.
 17112  	//
 17113  	// CurrentPassword is a sensitive parameter and its value will be
 17114  	// replaced with "sensitive" in string returned by NetworkProfile's
 17115  	// String and GoString methods.
 17116  	CurrentPassword *string `min:"5" type:"string" sensitive:"true"`
 17117  
 17118  	// Detailed information about a device's network profile.
 17119  	Description *string `type:"string"`
 17120  
 17121  	// The authentication standard that is used in the EAP framework. Currently,
 17122  	// EAP_TLS is supported.
 17123  	EapMethod *string `type:"string" enum:"NetworkEapMethod"`
 17124  
 17125  	// The ARN of the network profile associated with a device.
 17126  	NetworkProfileArn *string `type:"string"`
 17127  
 17128  	// The name of the network profile associated with a device.
 17129  	NetworkProfileName *string `min:"1" type:"string"`
 17130  
 17131  	// The next, or subsequent, password of the Wi-Fi network. This password is
 17132  	// asynchronously transmitted to the device and is used when the password of
 17133  	// the network changes to NextPassword.
 17134  	//
 17135  	// NextPassword is a sensitive parameter and its value will be
 17136  	// replaced with "sensitive" in string returned by NetworkProfile's
 17137  	// String and GoString methods.
 17138  	NextPassword *string `type:"string" sensitive:"true"`
 17139  
 17140  	// The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK,
 17141  	// WPA_PSK, WEP, or OPEN.
 17142  	SecurityType *string `type:"string" enum:"NetworkSecurityType"`
 17143  
 17144  	// The SSID of the Wi-Fi network.
 17145  	Ssid *string `min:"1" type:"string"`
 17146  
 17147  	// The root certificates of your authentication server, which is installed on
 17148  	// your devices and used to trust your authentication server during EAP negotiation.
 17149  	TrustAnchors []*string `min:"1" type:"list"`
 17150  }
 17151  
 17152  // String returns the string representation.
 17153  //
 17154  // API parameter values that are decorated as "sensitive" in the API will not
 17155  // be included in the string output. The member name will be present, but the
 17156  // value will be replaced with "sensitive".
 17157  func (s NetworkProfile) String() string {
 17158  	return awsutil.Prettify(s)
 17159  }
 17160  
 17161  // GoString returns the string representation.
 17162  //
 17163  // API parameter values that are decorated as "sensitive" in the API will not
 17164  // be included in the string output. The member name will be present, but the
 17165  // value will be replaced with "sensitive".
 17166  func (s NetworkProfile) GoString() string {
 17167  	return s.String()
 17168  }
 17169  
 17170  // SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value.
 17171  func (s *NetworkProfile) SetCertificateAuthorityArn(v string) *NetworkProfile {
 17172  	s.CertificateAuthorityArn = &v
 17173  	return s
 17174  }
 17175  
 17176  // SetCurrentPassword sets the CurrentPassword field's value.
 17177  func (s *NetworkProfile) SetCurrentPassword(v string) *NetworkProfile {
 17178  	s.CurrentPassword = &v
 17179  	return s
 17180  }
 17181  
 17182  // SetDescription sets the Description field's value.
 17183  func (s *NetworkProfile) SetDescription(v string) *NetworkProfile {
 17184  	s.Description = &v
 17185  	return s
 17186  }
 17187  
 17188  // SetEapMethod sets the EapMethod field's value.
 17189  func (s *NetworkProfile) SetEapMethod(v string) *NetworkProfile {
 17190  	s.EapMethod = &v
 17191  	return s
 17192  }
 17193  
 17194  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 17195  func (s *NetworkProfile) SetNetworkProfileArn(v string) *NetworkProfile {
 17196  	s.NetworkProfileArn = &v
 17197  	return s
 17198  }
 17199  
 17200  // SetNetworkProfileName sets the NetworkProfileName field's value.
 17201  func (s *NetworkProfile) SetNetworkProfileName(v string) *NetworkProfile {
 17202  	s.NetworkProfileName = &v
 17203  	return s
 17204  }
 17205  
 17206  // SetNextPassword sets the NextPassword field's value.
 17207  func (s *NetworkProfile) SetNextPassword(v string) *NetworkProfile {
 17208  	s.NextPassword = &v
 17209  	return s
 17210  }
 17211  
 17212  // SetSecurityType sets the SecurityType field's value.
 17213  func (s *NetworkProfile) SetSecurityType(v string) *NetworkProfile {
 17214  	s.SecurityType = &v
 17215  	return s
 17216  }
 17217  
 17218  // SetSsid sets the Ssid field's value.
 17219  func (s *NetworkProfile) SetSsid(v string) *NetworkProfile {
 17220  	s.Ssid = &v
 17221  	return s
 17222  }
 17223  
 17224  // SetTrustAnchors sets the TrustAnchors field's value.
 17225  func (s *NetworkProfile) SetTrustAnchors(v []*string) *NetworkProfile {
 17226  	s.TrustAnchors = v
 17227  	return s
 17228  }
 17229  
 17230  // The data associated with a network profile.
 17231  type NetworkProfileData struct {
 17232  	_ struct{} `type:"structure"`
 17233  
 17234  	// The ARN of the Private Certificate Authority (PCA) created in AWS Certificate
 17235  	// Manager (ACM). This is used to issue certificates to the devices.
 17236  	CertificateAuthorityArn *string `type:"string"`
 17237  
 17238  	// Detailed information about a device's network profile.
 17239  	Description *string `type:"string"`
 17240  
 17241  	// The authentication standard that is used in the EAP framework. Currently,
 17242  	// EAP_TLS is supported.
 17243  	EapMethod *string `type:"string" enum:"NetworkEapMethod"`
 17244  
 17245  	// The ARN of the network profile associated with a device.
 17246  	NetworkProfileArn *string `type:"string"`
 17247  
 17248  	// The name of the network profile associated with a device.
 17249  	NetworkProfileName *string `min:"1" type:"string"`
 17250  
 17251  	// The security type of the Wi-Fi network. This can be WPA2_ENTERPRISE, WPA2_PSK,
 17252  	// WPA_PSK, WEP, or OPEN.
 17253  	SecurityType *string `type:"string" enum:"NetworkSecurityType"`
 17254  
 17255  	// The SSID of the Wi-Fi network.
 17256  	Ssid *string `min:"1" type:"string"`
 17257  }
 17258  
 17259  // String returns the string representation.
 17260  //
 17261  // API parameter values that are decorated as "sensitive" in the API will not
 17262  // be included in the string output. The member name will be present, but the
 17263  // value will be replaced with "sensitive".
 17264  func (s NetworkProfileData) String() string {
 17265  	return awsutil.Prettify(s)
 17266  }
 17267  
 17268  // GoString returns the string representation.
 17269  //
 17270  // API parameter values that are decorated as "sensitive" in the API will not
 17271  // be included in the string output. The member name will be present, but the
 17272  // value will be replaced with "sensitive".
 17273  func (s NetworkProfileData) GoString() string {
 17274  	return s.String()
 17275  }
 17276  
 17277  // SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value.
 17278  func (s *NetworkProfileData) SetCertificateAuthorityArn(v string) *NetworkProfileData {
 17279  	s.CertificateAuthorityArn = &v
 17280  	return s
 17281  }
 17282  
 17283  // SetDescription sets the Description field's value.
 17284  func (s *NetworkProfileData) SetDescription(v string) *NetworkProfileData {
 17285  	s.Description = &v
 17286  	return s
 17287  }
 17288  
 17289  // SetEapMethod sets the EapMethod field's value.
 17290  func (s *NetworkProfileData) SetEapMethod(v string) *NetworkProfileData {
 17291  	s.EapMethod = &v
 17292  	return s
 17293  }
 17294  
 17295  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 17296  func (s *NetworkProfileData) SetNetworkProfileArn(v string) *NetworkProfileData {
 17297  	s.NetworkProfileArn = &v
 17298  	return s
 17299  }
 17300  
 17301  // SetNetworkProfileName sets the NetworkProfileName field's value.
 17302  func (s *NetworkProfileData) SetNetworkProfileName(v string) *NetworkProfileData {
 17303  	s.NetworkProfileName = &v
 17304  	return s
 17305  }
 17306  
 17307  // SetSecurityType sets the SecurityType field's value.
 17308  func (s *NetworkProfileData) SetSecurityType(v string) *NetworkProfileData {
 17309  	s.SecurityType = &v
 17310  	return s
 17311  }
 17312  
 17313  // SetSsid sets the Ssid field's value.
 17314  func (s *NetworkProfileData) SetSsid(v string) *NetworkProfileData {
 17315  	s.Ssid = &v
 17316  	return s
 17317  }
 17318  
 17319  // The resource is not found.
 17320  type NotFoundException struct {
 17321  	_            struct{}                  `type:"structure"`
 17322  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 17323  
 17324  	Message_ *string `locationName:"Message" type:"string"`
 17325  }
 17326  
 17327  // String returns the string representation.
 17328  //
 17329  // API parameter values that are decorated as "sensitive" in the API will not
 17330  // be included in the string output. The member name will be present, but the
 17331  // value will be replaced with "sensitive".
 17332  func (s NotFoundException) String() string {
 17333  	return awsutil.Prettify(s)
 17334  }
 17335  
 17336  // GoString returns the string representation.
 17337  //
 17338  // API parameter values that are decorated as "sensitive" in the API will not
 17339  // be included in the string output. The member name will be present, but the
 17340  // value will be replaced with "sensitive".
 17341  func (s NotFoundException) GoString() string {
 17342  	return s.String()
 17343  }
 17344  
 17345  func newErrorNotFoundException(v protocol.ResponseMetadata) error {
 17346  	return &NotFoundException{
 17347  		RespMetadata: v,
 17348  	}
 17349  }
 17350  
 17351  // Code returns the exception type name.
 17352  func (s *NotFoundException) Code() string {
 17353  	return "NotFoundException"
 17354  }
 17355  
 17356  // Message returns the exception's message.
 17357  func (s *NotFoundException) Message() string {
 17358  	if s.Message_ != nil {
 17359  		return *s.Message_
 17360  	}
 17361  	return ""
 17362  }
 17363  
 17364  // OrigErr always returns nil, satisfies awserr.Error interface.
 17365  func (s *NotFoundException) OrigErr() error {
 17366  	return nil
 17367  }
 17368  
 17369  func (s *NotFoundException) Error() string {
 17370  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 17371  }
 17372  
 17373  // Status code returns the HTTP status code for the request's response error.
 17374  func (s *NotFoundException) StatusCode() int {
 17375  	return s.RespMetadata.StatusCode
 17376  }
 17377  
 17378  // RequestID returns the service's response RequestID for request.
 17379  func (s *NotFoundException) RequestID() string {
 17380  	return s.RespMetadata.RequestID
 17381  }
 17382  
 17383  // The information for public switched telephone network (PSTN) conferencing.
 17384  type PSTNDialIn struct {
 17385  	_ struct{} `type:"structure"`
 17386  
 17387  	// The zip code.
 17388  	//
 17389  	// CountryCode is a required field
 17390  	CountryCode *string `type:"string" required:"true"`
 17391  
 17392  	// The delay duration before Alexa enters the conference ID with dual-tone multi-frequency
 17393  	// (DTMF). Each number on the dial pad corresponds to a DTMF tone, which is
 17394  	// how we send data over the telephone network.
 17395  	//
 17396  	// OneClickIdDelay is a required field
 17397  	OneClickIdDelay *string `min:"1" type:"string" required:"true"`
 17398  
 17399  	// The delay duration before Alexa enters the conference pin with dual-tone
 17400  	// multi-frequency (DTMF). Each number on the dial pad corresponds to a DTMF
 17401  	// tone, which is how we send data over the telephone network.
 17402  	//
 17403  	// OneClickPinDelay is a required field
 17404  	OneClickPinDelay *string `min:"1" type:"string" required:"true"`
 17405  
 17406  	// The phone number to call to join the conference.
 17407  	//
 17408  	// PhoneNumber is a required field
 17409  	PhoneNumber *string `type:"string" required:"true"`
 17410  }
 17411  
 17412  // String returns the string representation.
 17413  //
 17414  // API parameter values that are decorated as "sensitive" in the API will not
 17415  // be included in the string output. The member name will be present, but the
 17416  // value will be replaced with "sensitive".
 17417  func (s PSTNDialIn) String() string {
 17418  	return awsutil.Prettify(s)
 17419  }
 17420  
 17421  // GoString returns the string representation.
 17422  //
 17423  // API parameter values that are decorated as "sensitive" in the API will not
 17424  // be included in the string output. The member name will be present, but the
 17425  // value will be replaced with "sensitive".
 17426  func (s PSTNDialIn) GoString() string {
 17427  	return s.String()
 17428  }
 17429  
 17430  // Validate inspects the fields of the type to determine if they are valid.
 17431  func (s *PSTNDialIn) Validate() error {
 17432  	invalidParams := request.ErrInvalidParams{Context: "PSTNDialIn"}
 17433  	if s.CountryCode == nil {
 17434  		invalidParams.Add(request.NewErrParamRequired("CountryCode"))
 17435  	}
 17436  	if s.OneClickIdDelay == nil {
 17437  		invalidParams.Add(request.NewErrParamRequired("OneClickIdDelay"))
 17438  	}
 17439  	if s.OneClickIdDelay != nil && len(*s.OneClickIdDelay) < 1 {
 17440  		invalidParams.Add(request.NewErrParamMinLen("OneClickIdDelay", 1))
 17441  	}
 17442  	if s.OneClickPinDelay == nil {
 17443  		invalidParams.Add(request.NewErrParamRequired("OneClickPinDelay"))
 17444  	}
 17445  	if s.OneClickPinDelay != nil && len(*s.OneClickPinDelay) < 1 {
 17446  		invalidParams.Add(request.NewErrParamMinLen("OneClickPinDelay", 1))
 17447  	}
 17448  	if s.PhoneNumber == nil {
 17449  		invalidParams.Add(request.NewErrParamRequired("PhoneNumber"))
 17450  	}
 17451  
 17452  	if invalidParams.Len() > 0 {
 17453  		return invalidParams
 17454  	}
 17455  	return nil
 17456  }
 17457  
 17458  // SetCountryCode sets the CountryCode field's value.
 17459  func (s *PSTNDialIn) SetCountryCode(v string) *PSTNDialIn {
 17460  	s.CountryCode = &v
 17461  	return s
 17462  }
 17463  
 17464  // SetOneClickIdDelay sets the OneClickIdDelay field's value.
 17465  func (s *PSTNDialIn) SetOneClickIdDelay(v string) *PSTNDialIn {
 17466  	s.OneClickIdDelay = &v
 17467  	return s
 17468  }
 17469  
 17470  // SetOneClickPinDelay sets the OneClickPinDelay field's value.
 17471  func (s *PSTNDialIn) SetOneClickPinDelay(v string) *PSTNDialIn {
 17472  	s.OneClickPinDelay = &v
 17473  	return s
 17474  }
 17475  
 17476  // SetPhoneNumber sets the PhoneNumber field's value.
 17477  func (s *PSTNDialIn) SetPhoneNumber(v string) *PSTNDialIn {
 17478  	s.PhoneNumber = &v
 17479  	return s
 17480  }
 17481  
 17482  // The phone number for the contact containing the raw number and phone number
 17483  // type.
 17484  type PhoneNumber struct {
 17485  	_ struct{} `type:"structure"`
 17486  
 17487  	// The raw value of the phone number.
 17488  	//
 17489  	// Number is a sensitive parameter and its value will be
 17490  	// replaced with "sensitive" in string returned by PhoneNumber's
 17491  	// String and GoString methods.
 17492  	//
 17493  	// Number is a required field
 17494  	Number *string `type:"string" required:"true" sensitive:"true"`
 17495  
 17496  	// The type of the phone number.
 17497  	//
 17498  	// Type is a sensitive parameter and its value will be
 17499  	// replaced with "sensitive" in string returned by PhoneNumber's
 17500  	// String and GoString methods.
 17501  	//
 17502  	// Type is a required field
 17503  	Type *string `type:"string" required:"true" enum:"PhoneNumberType" sensitive:"true"`
 17504  }
 17505  
 17506  // String returns the string representation.
 17507  //
 17508  // API parameter values that are decorated as "sensitive" in the API will not
 17509  // be included in the string output. The member name will be present, but the
 17510  // value will be replaced with "sensitive".
 17511  func (s PhoneNumber) String() string {
 17512  	return awsutil.Prettify(s)
 17513  }
 17514  
 17515  // GoString returns the string representation.
 17516  //
 17517  // API parameter values that are decorated as "sensitive" in the API will not
 17518  // be included in the string output. The member name will be present, but the
 17519  // value will be replaced with "sensitive".
 17520  func (s PhoneNumber) GoString() string {
 17521  	return s.String()
 17522  }
 17523  
 17524  // Validate inspects the fields of the type to determine if they are valid.
 17525  func (s *PhoneNumber) Validate() error {
 17526  	invalidParams := request.ErrInvalidParams{Context: "PhoneNumber"}
 17527  	if s.Number == nil {
 17528  		invalidParams.Add(request.NewErrParamRequired("Number"))
 17529  	}
 17530  	if s.Type == nil {
 17531  		invalidParams.Add(request.NewErrParamRequired("Type"))
 17532  	}
 17533  
 17534  	if invalidParams.Len() > 0 {
 17535  		return invalidParams
 17536  	}
 17537  	return nil
 17538  }
 17539  
 17540  // SetNumber sets the Number field's value.
 17541  func (s *PhoneNumber) SetNumber(v string) *PhoneNumber {
 17542  	s.Number = &v
 17543  	return s
 17544  }
 17545  
 17546  // SetType sets the Type field's value.
 17547  func (s *PhoneNumber) SetType(v string) *PhoneNumber {
 17548  	s.Type = &v
 17549  	return s
 17550  }
 17551  
 17552  // A room profile with attributes.
 17553  type Profile struct {
 17554  	_ struct{} `type:"structure"`
 17555  
 17556  	// The address of a room profile.
 17557  	Address *string `min:"1" type:"string"`
 17558  
 17559  	// The ARN of the address book.
 17560  	AddressBookArn *string `type:"string"`
 17561  
 17562  	// Whether data retention of the profile is enabled.
 17563  	DataRetentionOptIn *bool `type:"boolean"`
 17564  
 17565  	// The distance unit of a room profile.
 17566  	DistanceUnit *string `type:"string" enum:"DistanceUnit"`
 17567  
 17568  	// Retrieves if the profile is default or not.
 17569  	IsDefault *bool `type:"boolean"`
 17570  
 17571  	// The locale of a room profile. (This is currently available only to a limited
 17572  	// preview audience.)
 17573  	Locale *string `min:"1" type:"string"`
 17574  
 17575  	// The max volume limit of a room profile.
 17576  	MaxVolumeLimit *int64 `type:"integer"`
 17577  
 17578  	// Meeting room settings of a room profile.
 17579  	MeetingRoomConfiguration *MeetingRoomConfiguration `type:"structure"`
 17580  
 17581  	// The PSTN setting of a room profile.
 17582  	PSTNEnabled *bool `type:"boolean"`
 17583  
 17584  	// The ARN of a room profile.
 17585  	ProfileArn *string `type:"string"`
 17586  
 17587  	// The name of a room profile.
 17588  	ProfileName *string `min:"1" type:"string"`
 17589  
 17590  	// The setup mode of a room profile.
 17591  	SetupModeDisabled *bool `type:"boolean"`
 17592  
 17593  	// The temperature unit of a room profile.
 17594  	TemperatureUnit *string `type:"string" enum:"TemperatureUnit"`
 17595  
 17596  	// The time zone of a room profile.
 17597  	Timezone *string `min:"1" type:"string"`
 17598  
 17599  	// The wake word of a room profile.
 17600  	WakeWord *string `type:"string" enum:"WakeWord"`
 17601  }
 17602  
 17603  // String returns the string representation.
 17604  //
 17605  // API parameter values that are decorated as "sensitive" in the API will not
 17606  // be included in the string output. The member name will be present, but the
 17607  // value will be replaced with "sensitive".
 17608  func (s Profile) String() string {
 17609  	return awsutil.Prettify(s)
 17610  }
 17611  
 17612  // GoString returns the string representation.
 17613  //
 17614  // API parameter values that are decorated as "sensitive" in the API will not
 17615  // be included in the string output. The member name will be present, but the
 17616  // value will be replaced with "sensitive".
 17617  func (s Profile) GoString() string {
 17618  	return s.String()
 17619  }
 17620  
 17621  // SetAddress sets the Address field's value.
 17622  func (s *Profile) SetAddress(v string) *Profile {
 17623  	s.Address = &v
 17624  	return s
 17625  }
 17626  
 17627  // SetAddressBookArn sets the AddressBookArn field's value.
 17628  func (s *Profile) SetAddressBookArn(v string) *Profile {
 17629  	s.AddressBookArn = &v
 17630  	return s
 17631  }
 17632  
 17633  // SetDataRetentionOptIn sets the DataRetentionOptIn field's value.
 17634  func (s *Profile) SetDataRetentionOptIn(v bool) *Profile {
 17635  	s.DataRetentionOptIn = &v
 17636  	return s
 17637  }
 17638  
 17639  // SetDistanceUnit sets the DistanceUnit field's value.
 17640  func (s *Profile) SetDistanceUnit(v string) *Profile {
 17641  	s.DistanceUnit = &v
 17642  	return s
 17643  }
 17644  
 17645  // SetIsDefault sets the IsDefault field's value.
 17646  func (s *Profile) SetIsDefault(v bool) *Profile {
 17647  	s.IsDefault = &v
 17648  	return s
 17649  }
 17650  
 17651  // SetLocale sets the Locale field's value.
 17652  func (s *Profile) SetLocale(v string) *Profile {
 17653  	s.Locale = &v
 17654  	return s
 17655  }
 17656  
 17657  // SetMaxVolumeLimit sets the MaxVolumeLimit field's value.
 17658  func (s *Profile) SetMaxVolumeLimit(v int64) *Profile {
 17659  	s.MaxVolumeLimit = &v
 17660  	return s
 17661  }
 17662  
 17663  // SetMeetingRoomConfiguration sets the MeetingRoomConfiguration field's value.
 17664  func (s *Profile) SetMeetingRoomConfiguration(v *MeetingRoomConfiguration) *Profile {
 17665  	s.MeetingRoomConfiguration = v
 17666  	return s
 17667  }
 17668  
 17669  // SetPSTNEnabled sets the PSTNEnabled field's value.
 17670  func (s *Profile) SetPSTNEnabled(v bool) *Profile {
 17671  	s.PSTNEnabled = &v
 17672  	return s
 17673  }
 17674  
 17675  // SetProfileArn sets the ProfileArn field's value.
 17676  func (s *Profile) SetProfileArn(v string) *Profile {
 17677  	s.ProfileArn = &v
 17678  	return s
 17679  }
 17680  
 17681  // SetProfileName sets the ProfileName field's value.
 17682  func (s *Profile) SetProfileName(v string) *Profile {
 17683  	s.ProfileName = &v
 17684  	return s
 17685  }
 17686  
 17687  // SetSetupModeDisabled sets the SetupModeDisabled field's value.
 17688  func (s *Profile) SetSetupModeDisabled(v bool) *Profile {
 17689  	s.SetupModeDisabled = &v
 17690  	return s
 17691  }
 17692  
 17693  // SetTemperatureUnit sets the TemperatureUnit field's value.
 17694  func (s *Profile) SetTemperatureUnit(v string) *Profile {
 17695  	s.TemperatureUnit = &v
 17696  	return s
 17697  }
 17698  
 17699  // SetTimezone sets the Timezone field's value.
 17700  func (s *Profile) SetTimezone(v string) *Profile {
 17701  	s.Timezone = &v
 17702  	return s
 17703  }
 17704  
 17705  // SetWakeWord sets the WakeWord field's value.
 17706  func (s *Profile) SetWakeWord(v string) *Profile {
 17707  	s.WakeWord = &v
 17708  	return s
 17709  }
 17710  
 17711  // The data of a room profile.
 17712  type ProfileData struct {
 17713  	_ struct{} `type:"structure"`
 17714  
 17715  	// The address of a room profile.
 17716  	Address *string `min:"1" type:"string"`
 17717  
 17718  	// The distance unit of a room profile.
 17719  	DistanceUnit *string `type:"string" enum:"DistanceUnit"`
 17720  
 17721  	// Retrieves if the profile data is default or not.
 17722  	IsDefault *bool `type:"boolean"`
 17723  
 17724  	// The locale of a room profile. (This is currently available only to a limited
 17725  	// preview audience.)
 17726  	Locale *string `min:"1" type:"string"`
 17727  
 17728  	// The ARN of a room profile.
 17729  	ProfileArn *string `type:"string"`
 17730  
 17731  	// The name of a room profile.
 17732  	ProfileName *string `min:"1" type:"string"`
 17733  
 17734  	// The temperature unit of a room profile.
 17735  	TemperatureUnit *string `type:"string" enum:"TemperatureUnit"`
 17736  
 17737  	// The time zone of a room profile.
 17738  	Timezone *string `min:"1" type:"string"`
 17739  
 17740  	// The wake word of a room profile.
 17741  	WakeWord *string `type:"string" enum:"WakeWord"`
 17742  }
 17743  
 17744  // String returns the string representation.
 17745  //
 17746  // API parameter values that are decorated as "sensitive" in the API will not
 17747  // be included in the string output. The member name will be present, but the
 17748  // value will be replaced with "sensitive".
 17749  func (s ProfileData) String() string {
 17750  	return awsutil.Prettify(s)
 17751  }
 17752  
 17753  // GoString returns the string representation.
 17754  //
 17755  // API parameter values that are decorated as "sensitive" in the API will not
 17756  // be included in the string output. The member name will be present, but the
 17757  // value will be replaced with "sensitive".
 17758  func (s ProfileData) GoString() string {
 17759  	return s.String()
 17760  }
 17761  
 17762  // SetAddress sets the Address field's value.
 17763  func (s *ProfileData) SetAddress(v string) *ProfileData {
 17764  	s.Address = &v
 17765  	return s
 17766  }
 17767  
 17768  // SetDistanceUnit sets the DistanceUnit field's value.
 17769  func (s *ProfileData) SetDistanceUnit(v string) *ProfileData {
 17770  	s.DistanceUnit = &v
 17771  	return s
 17772  }
 17773  
 17774  // SetIsDefault sets the IsDefault field's value.
 17775  func (s *ProfileData) SetIsDefault(v bool) *ProfileData {
 17776  	s.IsDefault = &v
 17777  	return s
 17778  }
 17779  
 17780  // SetLocale sets the Locale field's value.
 17781  func (s *ProfileData) SetLocale(v string) *ProfileData {
 17782  	s.Locale = &v
 17783  	return s
 17784  }
 17785  
 17786  // SetProfileArn sets the ProfileArn field's value.
 17787  func (s *ProfileData) SetProfileArn(v string) *ProfileData {
 17788  	s.ProfileArn = &v
 17789  	return s
 17790  }
 17791  
 17792  // SetProfileName sets the ProfileName field's value.
 17793  func (s *ProfileData) SetProfileName(v string) *ProfileData {
 17794  	s.ProfileName = &v
 17795  	return s
 17796  }
 17797  
 17798  // SetTemperatureUnit sets the TemperatureUnit field's value.
 17799  func (s *ProfileData) SetTemperatureUnit(v string) *ProfileData {
 17800  	s.TemperatureUnit = &v
 17801  	return s
 17802  }
 17803  
 17804  // SetTimezone sets the Timezone field's value.
 17805  func (s *ProfileData) SetTimezone(v string) *ProfileData {
 17806  	s.Timezone = &v
 17807  	return s
 17808  }
 17809  
 17810  // SetWakeWord sets the WakeWord field's value.
 17811  func (s *ProfileData) SetWakeWord(v string) *ProfileData {
 17812  	s.WakeWord = &v
 17813  	return s
 17814  }
 17815  
 17816  type PutConferencePreferenceInput struct {
 17817  	_ struct{} `type:"structure"`
 17818  
 17819  	// The conference preference of a specific conference provider.
 17820  	//
 17821  	// ConferencePreference is a required field
 17822  	ConferencePreference *ConferencePreference `type:"structure" required:"true"`
 17823  }
 17824  
 17825  // String returns the string representation.
 17826  //
 17827  // API parameter values that are decorated as "sensitive" in the API will not
 17828  // be included in the string output. The member name will be present, but the
 17829  // value will be replaced with "sensitive".
 17830  func (s PutConferencePreferenceInput) String() string {
 17831  	return awsutil.Prettify(s)
 17832  }
 17833  
 17834  // GoString returns the string representation.
 17835  //
 17836  // API parameter values that are decorated as "sensitive" in the API will not
 17837  // be included in the string output. The member name will be present, but the
 17838  // value will be replaced with "sensitive".
 17839  func (s PutConferencePreferenceInput) GoString() string {
 17840  	return s.String()
 17841  }
 17842  
 17843  // Validate inspects the fields of the type to determine if they are valid.
 17844  func (s *PutConferencePreferenceInput) Validate() error {
 17845  	invalidParams := request.ErrInvalidParams{Context: "PutConferencePreferenceInput"}
 17846  	if s.ConferencePreference == nil {
 17847  		invalidParams.Add(request.NewErrParamRequired("ConferencePreference"))
 17848  	}
 17849  
 17850  	if invalidParams.Len() > 0 {
 17851  		return invalidParams
 17852  	}
 17853  	return nil
 17854  }
 17855  
 17856  // SetConferencePreference sets the ConferencePreference field's value.
 17857  func (s *PutConferencePreferenceInput) SetConferencePreference(v *ConferencePreference) *PutConferencePreferenceInput {
 17858  	s.ConferencePreference = v
 17859  	return s
 17860  }
 17861  
 17862  type PutConferencePreferenceOutput struct {
 17863  	_ struct{} `type:"structure"`
 17864  }
 17865  
 17866  // String returns the string representation.
 17867  //
 17868  // API parameter values that are decorated as "sensitive" in the API will not
 17869  // be included in the string output. The member name will be present, but the
 17870  // value will be replaced with "sensitive".
 17871  func (s PutConferencePreferenceOutput) String() string {
 17872  	return awsutil.Prettify(s)
 17873  }
 17874  
 17875  // GoString returns the string representation.
 17876  //
 17877  // API parameter values that are decorated as "sensitive" in the API will not
 17878  // be included in the string output. The member name will be present, but the
 17879  // value will be replaced with "sensitive".
 17880  func (s PutConferencePreferenceOutput) GoString() string {
 17881  	return s.String()
 17882  }
 17883  
 17884  type PutInvitationConfigurationInput struct {
 17885  	_ struct{} `type:"structure"`
 17886  
 17887  	// The email ID of the organization or individual contact that the enrolled
 17888  	// user can use.
 17889  	ContactEmail *string `min:"1" type:"string"`
 17890  
 17891  	// The name of the organization sending the enrollment invite to a user.
 17892  	//
 17893  	// OrganizationName is a required field
 17894  	OrganizationName *string `min:"1" type:"string" required:"true"`
 17895  
 17896  	// The list of private skill IDs that you want to recommend to the user to enable
 17897  	// in the invitation.
 17898  	PrivateSkillIds []*string `type:"list"`
 17899  }
 17900  
 17901  // String returns the string representation.
 17902  //
 17903  // API parameter values that are decorated as "sensitive" in the API will not
 17904  // be included in the string output. The member name will be present, but the
 17905  // value will be replaced with "sensitive".
 17906  func (s PutInvitationConfigurationInput) String() string {
 17907  	return awsutil.Prettify(s)
 17908  }
 17909  
 17910  // GoString returns the string representation.
 17911  //
 17912  // API parameter values that are decorated as "sensitive" in the API will not
 17913  // be included in the string output. The member name will be present, but the
 17914  // value will be replaced with "sensitive".
 17915  func (s PutInvitationConfigurationInput) GoString() string {
 17916  	return s.String()
 17917  }
 17918  
 17919  // Validate inspects the fields of the type to determine if they are valid.
 17920  func (s *PutInvitationConfigurationInput) Validate() error {
 17921  	invalidParams := request.ErrInvalidParams{Context: "PutInvitationConfigurationInput"}
 17922  	if s.ContactEmail != nil && len(*s.ContactEmail) < 1 {
 17923  		invalidParams.Add(request.NewErrParamMinLen("ContactEmail", 1))
 17924  	}
 17925  	if s.OrganizationName == nil {
 17926  		invalidParams.Add(request.NewErrParamRequired("OrganizationName"))
 17927  	}
 17928  	if s.OrganizationName != nil && len(*s.OrganizationName) < 1 {
 17929  		invalidParams.Add(request.NewErrParamMinLen("OrganizationName", 1))
 17930  	}
 17931  
 17932  	if invalidParams.Len() > 0 {
 17933  		return invalidParams
 17934  	}
 17935  	return nil
 17936  }
 17937  
 17938  // SetContactEmail sets the ContactEmail field's value.
 17939  func (s *PutInvitationConfigurationInput) SetContactEmail(v string) *PutInvitationConfigurationInput {
 17940  	s.ContactEmail = &v
 17941  	return s
 17942  }
 17943  
 17944  // SetOrganizationName sets the OrganizationName field's value.
 17945  func (s *PutInvitationConfigurationInput) SetOrganizationName(v string) *PutInvitationConfigurationInput {
 17946  	s.OrganizationName = &v
 17947  	return s
 17948  }
 17949  
 17950  // SetPrivateSkillIds sets the PrivateSkillIds field's value.
 17951  func (s *PutInvitationConfigurationInput) SetPrivateSkillIds(v []*string) *PutInvitationConfigurationInput {
 17952  	s.PrivateSkillIds = v
 17953  	return s
 17954  }
 17955  
 17956  type PutInvitationConfigurationOutput struct {
 17957  	_ struct{} `type:"structure"`
 17958  }
 17959  
 17960  // String returns the string representation.
 17961  //
 17962  // API parameter values that are decorated as "sensitive" in the API will not
 17963  // be included in the string output. The member name will be present, but the
 17964  // value will be replaced with "sensitive".
 17965  func (s PutInvitationConfigurationOutput) String() string {
 17966  	return awsutil.Prettify(s)
 17967  }
 17968  
 17969  // GoString returns the string representation.
 17970  //
 17971  // API parameter values that are decorated as "sensitive" in the API will not
 17972  // be included in the string output. The member name will be present, but the
 17973  // value will be replaced with "sensitive".
 17974  func (s PutInvitationConfigurationOutput) GoString() string {
 17975  	return s.String()
 17976  }
 17977  
 17978  type PutRoomSkillParameterInput struct {
 17979  	_ struct{} `type:"structure"`
 17980  
 17981  	// The ARN of the room associated with the room skill parameter. Required.
 17982  	RoomArn *string `type:"string"`
 17983  
 17984  	// The updated room skill parameter. Required.
 17985  	//
 17986  	// RoomSkillParameter is a required field
 17987  	RoomSkillParameter *RoomSkillParameter `type:"structure" required:"true"`
 17988  
 17989  	// The ARN of the skill associated with the room skill parameter. Required.
 17990  	//
 17991  	// SkillId is a required field
 17992  	SkillId *string `type:"string" required:"true"`
 17993  }
 17994  
 17995  // String returns the string representation.
 17996  //
 17997  // API parameter values that are decorated as "sensitive" in the API will not
 17998  // be included in the string output. The member name will be present, but the
 17999  // value will be replaced with "sensitive".
 18000  func (s PutRoomSkillParameterInput) String() string {
 18001  	return awsutil.Prettify(s)
 18002  }
 18003  
 18004  // GoString returns the string representation.
 18005  //
 18006  // API parameter values that are decorated as "sensitive" in the API will not
 18007  // be included in the string output. The member name will be present, but the
 18008  // value will be replaced with "sensitive".
 18009  func (s PutRoomSkillParameterInput) GoString() string {
 18010  	return s.String()
 18011  }
 18012  
 18013  // Validate inspects the fields of the type to determine if they are valid.
 18014  func (s *PutRoomSkillParameterInput) Validate() error {
 18015  	invalidParams := request.ErrInvalidParams{Context: "PutRoomSkillParameterInput"}
 18016  	if s.RoomSkillParameter == nil {
 18017  		invalidParams.Add(request.NewErrParamRequired("RoomSkillParameter"))
 18018  	}
 18019  	if s.SkillId == nil {
 18020  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 18021  	}
 18022  	if s.RoomSkillParameter != nil {
 18023  		if err := s.RoomSkillParameter.Validate(); err != nil {
 18024  			invalidParams.AddNested("RoomSkillParameter", err.(request.ErrInvalidParams))
 18025  		}
 18026  	}
 18027  
 18028  	if invalidParams.Len() > 0 {
 18029  		return invalidParams
 18030  	}
 18031  	return nil
 18032  }
 18033  
 18034  // SetRoomArn sets the RoomArn field's value.
 18035  func (s *PutRoomSkillParameterInput) SetRoomArn(v string) *PutRoomSkillParameterInput {
 18036  	s.RoomArn = &v
 18037  	return s
 18038  }
 18039  
 18040  // SetRoomSkillParameter sets the RoomSkillParameter field's value.
 18041  func (s *PutRoomSkillParameterInput) SetRoomSkillParameter(v *RoomSkillParameter) *PutRoomSkillParameterInput {
 18042  	s.RoomSkillParameter = v
 18043  	return s
 18044  }
 18045  
 18046  // SetSkillId sets the SkillId field's value.
 18047  func (s *PutRoomSkillParameterInput) SetSkillId(v string) *PutRoomSkillParameterInput {
 18048  	s.SkillId = &v
 18049  	return s
 18050  }
 18051  
 18052  type PutRoomSkillParameterOutput struct {
 18053  	_ struct{} `type:"structure"`
 18054  }
 18055  
 18056  // String returns the string representation.
 18057  //
 18058  // API parameter values that are decorated as "sensitive" in the API will not
 18059  // be included in the string output. The member name will be present, but the
 18060  // value will be replaced with "sensitive".
 18061  func (s PutRoomSkillParameterOutput) String() string {
 18062  	return awsutil.Prettify(s)
 18063  }
 18064  
 18065  // GoString returns the string representation.
 18066  //
 18067  // API parameter values that are decorated as "sensitive" in the API will not
 18068  // be included in the string output. The member name will be present, but the
 18069  // value will be replaced with "sensitive".
 18070  func (s PutRoomSkillParameterOutput) GoString() string {
 18071  	return s.String()
 18072  }
 18073  
 18074  type PutSkillAuthorizationInput struct {
 18075  	_ struct{} `type:"structure"`
 18076  
 18077  	// The authorization result specific to OAUTH code grant output. "Code” must
 18078  	// be populated in the AuthorizationResult map to establish the authorization.
 18079  	//
 18080  	// AuthorizationResult is a sensitive parameter and its value will be
 18081  	// replaced with "sensitive" in string returned by PutSkillAuthorizationInput's
 18082  	// String and GoString methods.
 18083  	//
 18084  	// AuthorizationResult is a required field
 18085  	AuthorizationResult map[string]*string `type:"map" required:"true" sensitive:"true"`
 18086  
 18087  	// The room that the skill is authorized for.
 18088  	RoomArn *string `type:"string"`
 18089  
 18090  	// The unique identifier of a skill.
 18091  	//
 18092  	// SkillId is a required field
 18093  	SkillId *string `type:"string" required:"true"`
 18094  }
 18095  
 18096  // String returns the string representation.
 18097  //
 18098  // API parameter values that are decorated as "sensitive" in the API will not
 18099  // be included in the string output. The member name will be present, but the
 18100  // value will be replaced with "sensitive".
 18101  func (s PutSkillAuthorizationInput) String() string {
 18102  	return awsutil.Prettify(s)
 18103  }
 18104  
 18105  // GoString returns the string representation.
 18106  //
 18107  // API parameter values that are decorated as "sensitive" in the API will not
 18108  // be included in the string output. The member name will be present, but the
 18109  // value will be replaced with "sensitive".
 18110  func (s PutSkillAuthorizationInput) GoString() string {
 18111  	return s.String()
 18112  }
 18113  
 18114  // Validate inspects the fields of the type to determine if they are valid.
 18115  func (s *PutSkillAuthorizationInput) Validate() error {
 18116  	invalidParams := request.ErrInvalidParams{Context: "PutSkillAuthorizationInput"}
 18117  	if s.AuthorizationResult == nil {
 18118  		invalidParams.Add(request.NewErrParamRequired("AuthorizationResult"))
 18119  	}
 18120  	if s.SkillId == nil {
 18121  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 18122  	}
 18123  
 18124  	if invalidParams.Len() > 0 {
 18125  		return invalidParams
 18126  	}
 18127  	return nil
 18128  }
 18129  
 18130  // SetAuthorizationResult sets the AuthorizationResult field's value.
 18131  func (s *PutSkillAuthorizationInput) SetAuthorizationResult(v map[string]*string) *PutSkillAuthorizationInput {
 18132  	s.AuthorizationResult = v
 18133  	return s
 18134  }
 18135  
 18136  // SetRoomArn sets the RoomArn field's value.
 18137  func (s *PutSkillAuthorizationInput) SetRoomArn(v string) *PutSkillAuthorizationInput {
 18138  	s.RoomArn = &v
 18139  	return s
 18140  }
 18141  
 18142  // SetSkillId sets the SkillId field's value.
 18143  func (s *PutSkillAuthorizationInput) SetSkillId(v string) *PutSkillAuthorizationInput {
 18144  	s.SkillId = &v
 18145  	return s
 18146  }
 18147  
 18148  type PutSkillAuthorizationOutput struct {
 18149  	_ struct{} `type:"structure"`
 18150  }
 18151  
 18152  // String returns the string representation.
 18153  //
 18154  // API parameter values that are decorated as "sensitive" in the API will not
 18155  // be included in the string output. The member name will be present, but the
 18156  // value will be replaced with "sensitive".
 18157  func (s PutSkillAuthorizationOutput) String() string {
 18158  	return awsutil.Prettify(s)
 18159  }
 18160  
 18161  // GoString returns the string representation.
 18162  //
 18163  // API parameter values that are decorated as "sensitive" in the API will not
 18164  // be included in the string output. The member name will be present, but the
 18165  // value will be replaced with "sensitive".
 18166  func (s PutSkillAuthorizationOutput) GoString() string {
 18167  	return s.String()
 18168  }
 18169  
 18170  type RegisterAVSDeviceInput struct {
 18171  	_ struct{} `type:"structure"`
 18172  
 18173  	// The device type ID for your AVS device generated by Amazon when the OEM creates
 18174  	// a new product on Amazon's Developer Console.
 18175  	//
 18176  	// AmazonId is a required field
 18177  	AmazonId *string `type:"string" required:"true"`
 18178  
 18179  	// The client ID of the OEM used for code-based linking authorization on an
 18180  	// AVS device.
 18181  	//
 18182  	// ClientId is a required field
 18183  	ClientId *string `type:"string" required:"true"`
 18184  
 18185  	// The key generated by the OEM that uniquely identifies a specified instance
 18186  	// of your AVS device.
 18187  	DeviceSerialNumber *string `type:"string"`
 18188  
 18189  	// The product ID used to identify your AVS device during authorization.
 18190  	//
 18191  	// ProductId is a required field
 18192  	ProductId *string `type:"string" required:"true"`
 18193  
 18194  	// The Amazon Resource Name (ARN) of the room with which to associate your AVS
 18195  	// device.
 18196  	RoomArn *string `type:"string"`
 18197  
 18198  	// The tags to be added to the specified resource. Do not provide system tags.
 18199  	Tags []*Tag `type:"list"`
 18200  
 18201  	// The code that is obtained after your AVS device has made a POST request to
 18202  	// LWA as a part of the Device Authorization Request component of the OAuth
 18203  	// code-based linking specification.
 18204  	//
 18205  	// UserCode is a required field
 18206  	UserCode *string `min:"1" type:"string" required:"true"`
 18207  }
 18208  
 18209  // String returns the string representation.
 18210  //
 18211  // API parameter values that are decorated as "sensitive" in the API will not
 18212  // be included in the string output. The member name will be present, but the
 18213  // value will be replaced with "sensitive".
 18214  func (s RegisterAVSDeviceInput) String() string {
 18215  	return awsutil.Prettify(s)
 18216  }
 18217  
 18218  // GoString returns the string representation.
 18219  //
 18220  // API parameter values that are decorated as "sensitive" in the API will not
 18221  // be included in the string output. The member name will be present, but the
 18222  // value will be replaced with "sensitive".
 18223  func (s RegisterAVSDeviceInput) GoString() string {
 18224  	return s.String()
 18225  }
 18226  
 18227  // Validate inspects the fields of the type to determine if they are valid.
 18228  func (s *RegisterAVSDeviceInput) Validate() error {
 18229  	invalidParams := request.ErrInvalidParams{Context: "RegisterAVSDeviceInput"}
 18230  	if s.AmazonId == nil {
 18231  		invalidParams.Add(request.NewErrParamRequired("AmazonId"))
 18232  	}
 18233  	if s.ClientId == nil {
 18234  		invalidParams.Add(request.NewErrParamRequired("ClientId"))
 18235  	}
 18236  	if s.ProductId == nil {
 18237  		invalidParams.Add(request.NewErrParamRequired("ProductId"))
 18238  	}
 18239  	if s.UserCode == nil {
 18240  		invalidParams.Add(request.NewErrParamRequired("UserCode"))
 18241  	}
 18242  	if s.UserCode != nil && len(*s.UserCode) < 1 {
 18243  		invalidParams.Add(request.NewErrParamMinLen("UserCode", 1))
 18244  	}
 18245  	if s.Tags != nil {
 18246  		for i, v := range s.Tags {
 18247  			if v == nil {
 18248  				continue
 18249  			}
 18250  			if err := v.Validate(); err != nil {
 18251  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 18252  			}
 18253  		}
 18254  	}
 18255  
 18256  	if invalidParams.Len() > 0 {
 18257  		return invalidParams
 18258  	}
 18259  	return nil
 18260  }
 18261  
 18262  // SetAmazonId sets the AmazonId field's value.
 18263  func (s *RegisterAVSDeviceInput) SetAmazonId(v string) *RegisterAVSDeviceInput {
 18264  	s.AmazonId = &v
 18265  	return s
 18266  }
 18267  
 18268  // SetClientId sets the ClientId field's value.
 18269  func (s *RegisterAVSDeviceInput) SetClientId(v string) *RegisterAVSDeviceInput {
 18270  	s.ClientId = &v
 18271  	return s
 18272  }
 18273  
 18274  // SetDeviceSerialNumber sets the DeviceSerialNumber field's value.
 18275  func (s *RegisterAVSDeviceInput) SetDeviceSerialNumber(v string) *RegisterAVSDeviceInput {
 18276  	s.DeviceSerialNumber = &v
 18277  	return s
 18278  }
 18279  
 18280  // SetProductId sets the ProductId field's value.
 18281  func (s *RegisterAVSDeviceInput) SetProductId(v string) *RegisterAVSDeviceInput {
 18282  	s.ProductId = &v
 18283  	return s
 18284  }
 18285  
 18286  // SetRoomArn sets the RoomArn field's value.
 18287  func (s *RegisterAVSDeviceInput) SetRoomArn(v string) *RegisterAVSDeviceInput {
 18288  	s.RoomArn = &v
 18289  	return s
 18290  }
 18291  
 18292  // SetTags sets the Tags field's value.
 18293  func (s *RegisterAVSDeviceInput) SetTags(v []*Tag) *RegisterAVSDeviceInput {
 18294  	s.Tags = v
 18295  	return s
 18296  }
 18297  
 18298  // SetUserCode sets the UserCode field's value.
 18299  func (s *RegisterAVSDeviceInput) SetUserCode(v string) *RegisterAVSDeviceInput {
 18300  	s.UserCode = &v
 18301  	return s
 18302  }
 18303  
 18304  type RegisterAVSDeviceOutput struct {
 18305  	_ struct{} `type:"structure"`
 18306  
 18307  	// The ARN of the device.
 18308  	DeviceArn *string `type:"string"`
 18309  }
 18310  
 18311  // String returns the string representation.
 18312  //
 18313  // API parameter values that are decorated as "sensitive" in the API will not
 18314  // be included in the string output. The member name will be present, but the
 18315  // value will be replaced with "sensitive".
 18316  func (s RegisterAVSDeviceOutput) String() string {
 18317  	return awsutil.Prettify(s)
 18318  }
 18319  
 18320  // GoString returns the string representation.
 18321  //
 18322  // API parameter values that are decorated as "sensitive" in the API will not
 18323  // be included in the string output. The member name will be present, but the
 18324  // value will be replaced with "sensitive".
 18325  func (s RegisterAVSDeviceOutput) GoString() string {
 18326  	return s.String()
 18327  }
 18328  
 18329  // SetDeviceArn sets the DeviceArn field's value.
 18330  func (s *RegisterAVSDeviceOutput) SetDeviceArn(v string) *RegisterAVSDeviceOutput {
 18331  	s.DeviceArn = &v
 18332  	return s
 18333  }
 18334  
 18335  type RejectSkillInput struct {
 18336  	_ struct{} `type:"structure"`
 18337  
 18338  	// The unique identifier of the skill.
 18339  	//
 18340  	// SkillId is a required field
 18341  	SkillId *string `type:"string" required:"true"`
 18342  }
 18343  
 18344  // String returns the string representation.
 18345  //
 18346  // API parameter values that are decorated as "sensitive" in the API will not
 18347  // be included in the string output. The member name will be present, but the
 18348  // value will be replaced with "sensitive".
 18349  func (s RejectSkillInput) String() string {
 18350  	return awsutil.Prettify(s)
 18351  }
 18352  
 18353  // GoString returns the string representation.
 18354  //
 18355  // API parameter values that are decorated as "sensitive" in the API will not
 18356  // be included in the string output. The member name will be present, but the
 18357  // value will be replaced with "sensitive".
 18358  func (s RejectSkillInput) GoString() string {
 18359  	return s.String()
 18360  }
 18361  
 18362  // Validate inspects the fields of the type to determine if they are valid.
 18363  func (s *RejectSkillInput) Validate() error {
 18364  	invalidParams := request.ErrInvalidParams{Context: "RejectSkillInput"}
 18365  	if s.SkillId == nil {
 18366  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 18367  	}
 18368  
 18369  	if invalidParams.Len() > 0 {
 18370  		return invalidParams
 18371  	}
 18372  	return nil
 18373  }
 18374  
 18375  // SetSkillId sets the SkillId field's value.
 18376  func (s *RejectSkillInput) SetSkillId(v string) *RejectSkillInput {
 18377  	s.SkillId = &v
 18378  	return s
 18379  }
 18380  
 18381  type RejectSkillOutput struct {
 18382  	_ struct{} `type:"structure"`
 18383  }
 18384  
 18385  // String returns the string representation.
 18386  //
 18387  // API parameter values that are decorated as "sensitive" in the API will not
 18388  // be included in the string output. The member name will be present, but the
 18389  // value will be replaced with "sensitive".
 18390  func (s RejectSkillOutput) String() string {
 18391  	return awsutil.Prettify(s)
 18392  }
 18393  
 18394  // GoString returns the string representation.
 18395  //
 18396  // API parameter values that are decorated as "sensitive" in the API will not
 18397  // be included in the string output. The member name will be present, but the
 18398  // value will be replaced with "sensitive".
 18399  func (s RejectSkillOutput) GoString() string {
 18400  	return s.String()
 18401  }
 18402  
 18403  // Settings for the require check in feature that are applied to a room profile.
 18404  // Require check in allows a meeting room’s Alexa or AVS device to prompt
 18405  // the user to check in; otherwise, the room will be released.
 18406  type RequireCheckIn struct {
 18407  	_ struct{} `type:"structure"`
 18408  
 18409  	// Whether require check in is enabled or not.
 18410  	Enabled *bool `type:"boolean"`
 18411  
 18412  	// Duration between 5 and 20 minutes to determine when to release the room if
 18413  	// it's not checked into.
 18414  	ReleaseAfterMinutes *int64 `type:"integer"`
 18415  }
 18416  
 18417  // String returns the string representation.
 18418  //
 18419  // API parameter values that are decorated as "sensitive" in the API will not
 18420  // be included in the string output. The member name will be present, but the
 18421  // value will be replaced with "sensitive".
 18422  func (s RequireCheckIn) String() string {
 18423  	return awsutil.Prettify(s)
 18424  }
 18425  
 18426  // GoString returns the string representation.
 18427  //
 18428  // API parameter values that are decorated as "sensitive" in the API will not
 18429  // be included in the string output. The member name will be present, but the
 18430  // value will be replaced with "sensitive".
 18431  func (s RequireCheckIn) GoString() string {
 18432  	return s.String()
 18433  }
 18434  
 18435  // SetEnabled sets the Enabled field's value.
 18436  func (s *RequireCheckIn) SetEnabled(v bool) *RequireCheckIn {
 18437  	s.Enabled = &v
 18438  	return s
 18439  }
 18440  
 18441  // SetReleaseAfterMinutes sets the ReleaseAfterMinutes field's value.
 18442  func (s *RequireCheckIn) SetReleaseAfterMinutes(v int64) *RequireCheckIn {
 18443  	s.ReleaseAfterMinutes = &v
 18444  	return s
 18445  }
 18446  
 18447  type ResolveRoomInput struct {
 18448  	_ struct{} `type:"structure"`
 18449  
 18450  	// The ARN of the skill that was requested. Required.
 18451  	//
 18452  	// SkillId is a required field
 18453  	SkillId *string `type:"string" required:"true"`
 18454  
 18455  	// The ARN of the user. Required.
 18456  	//
 18457  	// UserId is a required field
 18458  	UserId *string `type:"string" required:"true"`
 18459  }
 18460  
 18461  // String returns the string representation.
 18462  //
 18463  // API parameter values that are decorated as "sensitive" in the API will not
 18464  // be included in the string output. The member name will be present, but the
 18465  // value will be replaced with "sensitive".
 18466  func (s ResolveRoomInput) String() string {
 18467  	return awsutil.Prettify(s)
 18468  }
 18469  
 18470  // GoString returns the string representation.
 18471  //
 18472  // API parameter values that are decorated as "sensitive" in the API will not
 18473  // be included in the string output. The member name will be present, but the
 18474  // value will be replaced with "sensitive".
 18475  func (s ResolveRoomInput) GoString() string {
 18476  	return s.String()
 18477  }
 18478  
 18479  // Validate inspects the fields of the type to determine if they are valid.
 18480  func (s *ResolveRoomInput) Validate() error {
 18481  	invalidParams := request.ErrInvalidParams{Context: "ResolveRoomInput"}
 18482  	if s.SkillId == nil {
 18483  		invalidParams.Add(request.NewErrParamRequired("SkillId"))
 18484  	}
 18485  	if s.UserId == nil {
 18486  		invalidParams.Add(request.NewErrParamRequired("UserId"))
 18487  	}
 18488  
 18489  	if invalidParams.Len() > 0 {
 18490  		return invalidParams
 18491  	}
 18492  	return nil
 18493  }
 18494  
 18495  // SetSkillId sets the SkillId field's value.
 18496  func (s *ResolveRoomInput) SetSkillId(v string) *ResolveRoomInput {
 18497  	s.SkillId = &v
 18498  	return s
 18499  }
 18500  
 18501  // SetUserId sets the UserId field's value.
 18502  func (s *ResolveRoomInput) SetUserId(v string) *ResolveRoomInput {
 18503  	s.UserId = &v
 18504  	return s
 18505  }
 18506  
 18507  type ResolveRoomOutput struct {
 18508  	_ struct{} `type:"structure"`
 18509  
 18510  	// The ARN of the room from which the skill request was invoked.
 18511  	RoomArn *string `type:"string"`
 18512  
 18513  	// The name of the room from which the skill request was invoked.
 18514  	RoomName *string `min:"1" type:"string"`
 18515  
 18516  	// Response to get the room profile request. Required.
 18517  	RoomSkillParameters []*RoomSkillParameter `type:"list"`
 18518  }
 18519  
 18520  // String returns the string representation.
 18521  //
 18522  // API parameter values that are decorated as "sensitive" in the API will not
 18523  // be included in the string output. The member name will be present, but the
 18524  // value will be replaced with "sensitive".
 18525  func (s ResolveRoomOutput) String() string {
 18526  	return awsutil.Prettify(s)
 18527  }
 18528  
 18529  // GoString returns the string representation.
 18530  //
 18531  // API parameter values that are decorated as "sensitive" in the API will not
 18532  // be included in the string output. The member name will be present, but the
 18533  // value will be replaced with "sensitive".
 18534  func (s ResolveRoomOutput) GoString() string {
 18535  	return s.String()
 18536  }
 18537  
 18538  // SetRoomArn sets the RoomArn field's value.
 18539  func (s *ResolveRoomOutput) SetRoomArn(v string) *ResolveRoomOutput {
 18540  	s.RoomArn = &v
 18541  	return s
 18542  }
 18543  
 18544  // SetRoomName sets the RoomName field's value.
 18545  func (s *ResolveRoomOutput) SetRoomName(v string) *ResolveRoomOutput {
 18546  	s.RoomName = &v
 18547  	return s
 18548  }
 18549  
 18550  // SetRoomSkillParameters sets the RoomSkillParameters field's value.
 18551  func (s *ResolveRoomOutput) SetRoomSkillParameters(v []*RoomSkillParameter) *ResolveRoomOutput {
 18552  	s.RoomSkillParameters = v
 18553  	return s
 18554  }
 18555  
 18556  // Another resource is associated with the resource in the request.
 18557  type ResourceAssociatedException struct {
 18558  	_            struct{}                  `type:"structure"`
 18559  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 18560  
 18561  	Message_ *string `locationName:"Message" type:"string"`
 18562  }
 18563  
 18564  // String returns the string representation.
 18565  //
 18566  // API parameter values that are decorated as "sensitive" in the API will not
 18567  // be included in the string output. The member name will be present, but the
 18568  // value will be replaced with "sensitive".
 18569  func (s ResourceAssociatedException) String() string {
 18570  	return awsutil.Prettify(s)
 18571  }
 18572  
 18573  // GoString returns the string representation.
 18574  //
 18575  // API parameter values that are decorated as "sensitive" in the API will not
 18576  // be included in the string output. The member name will be present, but the
 18577  // value will be replaced with "sensitive".
 18578  func (s ResourceAssociatedException) GoString() string {
 18579  	return s.String()
 18580  }
 18581  
 18582  func newErrorResourceAssociatedException(v protocol.ResponseMetadata) error {
 18583  	return &ResourceAssociatedException{
 18584  		RespMetadata: v,
 18585  	}
 18586  }
 18587  
 18588  // Code returns the exception type name.
 18589  func (s *ResourceAssociatedException) Code() string {
 18590  	return "ResourceAssociatedException"
 18591  }
 18592  
 18593  // Message returns the exception's message.
 18594  func (s *ResourceAssociatedException) Message() string {
 18595  	if s.Message_ != nil {
 18596  		return *s.Message_
 18597  	}
 18598  	return ""
 18599  }
 18600  
 18601  // OrigErr always returns nil, satisfies awserr.Error interface.
 18602  func (s *ResourceAssociatedException) OrigErr() error {
 18603  	return nil
 18604  }
 18605  
 18606  func (s *ResourceAssociatedException) Error() string {
 18607  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 18608  }
 18609  
 18610  // Status code returns the HTTP status code for the request's response error.
 18611  func (s *ResourceAssociatedException) StatusCode() int {
 18612  	return s.RespMetadata.StatusCode
 18613  }
 18614  
 18615  // RequestID returns the service's response RequestID for request.
 18616  func (s *ResourceAssociatedException) RequestID() string {
 18617  	return s.RespMetadata.RequestID
 18618  }
 18619  
 18620  // The resource in the request is already in use.
 18621  type ResourceInUseException struct {
 18622  	_            struct{}                  `type:"structure"`
 18623  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 18624  
 18625  	// A unique, user-specified identifier for the request that ensures idempotency.
 18626  	ClientRequestToken *string `min:"10" type:"string"`
 18627  
 18628  	Message_ *string `locationName:"Message" type:"string"`
 18629  }
 18630  
 18631  // String returns the string representation.
 18632  //
 18633  // API parameter values that are decorated as "sensitive" in the API will not
 18634  // be included in the string output. The member name will be present, but the
 18635  // value will be replaced with "sensitive".
 18636  func (s ResourceInUseException) String() string {
 18637  	return awsutil.Prettify(s)
 18638  }
 18639  
 18640  // GoString returns the string representation.
 18641  //
 18642  // API parameter values that are decorated as "sensitive" in the API will not
 18643  // be included in the string output. The member name will be present, but the
 18644  // value will be replaced with "sensitive".
 18645  func (s ResourceInUseException) GoString() string {
 18646  	return s.String()
 18647  }
 18648  
 18649  func newErrorResourceInUseException(v protocol.ResponseMetadata) error {
 18650  	return &ResourceInUseException{
 18651  		RespMetadata: v,
 18652  	}
 18653  }
 18654  
 18655  // Code returns the exception type name.
 18656  func (s *ResourceInUseException) Code() string {
 18657  	return "ResourceInUseException"
 18658  }
 18659  
 18660  // Message returns the exception's message.
 18661  func (s *ResourceInUseException) Message() string {
 18662  	if s.Message_ != nil {
 18663  		return *s.Message_
 18664  	}
 18665  	return ""
 18666  }
 18667  
 18668  // OrigErr always returns nil, satisfies awserr.Error interface.
 18669  func (s *ResourceInUseException) OrigErr() error {
 18670  	return nil
 18671  }
 18672  
 18673  func (s *ResourceInUseException) Error() string {
 18674  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
 18675  }
 18676  
 18677  // Status code returns the HTTP status code for the request's response error.
 18678  func (s *ResourceInUseException) StatusCode() int {
 18679  	return s.RespMetadata.StatusCode
 18680  }
 18681  
 18682  // RequestID returns the service's response RequestID for request.
 18683  func (s *ResourceInUseException) RequestID() string {
 18684  	return s.RespMetadata.RequestID
 18685  }
 18686  
 18687  type RevokeInvitationInput struct {
 18688  	_ struct{} `type:"structure"`
 18689  
 18690  	// The ARN of the enrollment invitation to revoke. Required.
 18691  	EnrollmentId *string `type:"string"`
 18692  
 18693  	// The ARN of the user for whom to revoke an enrollment invitation. Required.
 18694  	UserArn *string `type:"string"`
 18695  }
 18696  
 18697  // String returns the string representation.
 18698  //
 18699  // API parameter values that are decorated as "sensitive" in the API will not
 18700  // be included in the string output. The member name will be present, but the
 18701  // value will be replaced with "sensitive".
 18702  func (s RevokeInvitationInput) String() string {
 18703  	return awsutil.Prettify(s)
 18704  }
 18705  
 18706  // GoString returns the string representation.
 18707  //
 18708  // API parameter values that are decorated as "sensitive" in the API will not
 18709  // be included in the string output. The member name will be present, but the
 18710  // value will be replaced with "sensitive".
 18711  func (s RevokeInvitationInput) GoString() string {
 18712  	return s.String()
 18713  }
 18714  
 18715  // SetEnrollmentId sets the EnrollmentId field's value.
 18716  func (s *RevokeInvitationInput) SetEnrollmentId(v string) *RevokeInvitationInput {
 18717  	s.EnrollmentId = &v
 18718  	return s
 18719  }
 18720  
 18721  // SetUserArn sets the UserArn field's value.
 18722  func (s *RevokeInvitationInput) SetUserArn(v string) *RevokeInvitationInput {
 18723  	s.UserArn = &v
 18724  	return s
 18725  }
 18726  
 18727  type RevokeInvitationOutput struct {
 18728  	_ struct{} `type:"structure"`
 18729  }
 18730  
 18731  // String returns the string representation.
 18732  //
 18733  // API parameter values that are decorated as "sensitive" in the API will not
 18734  // be included in the string output. The member name will be present, but the
 18735  // value will be replaced with "sensitive".
 18736  func (s RevokeInvitationOutput) String() string {
 18737  	return awsutil.Prettify(s)
 18738  }
 18739  
 18740  // GoString returns the string representation.
 18741  //
 18742  // API parameter values that are decorated as "sensitive" in the API will not
 18743  // be included in the string output. The member name will be present, but the
 18744  // value will be replaced with "sensitive".
 18745  func (s RevokeInvitationOutput) GoString() string {
 18746  	return s.String()
 18747  }
 18748  
 18749  // A room with attributes.
 18750  type Room struct {
 18751  	_ struct{} `type:"structure"`
 18752  
 18753  	// The description of a room.
 18754  	Description *string `min:"1" type:"string"`
 18755  
 18756  	// The profile ARN of a room.
 18757  	ProfileArn *string `type:"string"`
 18758  
 18759  	// The provider calendar ARN of a room.
 18760  	ProviderCalendarId *string `type:"string"`
 18761  
 18762  	// The ARN of a room.
 18763  	RoomArn *string `type:"string"`
 18764  
 18765  	// The name of a room.
 18766  	RoomName *string `min:"1" type:"string"`
 18767  }
 18768  
 18769  // String returns the string representation.
 18770  //
 18771  // API parameter values that are decorated as "sensitive" in the API will not
 18772  // be included in the string output. The member name will be present, but the
 18773  // value will be replaced with "sensitive".
 18774  func (s Room) String() string {
 18775  	return awsutil.Prettify(s)
 18776  }
 18777  
 18778  // GoString returns the string representation.
 18779  //
 18780  // API parameter values that are decorated as "sensitive" in the API will not
 18781  // be included in the string output. The member name will be present, but the
 18782  // value will be replaced with "sensitive".
 18783  func (s Room) GoString() string {
 18784  	return s.String()
 18785  }
 18786  
 18787  // SetDescription sets the Description field's value.
 18788  func (s *Room) SetDescription(v string) *Room {
 18789  	s.Description = &v
 18790  	return s
 18791  }
 18792  
 18793  // SetProfileArn sets the ProfileArn field's value.
 18794  func (s *Room) SetProfileArn(v string) *Room {
 18795  	s.ProfileArn = &v
 18796  	return s
 18797  }
 18798  
 18799  // SetProviderCalendarId sets the ProviderCalendarId field's value.
 18800  func (s *Room) SetProviderCalendarId(v string) *Room {
 18801  	s.ProviderCalendarId = &v
 18802  	return s
 18803  }
 18804  
 18805  // SetRoomArn sets the RoomArn field's value.
 18806  func (s *Room) SetRoomArn(v string) *Room {
 18807  	s.RoomArn = &v
 18808  	return s
 18809  }
 18810  
 18811  // SetRoomName sets the RoomName field's value.
 18812  func (s *Room) SetRoomName(v string) *Room {
 18813  	s.RoomName = &v
 18814  	return s
 18815  }
 18816  
 18817  // The data of a room.
 18818  type RoomData struct {
 18819  	_ struct{} `type:"structure"`
 18820  
 18821  	// The description of a room.
 18822  	Description *string `min:"1" type:"string"`
 18823  
 18824  	// The profile ARN of a room.
 18825  	ProfileArn *string `type:"string"`
 18826  
 18827  	// The profile name of a room.
 18828  	ProfileName *string `min:"1" type:"string"`
 18829  
 18830  	// The provider calendar ARN of a room.
 18831  	ProviderCalendarId *string `type:"string"`
 18832  
 18833  	// The ARN of a room.
 18834  	RoomArn *string `type:"string"`
 18835  
 18836  	// The name of a room.
 18837  	RoomName *string `min:"1" type:"string"`
 18838  }
 18839  
 18840  // String returns the string representation.
 18841  //
 18842  // API parameter values that are decorated as "sensitive" in the API will not
 18843  // be included in the string output. The member name will be present, but the
 18844  // value will be replaced with "sensitive".
 18845  func (s RoomData) String() string {
 18846  	return awsutil.Prettify(s)
 18847  }
 18848  
 18849  // GoString returns the string representation.
 18850  //
 18851  // API parameter values that are decorated as "sensitive" in the API will not
 18852  // be included in the string output. The member name will be present, but the
 18853  // value will be replaced with "sensitive".
 18854  func (s RoomData) GoString() string {
 18855  	return s.String()
 18856  }
 18857  
 18858  // SetDescription sets the Description field's value.
 18859  func (s *RoomData) SetDescription(v string) *RoomData {
 18860  	s.Description = &v
 18861  	return s
 18862  }
 18863  
 18864  // SetProfileArn sets the ProfileArn field's value.
 18865  func (s *RoomData) SetProfileArn(v string) *RoomData {
 18866  	s.ProfileArn = &v
 18867  	return s
 18868  }
 18869  
 18870  // SetProfileName sets the ProfileName field's value.
 18871  func (s *RoomData) SetProfileName(v string) *RoomData {
 18872  	s.ProfileName = &v
 18873  	return s
 18874  }
 18875  
 18876  // SetProviderCalendarId sets the ProviderCalendarId field's value.
 18877  func (s *RoomData) SetProviderCalendarId(v string) *RoomData {
 18878  	s.ProviderCalendarId = &v
 18879  	return s
 18880  }
 18881  
 18882  // SetRoomArn sets the RoomArn field's value.
 18883  func (s *RoomData) SetRoomArn(v string) *RoomData {
 18884  	s.RoomArn = &v
 18885  	return s
 18886  }
 18887  
 18888  // SetRoomName sets the RoomName field's value.
 18889  func (s *RoomData) SetRoomName(v string) *RoomData {
 18890  	s.RoomName = &v
 18891  	return s
 18892  }
 18893  
 18894  // A skill parameter associated with a room.
 18895  type RoomSkillParameter struct {
 18896  	_ struct{} `type:"structure"`
 18897  
 18898  	// The parameter key of a room skill parameter. ParameterKey is an enumerated
 18899  	// type that only takes “DEFAULT” or “SCOPE” as valid values.
 18900  	//
 18901  	// ParameterKey is a required field
 18902  	ParameterKey *string `min:"1" type:"string" required:"true"`
 18903  
 18904  	// The parameter value of a room skill parameter.
 18905  	//
 18906  	// ParameterValue is a required field
 18907  	ParameterValue *string `min:"1" type:"string" required:"true"`
 18908  }
 18909  
 18910  // String returns the string representation.
 18911  //
 18912  // API parameter values that are decorated as "sensitive" in the API will not
 18913  // be included in the string output. The member name will be present, but the
 18914  // value will be replaced with "sensitive".
 18915  func (s RoomSkillParameter) String() string {
 18916  	return awsutil.Prettify(s)
 18917  }
 18918  
 18919  // GoString returns the string representation.
 18920  //
 18921  // API parameter values that are decorated as "sensitive" in the API will not
 18922  // be included in the string output. The member name will be present, but the
 18923  // value will be replaced with "sensitive".
 18924  func (s RoomSkillParameter) GoString() string {
 18925  	return s.String()
 18926  }
 18927  
 18928  // Validate inspects the fields of the type to determine if they are valid.
 18929  func (s *RoomSkillParameter) Validate() error {
 18930  	invalidParams := request.ErrInvalidParams{Context: "RoomSkillParameter"}
 18931  	if s.ParameterKey == nil {
 18932  		invalidParams.Add(request.NewErrParamRequired("ParameterKey"))
 18933  	}
 18934  	if s.ParameterKey != nil && len(*s.ParameterKey) < 1 {
 18935  		invalidParams.Add(request.NewErrParamMinLen("ParameterKey", 1))
 18936  	}
 18937  	if s.ParameterValue == nil {
 18938  		invalidParams.Add(request.NewErrParamRequired("ParameterValue"))
 18939  	}
 18940  	if s.ParameterValue != nil && len(*s.ParameterValue) < 1 {
 18941  		invalidParams.Add(request.NewErrParamMinLen("ParameterValue", 1))
 18942  	}
 18943  
 18944  	if invalidParams.Len() > 0 {
 18945  		return invalidParams
 18946  	}
 18947  	return nil
 18948  }
 18949  
 18950  // SetParameterKey sets the ParameterKey field's value.
 18951  func (s *RoomSkillParameter) SetParameterKey(v string) *RoomSkillParameter {
 18952  	s.ParameterKey = &v
 18953  	return s
 18954  }
 18955  
 18956  // SetParameterValue sets the ParameterValue field's value.
 18957  func (s *RoomSkillParameter) SetParameterValue(v string) *RoomSkillParameter {
 18958  	s.ParameterValue = &v
 18959  	return s
 18960  }
 18961  
 18962  type SearchAddressBooksInput struct {
 18963  	_ struct{} `type:"structure"`
 18964  
 18965  	// The filters to use to list a specified set of address books. The supported
 18966  	// filter key is AddressBookName.
 18967  	Filters []*Filter `type:"list"`
 18968  
 18969  	// The maximum number of results to include in the response. If more results
 18970  	// exist than the specified MaxResults value, a token is included in the response
 18971  	// so that the remaining results can be retrieved.
 18972  	MaxResults *int64 `min:"1" type:"integer"`
 18973  
 18974  	// An optional token returned from a prior request. Use this token for pagination
 18975  	// of results from this action. If this parameter is specified, the response
 18976  	// only includes results beyond the token, up to the value specified by MaxResults.
 18977  	NextToken *string `min:"1" type:"string"`
 18978  
 18979  	// The sort order to use in listing the specified set of address books. The
 18980  	// supported sort key is AddressBookName.
 18981  	SortCriteria []*Sort `type:"list"`
 18982  }
 18983  
 18984  // String returns the string representation.
 18985  //
 18986  // API parameter values that are decorated as "sensitive" in the API will not
 18987  // be included in the string output. The member name will be present, but the
 18988  // value will be replaced with "sensitive".
 18989  func (s SearchAddressBooksInput) String() string {
 18990  	return awsutil.Prettify(s)
 18991  }
 18992  
 18993  // GoString returns the string representation.
 18994  //
 18995  // API parameter values that are decorated as "sensitive" in the API will not
 18996  // be included in the string output. The member name will be present, but the
 18997  // value will be replaced with "sensitive".
 18998  func (s SearchAddressBooksInput) GoString() string {
 18999  	return s.String()
 19000  }
 19001  
 19002  // Validate inspects the fields of the type to determine if they are valid.
 19003  func (s *SearchAddressBooksInput) Validate() error {
 19004  	invalidParams := request.ErrInvalidParams{Context: "SearchAddressBooksInput"}
 19005  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19006  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19007  	}
 19008  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19009  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19010  	}
 19011  	if s.Filters != nil {
 19012  		for i, v := range s.Filters {
 19013  			if v == nil {
 19014  				continue
 19015  			}
 19016  			if err := v.Validate(); err != nil {
 19017  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19018  			}
 19019  		}
 19020  	}
 19021  	if s.SortCriteria != nil {
 19022  		for i, v := range s.SortCriteria {
 19023  			if v == nil {
 19024  				continue
 19025  			}
 19026  			if err := v.Validate(); err != nil {
 19027  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19028  			}
 19029  		}
 19030  	}
 19031  
 19032  	if invalidParams.Len() > 0 {
 19033  		return invalidParams
 19034  	}
 19035  	return nil
 19036  }
 19037  
 19038  // SetFilters sets the Filters field's value.
 19039  func (s *SearchAddressBooksInput) SetFilters(v []*Filter) *SearchAddressBooksInput {
 19040  	s.Filters = v
 19041  	return s
 19042  }
 19043  
 19044  // SetMaxResults sets the MaxResults field's value.
 19045  func (s *SearchAddressBooksInput) SetMaxResults(v int64) *SearchAddressBooksInput {
 19046  	s.MaxResults = &v
 19047  	return s
 19048  }
 19049  
 19050  // SetNextToken sets the NextToken field's value.
 19051  func (s *SearchAddressBooksInput) SetNextToken(v string) *SearchAddressBooksInput {
 19052  	s.NextToken = &v
 19053  	return s
 19054  }
 19055  
 19056  // SetSortCriteria sets the SortCriteria field's value.
 19057  func (s *SearchAddressBooksInput) SetSortCriteria(v []*Sort) *SearchAddressBooksInput {
 19058  	s.SortCriteria = v
 19059  	return s
 19060  }
 19061  
 19062  type SearchAddressBooksOutput struct {
 19063  	_ struct{} `type:"structure"`
 19064  
 19065  	// The address books that meet the specified set of filter criteria, in sort
 19066  	// order.
 19067  	AddressBooks []*AddressBookData `type:"list"`
 19068  
 19069  	// The token returned to indicate that there is more data available.
 19070  	NextToken *string `min:"1" type:"string"`
 19071  
 19072  	// The total number of address books returned.
 19073  	TotalCount *int64 `type:"integer"`
 19074  }
 19075  
 19076  // String returns the string representation.
 19077  //
 19078  // API parameter values that are decorated as "sensitive" in the API will not
 19079  // be included in the string output. The member name will be present, but the
 19080  // value will be replaced with "sensitive".
 19081  func (s SearchAddressBooksOutput) String() string {
 19082  	return awsutil.Prettify(s)
 19083  }
 19084  
 19085  // GoString returns the string representation.
 19086  //
 19087  // API parameter values that are decorated as "sensitive" in the API will not
 19088  // be included in the string output. The member name will be present, but the
 19089  // value will be replaced with "sensitive".
 19090  func (s SearchAddressBooksOutput) GoString() string {
 19091  	return s.String()
 19092  }
 19093  
 19094  // SetAddressBooks sets the AddressBooks field's value.
 19095  func (s *SearchAddressBooksOutput) SetAddressBooks(v []*AddressBookData) *SearchAddressBooksOutput {
 19096  	s.AddressBooks = v
 19097  	return s
 19098  }
 19099  
 19100  // SetNextToken sets the NextToken field's value.
 19101  func (s *SearchAddressBooksOutput) SetNextToken(v string) *SearchAddressBooksOutput {
 19102  	s.NextToken = &v
 19103  	return s
 19104  }
 19105  
 19106  // SetTotalCount sets the TotalCount field's value.
 19107  func (s *SearchAddressBooksOutput) SetTotalCount(v int64) *SearchAddressBooksOutput {
 19108  	s.TotalCount = &v
 19109  	return s
 19110  }
 19111  
 19112  type SearchContactsInput struct {
 19113  	_ struct{} `type:"structure"`
 19114  
 19115  	// The filters to use to list a specified set of address books. The supported
 19116  	// filter keys are DisplayName, FirstName, LastName, and AddressBookArns.
 19117  	Filters []*Filter `type:"list"`
 19118  
 19119  	// The maximum number of results to include in the response. If more results
 19120  	// exist than the specified MaxResults value, a token is included in the response
 19121  	// so that the remaining results can be retrieved.
 19122  	MaxResults *int64 `min:"1" type:"integer"`
 19123  
 19124  	// An optional token returned from a prior request. Use this token for pagination
 19125  	// of results from this action. If this parameter is specified, the response
 19126  	// only includes results beyond the token, up to the value specified by MaxResults.
 19127  	NextToken *string `min:"1" type:"string"`
 19128  
 19129  	// The sort order to use in listing the specified set of contacts. The supported
 19130  	// sort keys are DisplayName, FirstName, and LastName.
 19131  	SortCriteria []*Sort `type:"list"`
 19132  }
 19133  
 19134  // String returns the string representation.
 19135  //
 19136  // API parameter values that are decorated as "sensitive" in the API will not
 19137  // be included in the string output. The member name will be present, but the
 19138  // value will be replaced with "sensitive".
 19139  func (s SearchContactsInput) String() string {
 19140  	return awsutil.Prettify(s)
 19141  }
 19142  
 19143  // GoString returns the string representation.
 19144  //
 19145  // API parameter values that are decorated as "sensitive" in the API will not
 19146  // be included in the string output. The member name will be present, but the
 19147  // value will be replaced with "sensitive".
 19148  func (s SearchContactsInput) GoString() string {
 19149  	return s.String()
 19150  }
 19151  
 19152  // Validate inspects the fields of the type to determine if they are valid.
 19153  func (s *SearchContactsInput) Validate() error {
 19154  	invalidParams := request.ErrInvalidParams{Context: "SearchContactsInput"}
 19155  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19156  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19157  	}
 19158  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19159  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19160  	}
 19161  	if s.Filters != nil {
 19162  		for i, v := range s.Filters {
 19163  			if v == nil {
 19164  				continue
 19165  			}
 19166  			if err := v.Validate(); err != nil {
 19167  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19168  			}
 19169  		}
 19170  	}
 19171  	if s.SortCriteria != nil {
 19172  		for i, v := range s.SortCriteria {
 19173  			if v == nil {
 19174  				continue
 19175  			}
 19176  			if err := v.Validate(); err != nil {
 19177  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19178  			}
 19179  		}
 19180  	}
 19181  
 19182  	if invalidParams.Len() > 0 {
 19183  		return invalidParams
 19184  	}
 19185  	return nil
 19186  }
 19187  
 19188  // SetFilters sets the Filters field's value.
 19189  func (s *SearchContactsInput) SetFilters(v []*Filter) *SearchContactsInput {
 19190  	s.Filters = v
 19191  	return s
 19192  }
 19193  
 19194  // SetMaxResults sets the MaxResults field's value.
 19195  func (s *SearchContactsInput) SetMaxResults(v int64) *SearchContactsInput {
 19196  	s.MaxResults = &v
 19197  	return s
 19198  }
 19199  
 19200  // SetNextToken sets the NextToken field's value.
 19201  func (s *SearchContactsInput) SetNextToken(v string) *SearchContactsInput {
 19202  	s.NextToken = &v
 19203  	return s
 19204  }
 19205  
 19206  // SetSortCriteria sets the SortCriteria field's value.
 19207  func (s *SearchContactsInput) SetSortCriteria(v []*Sort) *SearchContactsInput {
 19208  	s.SortCriteria = v
 19209  	return s
 19210  }
 19211  
 19212  type SearchContactsOutput struct {
 19213  	_ struct{} `type:"structure"`
 19214  
 19215  	// The contacts that meet the specified set of filter criteria, in sort order.
 19216  	Contacts []*ContactData `type:"list"`
 19217  
 19218  	// The token returned to indicate that there is more data available.
 19219  	NextToken *string `min:"1" type:"string"`
 19220  
 19221  	// The total number of contacts returned.
 19222  	TotalCount *int64 `type:"integer"`
 19223  }
 19224  
 19225  // String returns the string representation.
 19226  //
 19227  // API parameter values that are decorated as "sensitive" in the API will not
 19228  // be included in the string output. The member name will be present, but the
 19229  // value will be replaced with "sensitive".
 19230  func (s SearchContactsOutput) String() string {
 19231  	return awsutil.Prettify(s)
 19232  }
 19233  
 19234  // GoString returns the string representation.
 19235  //
 19236  // API parameter values that are decorated as "sensitive" in the API will not
 19237  // be included in the string output. The member name will be present, but the
 19238  // value will be replaced with "sensitive".
 19239  func (s SearchContactsOutput) GoString() string {
 19240  	return s.String()
 19241  }
 19242  
 19243  // SetContacts sets the Contacts field's value.
 19244  func (s *SearchContactsOutput) SetContacts(v []*ContactData) *SearchContactsOutput {
 19245  	s.Contacts = v
 19246  	return s
 19247  }
 19248  
 19249  // SetNextToken sets the NextToken field's value.
 19250  func (s *SearchContactsOutput) SetNextToken(v string) *SearchContactsOutput {
 19251  	s.NextToken = &v
 19252  	return s
 19253  }
 19254  
 19255  // SetTotalCount sets the TotalCount field's value.
 19256  func (s *SearchContactsOutput) SetTotalCount(v int64) *SearchContactsOutput {
 19257  	s.TotalCount = &v
 19258  	return s
 19259  }
 19260  
 19261  type SearchDevicesInput struct {
 19262  	_ struct{} `type:"structure"`
 19263  
 19264  	// The filters to use to list a specified set of devices. Supported filter keys
 19265  	// are DeviceName, DeviceStatus, DeviceStatusDetailCode, RoomName, DeviceType,
 19266  	// DeviceSerialNumber, UnassociatedOnly, ConnectionStatus (ONLINE and OFFLINE),
 19267  	// NetworkProfileName, NetworkProfileArn, Feature, and FailureCode.
 19268  	Filters []*Filter `type:"list"`
 19269  
 19270  	// The maximum number of results to include in the response. If more results
 19271  	// exist than the specified MaxResults value, a token is included in the response
 19272  	// so that the remaining results can be retrieved.
 19273  	MaxResults *int64 `min:"1" type:"integer"`
 19274  
 19275  	// An optional token returned from a prior request. Use this token for pagination
 19276  	// of results from this action. If this parameter is specified, the response
 19277  	// includes only results beyond the token, up to the value specified by MaxResults.
 19278  	NextToken *string `min:"1" type:"string"`
 19279  
 19280  	// The sort order to use in listing the specified set of devices. Supported
 19281  	// sort keys are DeviceName, DeviceStatus, RoomName, DeviceType, DeviceSerialNumber,
 19282  	// ConnectionStatus, NetworkProfileName, NetworkProfileArn, Feature, and FailureCode.
 19283  	SortCriteria []*Sort `type:"list"`
 19284  }
 19285  
 19286  // String returns the string representation.
 19287  //
 19288  // API parameter values that are decorated as "sensitive" in the API will not
 19289  // be included in the string output. The member name will be present, but the
 19290  // value will be replaced with "sensitive".
 19291  func (s SearchDevicesInput) String() string {
 19292  	return awsutil.Prettify(s)
 19293  }
 19294  
 19295  // GoString returns the string representation.
 19296  //
 19297  // API parameter values that are decorated as "sensitive" in the API will not
 19298  // be included in the string output. The member name will be present, but the
 19299  // value will be replaced with "sensitive".
 19300  func (s SearchDevicesInput) GoString() string {
 19301  	return s.String()
 19302  }
 19303  
 19304  // Validate inspects the fields of the type to determine if they are valid.
 19305  func (s *SearchDevicesInput) Validate() error {
 19306  	invalidParams := request.ErrInvalidParams{Context: "SearchDevicesInput"}
 19307  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19308  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19309  	}
 19310  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19311  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19312  	}
 19313  	if s.Filters != nil {
 19314  		for i, v := range s.Filters {
 19315  			if v == nil {
 19316  				continue
 19317  			}
 19318  			if err := v.Validate(); err != nil {
 19319  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19320  			}
 19321  		}
 19322  	}
 19323  	if s.SortCriteria != nil {
 19324  		for i, v := range s.SortCriteria {
 19325  			if v == nil {
 19326  				continue
 19327  			}
 19328  			if err := v.Validate(); err != nil {
 19329  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19330  			}
 19331  		}
 19332  	}
 19333  
 19334  	if invalidParams.Len() > 0 {
 19335  		return invalidParams
 19336  	}
 19337  	return nil
 19338  }
 19339  
 19340  // SetFilters sets the Filters field's value.
 19341  func (s *SearchDevicesInput) SetFilters(v []*Filter) *SearchDevicesInput {
 19342  	s.Filters = v
 19343  	return s
 19344  }
 19345  
 19346  // SetMaxResults sets the MaxResults field's value.
 19347  func (s *SearchDevicesInput) SetMaxResults(v int64) *SearchDevicesInput {
 19348  	s.MaxResults = &v
 19349  	return s
 19350  }
 19351  
 19352  // SetNextToken sets the NextToken field's value.
 19353  func (s *SearchDevicesInput) SetNextToken(v string) *SearchDevicesInput {
 19354  	s.NextToken = &v
 19355  	return s
 19356  }
 19357  
 19358  // SetSortCriteria sets the SortCriteria field's value.
 19359  func (s *SearchDevicesInput) SetSortCriteria(v []*Sort) *SearchDevicesInput {
 19360  	s.SortCriteria = v
 19361  	return s
 19362  }
 19363  
 19364  type SearchDevicesOutput struct {
 19365  	_ struct{} `type:"structure"`
 19366  
 19367  	// The devices that meet the specified set of filter criteria, in sort order.
 19368  	Devices []*DeviceData `type:"list"`
 19369  
 19370  	// The token returned to indicate that there is more data available.
 19371  	NextToken *string `min:"1" type:"string"`
 19372  
 19373  	// The total number of devices returned.
 19374  	TotalCount *int64 `type:"integer"`
 19375  }
 19376  
 19377  // String returns the string representation.
 19378  //
 19379  // API parameter values that are decorated as "sensitive" in the API will not
 19380  // be included in the string output. The member name will be present, but the
 19381  // value will be replaced with "sensitive".
 19382  func (s SearchDevicesOutput) String() string {
 19383  	return awsutil.Prettify(s)
 19384  }
 19385  
 19386  // GoString returns the string representation.
 19387  //
 19388  // API parameter values that are decorated as "sensitive" in the API will not
 19389  // be included in the string output. The member name will be present, but the
 19390  // value will be replaced with "sensitive".
 19391  func (s SearchDevicesOutput) GoString() string {
 19392  	return s.String()
 19393  }
 19394  
 19395  // SetDevices sets the Devices field's value.
 19396  func (s *SearchDevicesOutput) SetDevices(v []*DeviceData) *SearchDevicesOutput {
 19397  	s.Devices = v
 19398  	return s
 19399  }
 19400  
 19401  // SetNextToken sets the NextToken field's value.
 19402  func (s *SearchDevicesOutput) SetNextToken(v string) *SearchDevicesOutput {
 19403  	s.NextToken = &v
 19404  	return s
 19405  }
 19406  
 19407  // SetTotalCount sets the TotalCount field's value.
 19408  func (s *SearchDevicesOutput) SetTotalCount(v int64) *SearchDevicesOutput {
 19409  	s.TotalCount = &v
 19410  	return s
 19411  }
 19412  
 19413  type SearchNetworkProfilesInput struct {
 19414  	_ struct{} `type:"structure"`
 19415  
 19416  	// The filters to use to list a specified set of network profiles. Valid filters
 19417  	// are NetworkProfileName, Ssid, and SecurityType.
 19418  	Filters []*Filter `type:"list"`
 19419  
 19420  	// The maximum number of results to include in the response. If more results
 19421  	// exist than the specified MaxResults value, a token is included in the response
 19422  	// so that the remaining results can be retrieved.
 19423  	MaxResults *int64 `min:"1" type:"integer"`
 19424  
 19425  	// An optional token returned from a prior request. Use this token for pagination
 19426  	// of results from this action. If this parameter is specified, the response
 19427  	// includes only results beyond the token, up to the value specified by MaxResults.
 19428  	NextToken *string `min:"1" type:"string"`
 19429  
 19430  	// The sort order to use to list the specified set of network profiles. Valid
 19431  	// sort criteria includes NetworkProfileName, Ssid, and SecurityType.
 19432  	SortCriteria []*Sort `type:"list"`
 19433  }
 19434  
 19435  // String returns the string representation.
 19436  //
 19437  // API parameter values that are decorated as "sensitive" in the API will not
 19438  // be included in the string output. The member name will be present, but the
 19439  // value will be replaced with "sensitive".
 19440  func (s SearchNetworkProfilesInput) String() string {
 19441  	return awsutil.Prettify(s)
 19442  }
 19443  
 19444  // GoString returns the string representation.
 19445  //
 19446  // API parameter values that are decorated as "sensitive" in the API will not
 19447  // be included in the string output. The member name will be present, but the
 19448  // value will be replaced with "sensitive".
 19449  func (s SearchNetworkProfilesInput) GoString() string {
 19450  	return s.String()
 19451  }
 19452  
 19453  // Validate inspects the fields of the type to determine if they are valid.
 19454  func (s *SearchNetworkProfilesInput) Validate() error {
 19455  	invalidParams := request.ErrInvalidParams{Context: "SearchNetworkProfilesInput"}
 19456  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19457  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19458  	}
 19459  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19460  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19461  	}
 19462  	if s.Filters != nil {
 19463  		for i, v := range s.Filters {
 19464  			if v == nil {
 19465  				continue
 19466  			}
 19467  			if err := v.Validate(); err != nil {
 19468  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19469  			}
 19470  		}
 19471  	}
 19472  	if s.SortCriteria != nil {
 19473  		for i, v := range s.SortCriteria {
 19474  			if v == nil {
 19475  				continue
 19476  			}
 19477  			if err := v.Validate(); err != nil {
 19478  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19479  			}
 19480  		}
 19481  	}
 19482  
 19483  	if invalidParams.Len() > 0 {
 19484  		return invalidParams
 19485  	}
 19486  	return nil
 19487  }
 19488  
 19489  // SetFilters sets the Filters field's value.
 19490  func (s *SearchNetworkProfilesInput) SetFilters(v []*Filter) *SearchNetworkProfilesInput {
 19491  	s.Filters = v
 19492  	return s
 19493  }
 19494  
 19495  // SetMaxResults sets the MaxResults field's value.
 19496  func (s *SearchNetworkProfilesInput) SetMaxResults(v int64) *SearchNetworkProfilesInput {
 19497  	s.MaxResults = &v
 19498  	return s
 19499  }
 19500  
 19501  // SetNextToken sets the NextToken field's value.
 19502  func (s *SearchNetworkProfilesInput) SetNextToken(v string) *SearchNetworkProfilesInput {
 19503  	s.NextToken = &v
 19504  	return s
 19505  }
 19506  
 19507  // SetSortCriteria sets the SortCriteria field's value.
 19508  func (s *SearchNetworkProfilesInput) SetSortCriteria(v []*Sort) *SearchNetworkProfilesInput {
 19509  	s.SortCriteria = v
 19510  	return s
 19511  }
 19512  
 19513  type SearchNetworkProfilesOutput struct {
 19514  	_ struct{} `type:"structure"`
 19515  
 19516  	// The network profiles that meet the specified set of filter criteria, in sort
 19517  	// order. It is a list of NetworkProfileData objects.
 19518  	NetworkProfiles []*NetworkProfileData `type:"list"`
 19519  
 19520  	// An optional token returned from a prior request. Use this token for pagination
 19521  	// of results from this action. If this parameter is specified, the response
 19522  	// includes only results beyond the token, up to the value specified by MaxResults.
 19523  	NextToken *string `min:"1" type:"string"`
 19524  
 19525  	// The total number of network profiles returned.
 19526  	TotalCount *int64 `type:"integer"`
 19527  }
 19528  
 19529  // String returns the string representation.
 19530  //
 19531  // API parameter values that are decorated as "sensitive" in the API will not
 19532  // be included in the string output. The member name will be present, but the
 19533  // value will be replaced with "sensitive".
 19534  func (s SearchNetworkProfilesOutput) String() string {
 19535  	return awsutil.Prettify(s)
 19536  }
 19537  
 19538  // GoString returns the string representation.
 19539  //
 19540  // API parameter values that are decorated as "sensitive" in the API will not
 19541  // be included in the string output. The member name will be present, but the
 19542  // value will be replaced with "sensitive".
 19543  func (s SearchNetworkProfilesOutput) GoString() string {
 19544  	return s.String()
 19545  }
 19546  
 19547  // SetNetworkProfiles sets the NetworkProfiles field's value.
 19548  func (s *SearchNetworkProfilesOutput) SetNetworkProfiles(v []*NetworkProfileData) *SearchNetworkProfilesOutput {
 19549  	s.NetworkProfiles = v
 19550  	return s
 19551  }
 19552  
 19553  // SetNextToken sets the NextToken field's value.
 19554  func (s *SearchNetworkProfilesOutput) SetNextToken(v string) *SearchNetworkProfilesOutput {
 19555  	s.NextToken = &v
 19556  	return s
 19557  }
 19558  
 19559  // SetTotalCount sets the TotalCount field's value.
 19560  func (s *SearchNetworkProfilesOutput) SetTotalCount(v int64) *SearchNetworkProfilesOutput {
 19561  	s.TotalCount = &v
 19562  	return s
 19563  }
 19564  
 19565  type SearchProfilesInput struct {
 19566  	_ struct{} `type:"structure"`
 19567  
 19568  	// The filters to use to list a specified set of room profiles. Supported filter
 19569  	// keys are ProfileName and Address. Required.
 19570  	Filters []*Filter `type:"list"`
 19571  
 19572  	// The maximum number of results to include in the response. If more results
 19573  	// exist than the specified MaxResults value, a token is included in the response
 19574  	// so that the remaining results can be retrieved.
 19575  	MaxResults *int64 `min:"1" type:"integer"`
 19576  
 19577  	// An optional token returned from a prior request. Use this token for pagination
 19578  	// of results from this action. If this parameter is specified, the response
 19579  	// includes only results beyond the token, up to the value specified by MaxResults.
 19580  	NextToken *string `min:"1" type:"string"`
 19581  
 19582  	// The sort order to use in listing the specified set of room profiles. Supported
 19583  	// sort keys are ProfileName and Address.
 19584  	SortCriteria []*Sort `type:"list"`
 19585  }
 19586  
 19587  // String returns the string representation.
 19588  //
 19589  // API parameter values that are decorated as "sensitive" in the API will not
 19590  // be included in the string output. The member name will be present, but the
 19591  // value will be replaced with "sensitive".
 19592  func (s SearchProfilesInput) String() string {
 19593  	return awsutil.Prettify(s)
 19594  }
 19595  
 19596  // GoString returns the string representation.
 19597  //
 19598  // API parameter values that are decorated as "sensitive" in the API will not
 19599  // be included in the string output. The member name will be present, but the
 19600  // value will be replaced with "sensitive".
 19601  func (s SearchProfilesInput) GoString() string {
 19602  	return s.String()
 19603  }
 19604  
 19605  // Validate inspects the fields of the type to determine if they are valid.
 19606  func (s *SearchProfilesInput) Validate() error {
 19607  	invalidParams := request.ErrInvalidParams{Context: "SearchProfilesInput"}
 19608  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19609  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19610  	}
 19611  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19612  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19613  	}
 19614  	if s.Filters != nil {
 19615  		for i, v := range s.Filters {
 19616  			if v == nil {
 19617  				continue
 19618  			}
 19619  			if err := v.Validate(); err != nil {
 19620  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19621  			}
 19622  		}
 19623  	}
 19624  	if s.SortCriteria != nil {
 19625  		for i, v := range s.SortCriteria {
 19626  			if v == nil {
 19627  				continue
 19628  			}
 19629  			if err := v.Validate(); err != nil {
 19630  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19631  			}
 19632  		}
 19633  	}
 19634  
 19635  	if invalidParams.Len() > 0 {
 19636  		return invalidParams
 19637  	}
 19638  	return nil
 19639  }
 19640  
 19641  // SetFilters sets the Filters field's value.
 19642  func (s *SearchProfilesInput) SetFilters(v []*Filter) *SearchProfilesInput {
 19643  	s.Filters = v
 19644  	return s
 19645  }
 19646  
 19647  // SetMaxResults sets the MaxResults field's value.
 19648  func (s *SearchProfilesInput) SetMaxResults(v int64) *SearchProfilesInput {
 19649  	s.MaxResults = &v
 19650  	return s
 19651  }
 19652  
 19653  // SetNextToken sets the NextToken field's value.
 19654  func (s *SearchProfilesInput) SetNextToken(v string) *SearchProfilesInput {
 19655  	s.NextToken = &v
 19656  	return s
 19657  }
 19658  
 19659  // SetSortCriteria sets the SortCriteria field's value.
 19660  func (s *SearchProfilesInput) SetSortCriteria(v []*Sort) *SearchProfilesInput {
 19661  	s.SortCriteria = v
 19662  	return s
 19663  }
 19664  
 19665  type SearchProfilesOutput struct {
 19666  	_ struct{} `type:"structure"`
 19667  
 19668  	// The token returned to indicate that there is more data available.
 19669  	NextToken *string `min:"1" type:"string"`
 19670  
 19671  	// The profiles that meet the specified set of filter criteria, in sort order.
 19672  	Profiles []*ProfileData `type:"list"`
 19673  
 19674  	// The total number of room profiles returned.
 19675  	TotalCount *int64 `type:"integer"`
 19676  }
 19677  
 19678  // String returns the string representation.
 19679  //
 19680  // API parameter values that are decorated as "sensitive" in the API will not
 19681  // be included in the string output. The member name will be present, but the
 19682  // value will be replaced with "sensitive".
 19683  func (s SearchProfilesOutput) String() string {
 19684  	return awsutil.Prettify(s)
 19685  }
 19686  
 19687  // GoString returns the string representation.
 19688  //
 19689  // API parameter values that are decorated as "sensitive" in the API will not
 19690  // be included in the string output. The member name will be present, but the
 19691  // value will be replaced with "sensitive".
 19692  func (s SearchProfilesOutput) GoString() string {
 19693  	return s.String()
 19694  }
 19695  
 19696  // SetNextToken sets the NextToken field's value.
 19697  func (s *SearchProfilesOutput) SetNextToken(v string) *SearchProfilesOutput {
 19698  	s.NextToken = &v
 19699  	return s
 19700  }
 19701  
 19702  // SetProfiles sets the Profiles field's value.
 19703  func (s *SearchProfilesOutput) SetProfiles(v []*ProfileData) *SearchProfilesOutput {
 19704  	s.Profiles = v
 19705  	return s
 19706  }
 19707  
 19708  // SetTotalCount sets the TotalCount field's value.
 19709  func (s *SearchProfilesOutput) SetTotalCount(v int64) *SearchProfilesOutput {
 19710  	s.TotalCount = &v
 19711  	return s
 19712  }
 19713  
 19714  type SearchRoomsInput struct {
 19715  	_ struct{} `type:"structure"`
 19716  
 19717  	// The filters to use to list a specified set of rooms. The supported filter
 19718  	// keys are RoomName and ProfileName.
 19719  	Filters []*Filter `type:"list"`
 19720  
 19721  	// The maximum number of results to include in the response. If more results
 19722  	// exist than the specified MaxResults value, a token is included in the response
 19723  	// so that the remaining results can be retrieved.
 19724  	MaxResults *int64 `min:"1" type:"integer"`
 19725  
 19726  	// An optional token returned from a prior request. Use this token for pagination
 19727  	// of results from this action. If this parameter is specified, the response
 19728  	// includes only results beyond the token, up to the value specified by MaxResults.
 19729  	NextToken *string `min:"1" type:"string"`
 19730  
 19731  	// The sort order to use in listing the specified set of rooms. The supported
 19732  	// sort keys are RoomName and ProfileName.
 19733  	SortCriteria []*Sort `type:"list"`
 19734  }
 19735  
 19736  // String returns the string representation.
 19737  //
 19738  // API parameter values that are decorated as "sensitive" in the API will not
 19739  // be included in the string output. The member name will be present, but the
 19740  // value will be replaced with "sensitive".
 19741  func (s SearchRoomsInput) String() string {
 19742  	return awsutil.Prettify(s)
 19743  }
 19744  
 19745  // GoString returns the string representation.
 19746  //
 19747  // API parameter values that are decorated as "sensitive" in the API will not
 19748  // be included in the string output. The member name will be present, but the
 19749  // value will be replaced with "sensitive".
 19750  func (s SearchRoomsInput) GoString() string {
 19751  	return s.String()
 19752  }
 19753  
 19754  // Validate inspects the fields of the type to determine if they are valid.
 19755  func (s *SearchRoomsInput) Validate() error {
 19756  	invalidParams := request.ErrInvalidParams{Context: "SearchRoomsInput"}
 19757  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19758  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19759  	}
 19760  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19761  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19762  	}
 19763  	if s.Filters != nil {
 19764  		for i, v := range s.Filters {
 19765  			if v == nil {
 19766  				continue
 19767  			}
 19768  			if err := v.Validate(); err != nil {
 19769  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19770  			}
 19771  		}
 19772  	}
 19773  	if s.SortCriteria != nil {
 19774  		for i, v := range s.SortCriteria {
 19775  			if v == nil {
 19776  				continue
 19777  			}
 19778  			if err := v.Validate(); err != nil {
 19779  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19780  			}
 19781  		}
 19782  	}
 19783  
 19784  	if invalidParams.Len() > 0 {
 19785  		return invalidParams
 19786  	}
 19787  	return nil
 19788  }
 19789  
 19790  // SetFilters sets the Filters field's value.
 19791  func (s *SearchRoomsInput) SetFilters(v []*Filter) *SearchRoomsInput {
 19792  	s.Filters = v
 19793  	return s
 19794  }
 19795  
 19796  // SetMaxResults sets the MaxResults field's value.
 19797  func (s *SearchRoomsInput) SetMaxResults(v int64) *SearchRoomsInput {
 19798  	s.MaxResults = &v
 19799  	return s
 19800  }
 19801  
 19802  // SetNextToken sets the NextToken field's value.
 19803  func (s *SearchRoomsInput) SetNextToken(v string) *SearchRoomsInput {
 19804  	s.NextToken = &v
 19805  	return s
 19806  }
 19807  
 19808  // SetSortCriteria sets the SortCriteria field's value.
 19809  func (s *SearchRoomsInput) SetSortCriteria(v []*Sort) *SearchRoomsInput {
 19810  	s.SortCriteria = v
 19811  	return s
 19812  }
 19813  
 19814  type SearchRoomsOutput struct {
 19815  	_ struct{} `type:"structure"`
 19816  
 19817  	// The token returned to indicate that there is more data available.
 19818  	NextToken *string `min:"1" type:"string"`
 19819  
 19820  	// The rooms that meet the specified set of filter criteria, in sort order.
 19821  	Rooms []*RoomData `type:"list"`
 19822  
 19823  	// The total number of rooms returned.
 19824  	TotalCount *int64 `type:"integer"`
 19825  }
 19826  
 19827  // String returns the string representation.
 19828  //
 19829  // API parameter values that are decorated as "sensitive" in the API will not
 19830  // be included in the string output. The member name will be present, but the
 19831  // value will be replaced with "sensitive".
 19832  func (s SearchRoomsOutput) String() string {
 19833  	return awsutil.Prettify(s)
 19834  }
 19835  
 19836  // GoString returns the string representation.
 19837  //
 19838  // API parameter values that are decorated as "sensitive" in the API will not
 19839  // be included in the string output. The member name will be present, but the
 19840  // value will be replaced with "sensitive".
 19841  func (s SearchRoomsOutput) GoString() string {
 19842  	return s.String()
 19843  }
 19844  
 19845  // SetNextToken sets the NextToken field's value.
 19846  func (s *SearchRoomsOutput) SetNextToken(v string) *SearchRoomsOutput {
 19847  	s.NextToken = &v
 19848  	return s
 19849  }
 19850  
 19851  // SetRooms sets the Rooms field's value.
 19852  func (s *SearchRoomsOutput) SetRooms(v []*RoomData) *SearchRoomsOutput {
 19853  	s.Rooms = v
 19854  	return s
 19855  }
 19856  
 19857  // SetTotalCount sets the TotalCount field's value.
 19858  func (s *SearchRoomsOutput) SetTotalCount(v int64) *SearchRoomsOutput {
 19859  	s.TotalCount = &v
 19860  	return s
 19861  }
 19862  
 19863  type SearchSkillGroupsInput struct {
 19864  	_ struct{} `type:"structure"`
 19865  
 19866  	// The filters to use to list a specified set of skill groups. The supported
 19867  	// filter key is SkillGroupName.
 19868  	Filters []*Filter `type:"list"`
 19869  
 19870  	// The maximum number of results to include in the response. If more results
 19871  	// exist than the specified MaxResults value, a token is included in the response
 19872  	// so that the remaining results can be retrieved.
 19873  	MaxResults *int64 `min:"1" type:"integer"`
 19874  
 19875  	// An optional token returned from a prior request. Use this token for pagination
 19876  	// of results from this action. If this parameter is specified, the response
 19877  	// includes only results beyond the token, up to the value specified by MaxResults.
 19878  	// Required.
 19879  	NextToken *string `min:"1" type:"string"`
 19880  
 19881  	// The sort order to use in listing the specified set of skill groups. The supported
 19882  	// sort key is SkillGroupName.
 19883  	SortCriteria []*Sort `type:"list"`
 19884  }
 19885  
 19886  // String returns the string representation.
 19887  //
 19888  // API parameter values that are decorated as "sensitive" in the API will not
 19889  // be included in the string output. The member name will be present, but the
 19890  // value will be replaced with "sensitive".
 19891  func (s SearchSkillGroupsInput) String() string {
 19892  	return awsutil.Prettify(s)
 19893  }
 19894  
 19895  // GoString returns the string representation.
 19896  //
 19897  // API parameter values that are decorated as "sensitive" in the API will not
 19898  // be included in the string output. The member name will be present, but the
 19899  // value will be replaced with "sensitive".
 19900  func (s SearchSkillGroupsInput) GoString() string {
 19901  	return s.String()
 19902  }
 19903  
 19904  // Validate inspects the fields of the type to determine if they are valid.
 19905  func (s *SearchSkillGroupsInput) Validate() error {
 19906  	invalidParams := request.ErrInvalidParams{Context: "SearchSkillGroupsInput"}
 19907  	if s.MaxResults != nil && *s.MaxResults < 1 {
 19908  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 19909  	}
 19910  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 19911  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 19912  	}
 19913  	if s.Filters != nil {
 19914  		for i, v := range s.Filters {
 19915  			if v == nil {
 19916  				continue
 19917  			}
 19918  			if err := v.Validate(); err != nil {
 19919  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 19920  			}
 19921  		}
 19922  	}
 19923  	if s.SortCriteria != nil {
 19924  		for i, v := range s.SortCriteria {
 19925  			if v == nil {
 19926  				continue
 19927  			}
 19928  			if err := v.Validate(); err != nil {
 19929  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 19930  			}
 19931  		}
 19932  	}
 19933  
 19934  	if invalidParams.Len() > 0 {
 19935  		return invalidParams
 19936  	}
 19937  	return nil
 19938  }
 19939  
 19940  // SetFilters sets the Filters field's value.
 19941  func (s *SearchSkillGroupsInput) SetFilters(v []*Filter) *SearchSkillGroupsInput {
 19942  	s.Filters = v
 19943  	return s
 19944  }
 19945  
 19946  // SetMaxResults sets the MaxResults field's value.
 19947  func (s *SearchSkillGroupsInput) SetMaxResults(v int64) *SearchSkillGroupsInput {
 19948  	s.MaxResults = &v
 19949  	return s
 19950  }
 19951  
 19952  // SetNextToken sets the NextToken field's value.
 19953  func (s *SearchSkillGroupsInput) SetNextToken(v string) *SearchSkillGroupsInput {
 19954  	s.NextToken = &v
 19955  	return s
 19956  }
 19957  
 19958  // SetSortCriteria sets the SortCriteria field's value.
 19959  func (s *SearchSkillGroupsInput) SetSortCriteria(v []*Sort) *SearchSkillGroupsInput {
 19960  	s.SortCriteria = v
 19961  	return s
 19962  }
 19963  
 19964  type SearchSkillGroupsOutput struct {
 19965  	_ struct{} `type:"structure"`
 19966  
 19967  	// The token returned to indicate that there is more data available.
 19968  	NextToken *string `min:"1" type:"string"`
 19969  
 19970  	// The skill groups that meet the filter criteria, in sort order.
 19971  	SkillGroups []*SkillGroupData `type:"list"`
 19972  
 19973  	// The total number of skill groups returned.
 19974  	TotalCount *int64 `type:"integer"`
 19975  }
 19976  
 19977  // String returns the string representation.
 19978  //
 19979  // API parameter values that are decorated as "sensitive" in the API will not
 19980  // be included in the string output. The member name will be present, but the
 19981  // value will be replaced with "sensitive".
 19982  func (s SearchSkillGroupsOutput) String() string {
 19983  	return awsutil.Prettify(s)
 19984  }
 19985  
 19986  // GoString returns the string representation.
 19987  //
 19988  // API parameter values that are decorated as "sensitive" in the API will not
 19989  // be included in the string output. The member name will be present, but the
 19990  // value will be replaced with "sensitive".
 19991  func (s SearchSkillGroupsOutput) GoString() string {
 19992  	return s.String()
 19993  }
 19994  
 19995  // SetNextToken sets the NextToken field's value.
 19996  func (s *SearchSkillGroupsOutput) SetNextToken(v string) *SearchSkillGroupsOutput {
 19997  	s.NextToken = &v
 19998  	return s
 19999  }
 20000  
 20001  // SetSkillGroups sets the SkillGroups field's value.
 20002  func (s *SearchSkillGroupsOutput) SetSkillGroups(v []*SkillGroupData) *SearchSkillGroupsOutput {
 20003  	s.SkillGroups = v
 20004  	return s
 20005  }
 20006  
 20007  // SetTotalCount sets the TotalCount field's value.
 20008  func (s *SearchSkillGroupsOutput) SetTotalCount(v int64) *SearchSkillGroupsOutput {
 20009  	s.TotalCount = &v
 20010  	return s
 20011  }
 20012  
 20013  type SearchUsersInput struct {
 20014  	_ struct{} `type:"structure"`
 20015  
 20016  	// The filters to use for listing a specific set of users. Required. Supported
 20017  	// filter keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.
 20018  	Filters []*Filter `type:"list"`
 20019  
 20020  	// The maximum number of results to include in the response. If more results
 20021  	// exist than the specified MaxResults value, a token is included in the response
 20022  	// so that the remaining results can be retrieved. Required.
 20023  	MaxResults *int64 `min:"1" type:"integer"`
 20024  
 20025  	// An optional token returned from a prior request. Use this token for pagination
 20026  	// of results from this action. If this parameter is specified, the response
 20027  	// includes only results beyond the token, up to the value specified by MaxResults.
 20028  	// Required.
 20029  	NextToken *string `min:"1" type:"string"`
 20030  
 20031  	// The sort order to use in listing the filtered set of users. Required. Supported
 20032  	// sort keys are UserId, FirstName, LastName, Email, and EnrollmentStatus.
 20033  	SortCriteria []*Sort `type:"list"`
 20034  }
 20035  
 20036  // String returns the string representation.
 20037  //
 20038  // API parameter values that are decorated as "sensitive" in the API will not
 20039  // be included in the string output. The member name will be present, but the
 20040  // value will be replaced with "sensitive".
 20041  func (s SearchUsersInput) String() string {
 20042  	return awsutil.Prettify(s)
 20043  }
 20044  
 20045  // GoString returns the string representation.
 20046  //
 20047  // API parameter values that are decorated as "sensitive" in the API will not
 20048  // be included in the string output. The member name will be present, but the
 20049  // value will be replaced with "sensitive".
 20050  func (s SearchUsersInput) GoString() string {
 20051  	return s.String()
 20052  }
 20053  
 20054  // Validate inspects the fields of the type to determine if they are valid.
 20055  func (s *SearchUsersInput) Validate() error {
 20056  	invalidParams := request.ErrInvalidParams{Context: "SearchUsersInput"}
 20057  	if s.MaxResults != nil && *s.MaxResults < 1 {
 20058  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
 20059  	}
 20060  	if s.NextToken != nil && len(*s.NextToken) < 1 {
 20061  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
 20062  	}
 20063  	if s.Filters != nil {
 20064  		for i, v := range s.Filters {
 20065  			if v == nil {
 20066  				continue
 20067  			}
 20068  			if err := v.Validate(); err != nil {
 20069  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
 20070  			}
 20071  		}
 20072  	}
 20073  	if s.SortCriteria != nil {
 20074  		for i, v := range s.SortCriteria {
 20075  			if v == nil {
 20076  				continue
 20077  			}
 20078  			if err := v.Validate(); err != nil {
 20079  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SortCriteria", i), err.(request.ErrInvalidParams))
 20080  			}
 20081  		}
 20082  	}
 20083  
 20084  	if invalidParams.Len() > 0 {
 20085  		return invalidParams
 20086  	}
 20087  	return nil
 20088  }
 20089  
 20090  // SetFilters sets the Filters field's value.
 20091  func (s *SearchUsersInput) SetFilters(v []*Filter) *SearchUsersInput {
 20092  	s.Filters = v
 20093  	return s
 20094  }
 20095  
 20096  // SetMaxResults sets the MaxResults field's value.
 20097  func (s *SearchUsersInput) SetMaxResults(v int64) *SearchUsersInput {
 20098  	s.MaxResults = &v
 20099  	return s
 20100  }
 20101  
 20102  // SetNextToken sets the NextToken field's value.
 20103  func (s *SearchUsersInput) SetNextToken(v string) *SearchUsersInput {
 20104  	s.NextToken = &v
 20105  	return s
 20106  }
 20107  
 20108  // SetSortCriteria sets the SortCriteria field's value.
 20109  func (s *SearchUsersInput) SetSortCriteria(v []*Sort) *SearchUsersInput {
 20110  	s.SortCriteria = v
 20111  	return s
 20112  }
 20113  
 20114  type SearchUsersOutput struct {
 20115  	_ struct{} `type:"structure"`
 20116  
 20117  	// The token returned to indicate that there is more data available.
 20118  	NextToken *string `min:"1" type:"string"`
 20119  
 20120  	// The total number of users returned.
 20121  	TotalCount *int64 `type:"integer"`
 20122  
 20123  	// The users that meet the specified set of filter criteria, in sort order.
 20124  	Users []*UserData `type:"list"`
 20125  }
 20126  
 20127  // String returns the string representation.
 20128  //
 20129  // API parameter values that are decorated as "sensitive" in the API will not
 20130  // be included in the string output. The member name will be present, but the
 20131  // value will be replaced with "sensitive".
 20132  func (s SearchUsersOutput) String() string {
 20133  	return awsutil.Prettify(s)
 20134  }
 20135  
 20136  // GoString returns the string representation.
 20137  //
 20138  // API parameter values that are decorated as "sensitive" in the API will not
 20139  // be included in the string output. The member name will be present, but the
 20140  // value will be replaced with "sensitive".
 20141  func (s SearchUsersOutput) GoString() string {
 20142  	return s.String()
 20143  }
 20144  
 20145  // SetNextToken sets the NextToken field's value.
 20146  func (s *SearchUsersOutput) SetNextToken(v string) *SearchUsersOutput {
 20147  	s.NextToken = &v
 20148  	return s
 20149  }
 20150  
 20151  // SetTotalCount sets the TotalCount field's value.
 20152  func (s *SearchUsersOutput) SetTotalCount(v int64) *SearchUsersOutput {
 20153  	s.TotalCount = &v
 20154  	return s
 20155  }
 20156  
 20157  // SetUsers sets the Users field's value.
 20158  func (s *SearchUsersOutput) SetUsers(v []*UserData) *SearchUsersOutput {
 20159  	s.Users = v
 20160  	return s
 20161  }
 20162  
 20163  type SendAnnouncementInput struct {
 20164  	_ struct{} `type:"structure"`
 20165  
 20166  	// The unique, user-specified identifier for the request that ensures idempotency.
 20167  	ClientRequestToken *string `min:"10" type:"string" idempotencyToken:"true"`
 20168  
 20169  	// The announcement content. This can contain only one of the three possible
 20170  	// announcement types (text, SSML or audio).
 20171  	//
 20172  	// Content is a required field
 20173  	Content *Content `type:"structure" required:"true"`
 20174  
 20175  	// The filters to use to send an announcement to a specified list of rooms.
 20176  	// The supported filter keys are RoomName, ProfileName, RoomArn, and ProfileArn.
 20177  	// To send to all rooms, specify an empty RoomFilters list.
 20178  	//
 20179  	// RoomFilters is a required field
 20180  	RoomFilters []*Filter `type:"list" required:"true"`
 20181  
 20182  	// The time to live for an announcement. Default is 300. If delivery doesn't
 20183  	// occur within this time, the announcement is not delivered.
 20184  	TimeToLiveInSeconds *int64 `min:"1" type:"integer"`
 20185  }
 20186  
 20187  // String returns the string representation.
 20188  //
 20189  // API parameter values that are decorated as "sensitive" in the API will not
 20190  // be included in the string output. The member name will be present, but the
 20191  // value will be replaced with "sensitive".
 20192  func (s SendAnnouncementInput) String() string {
 20193  	return awsutil.Prettify(s)
 20194  }
 20195  
 20196  // GoString returns the string representation.
 20197  //
 20198  // API parameter values that are decorated as "sensitive" in the API will not
 20199  // be included in the string output. The member name will be present, but the
 20200  // value will be replaced with "sensitive".
 20201  func (s SendAnnouncementInput) GoString() string {
 20202  	return s.String()
 20203  }
 20204  
 20205  // Validate inspects the fields of the type to determine if they are valid.
 20206  func (s *SendAnnouncementInput) Validate() error {
 20207  	invalidParams := request.ErrInvalidParams{Context: "SendAnnouncementInput"}
 20208  	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 10 {
 20209  		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 10))
 20210  	}
 20211  	if s.Content == nil {
 20212  		invalidParams.Add(request.NewErrParamRequired("Content"))
 20213  	}
 20214  	if s.RoomFilters == nil {
 20215  		invalidParams.Add(request.NewErrParamRequired("RoomFilters"))
 20216  	}
 20217  	if s.TimeToLiveInSeconds != nil && *s.TimeToLiveInSeconds < 1 {
 20218  		invalidParams.Add(request.NewErrParamMinValue("TimeToLiveInSeconds", 1))
 20219  	}
 20220  	if s.Content != nil {
 20221  		if err := s.Content.Validate(); err != nil {
 20222  			invalidParams.AddNested("Content", err.(request.ErrInvalidParams))
 20223  		}
 20224  	}
 20225  	if s.RoomFilters != nil {
 20226  		for i, v := range s.RoomFilters {
 20227  			if v == nil {
 20228  				continue
 20229  			}
 20230  			if err := v.Validate(); err != nil {
 20231  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RoomFilters", i), err.(request.ErrInvalidParams))
 20232  			}
 20233  		}
 20234  	}
 20235  
 20236  	if invalidParams.Len() > 0 {
 20237  		return invalidParams
 20238  	}
 20239  	return nil
 20240  }
 20241  
 20242  // SetClientRequestToken sets the ClientRequestToken field's value.
 20243  func (s *SendAnnouncementInput) SetClientRequestToken(v string) *SendAnnouncementInput {
 20244  	s.ClientRequestToken = &v
 20245  	return s
 20246  }
 20247  
 20248  // SetContent sets the Content field's value.
 20249  func (s *SendAnnouncementInput) SetContent(v *Content) *SendAnnouncementInput {
 20250  	s.Content = v
 20251  	return s
 20252  }
 20253  
 20254  // SetRoomFilters sets the RoomFilters field's value.
 20255  func (s *SendAnnouncementInput) SetRoomFilters(v []*Filter) *SendAnnouncementInput {
 20256  	s.RoomFilters = v
 20257  	return s
 20258  }
 20259  
 20260  // SetTimeToLiveInSeconds sets the TimeToLiveInSeconds field's value.
 20261  func (s *SendAnnouncementInput) SetTimeToLiveInSeconds(v int64) *SendAnnouncementInput {
 20262  	s.TimeToLiveInSeconds = &v
 20263  	return s
 20264  }
 20265  
 20266  type SendAnnouncementOutput struct {
 20267  	_ struct{} `type:"structure"`
 20268  
 20269  	// The identifier of the announcement.
 20270  	AnnouncementArn *string `type:"string"`
 20271  }
 20272  
 20273  // String returns the string representation.
 20274  //
 20275  // API parameter values that are decorated as "sensitive" in the API will not
 20276  // be included in the string output. The member name will be present, but the
 20277  // value will be replaced with "sensitive".
 20278  func (s SendAnnouncementOutput) String() string {
 20279  	return awsutil.Prettify(s)
 20280  }
 20281  
 20282  // GoString returns the string representation.
 20283  //
 20284  // API parameter values that are decorated as "sensitive" in the API will not
 20285  // be included in the string output. The member name will be present, but the
 20286  // value will be replaced with "sensitive".
 20287  func (s SendAnnouncementOutput) GoString() string {
 20288  	return s.String()
 20289  }
 20290  
 20291  // SetAnnouncementArn sets the AnnouncementArn field's value.
 20292  func (s *SendAnnouncementOutput) SetAnnouncementArn(v string) *SendAnnouncementOutput {
 20293  	s.AnnouncementArn = &v
 20294  	return s
 20295  }
 20296  
 20297  type SendInvitationInput struct {
 20298  	_ struct{} `type:"structure"`
 20299  
 20300  	// The ARN of the user to whom to send an invitation. Required.
 20301  	UserArn *string `type:"string"`
 20302  }
 20303  
 20304  // String returns the string representation.
 20305  //
 20306  // API parameter values that are decorated as "sensitive" in the API will not
 20307  // be included in the string output. The member name will be present, but the
 20308  // value will be replaced with "sensitive".
 20309  func (s SendInvitationInput) String() string {
 20310  	return awsutil.Prettify(s)
 20311  }
 20312  
 20313  // GoString returns the string representation.
 20314  //
 20315  // API parameter values that are decorated as "sensitive" in the API will not
 20316  // be included in the string output. The member name will be present, but the
 20317  // value will be replaced with "sensitive".
 20318  func (s SendInvitationInput) GoString() string {
 20319  	return s.String()
 20320  }
 20321  
 20322  // SetUserArn sets the UserArn field's value.
 20323  func (s *SendInvitationInput) SetUserArn(v string) *SendInvitationInput {
 20324  	s.UserArn = &v
 20325  	return s
 20326  }
 20327  
 20328  type SendInvitationOutput struct {
 20329  	_ struct{} `type:"structure"`
 20330  }
 20331  
 20332  // String returns the string representation.
 20333  //
 20334  // API parameter values that are decorated as "sensitive" in the API will not
 20335  // be included in the string output. The member name will be present, but the
 20336  // value will be replaced with "sensitive".
 20337  func (s SendInvitationOutput) String() string {
 20338  	return awsutil.Prettify(s)
 20339  }
 20340  
 20341  // GoString returns the string representation.
 20342  //
 20343  // API parameter values that are decorated as "sensitive" in the API will not
 20344  // be included in the string output. The member name will be present, but the
 20345  // value will be replaced with "sensitive".
 20346  func (s SendInvitationOutput) GoString() string {
 20347  	return s.String()
 20348  }
 20349  
 20350  // The SIP address for the contact containing the URI and SIP address type.
 20351  type SipAddress struct {
 20352  	_ struct{} `type:"structure"`
 20353  
 20354  	// The type of the SIP address.
 20355  	//
 20356  	// Type is a sensitive parameter and its value will be
 20357  	// replaced with "sensitive" in string returned by SipAddress's
 20358  	// String and GoString methods.
 20359  	//
 20360  	// Type is a required field
 20361  	Type *string `type:"string" required:"true" enum:"SipType" sensitive:"true"`
 20362  
 20363  	// The URI for the SIP address.
 20364  	//
 20365  	// Uri is a sensitive parameter and its value will be
 20366  	// replaced with "sensitive" in string returned by SipAddress's
 20367  	// String and GoString methods.
 20368  	//
 20369  	// Uri is a required field
 20370  	Uri *string `min:"1" type:"string" required:"true" sensitive:"true"`
 20371  }
 20372  
 20373  // String returns the string representation.
 20374  //
 20375  // API parameter values that are decorated as "sensitive" in the API will not
 20376  // be included in the string output. The member name will be present, but the
 20377  // value will be replaced with "sensitive".
 20378  func (s SipAddress) String() string {
 20379  	return awsutil.Prettify(s)
 20380  }
 20381  
 20382  // GoString returns the string representation.
 20383  //
 20384  // API parameter values that are decorated as "sensitive" in the API will not
 20385  // be included in the string output. The member name will be present, but the
 20386  // value will be replaced with "sensitive".
 20387  func (s SipAddress) GoString() string {
 20388  	return s.String()
 20389  }
 20390  
 20391  // Validate inspects the fields of the type to determine if they are valid.
 20392  func (s *SipAddress) Validate() error {
 20393  	invalidParams := request.ErrInvalidParams{Context: "SipAddress"}
 20394  	if s.Type == nil {
 20395  		invalidParams.Add(request.NewErrParamRequired("Type"))
 20396  	}
 20397  	if s.Uri == nil {
 20398  		invalidParams.Add(request.NewErrParamRequired("Uri"))
 20399  	}
 20400  	if s.Uri != nil && len(*s.Uri) < 1 {
 20401  		invalidParams.Add(request.NewErrParamMinLen("Uri", 1))
 20402  	}
 20403  
 20404  	if invalidParams.Len() > 0 {
 20405  		return invalidParams
 20406  	}
 20407  	return nil
 20408  }
 20409  
 20410  // SetType sets the Type field's value.
 20411  func (s *SipAddress) SetType(v string) *SipAddress {
 20412  	s.Type = &v
 20413  	return s
 20414  }
 20415  
 20416  // SetUri sets the Uri field's value.
 20417  func (s *SipAddress) SetUri(v string) *SipAddress {
 20418  	s.Uri = &v
 20419  	return s
 20420  }
 20421  
 20422  // Granular information about the skill.
 20423  type SkillDetails struct {
 20424  	_ struct{} `type:"structure"`
 20425  
 20426  	// The details about what the skill supports organized as bullet points.
 20427  	BulletPoints []*string `type:"list"`
 20428  
 20429  	// The details about the developer that published the skill.
 20430  	DeveloperInfo *DeveloperInfo `type:"structure"`
 20431  
 20432  	// The URL of the end user license agreement.
 20433  	EndUserLicenseAgreement *string `type:"string"`
 20434  
 20435  	// The generic keywords associated with the skill that can be used to find a
 20436  	// skill.
 20437  	GenericKeywords []*string `type:"list"`
 20438  
 20439  	// The phrase used to trigger the skill.
 20440  	InvocationPhrase *string `type:"string"`
 20441  
 20442  	// The updates added in bullet points.
 20443  	NewInThisVersionBulletPoints []*string `type:"list"`
 20444  
 20445  	// The description of the product.
 20446  	ProductDescription *string `type:"string"`
 20447  
 20448  	// The date when the skill was released.
 20449  	ReleaseDate *string `type:"string"`
 20450  
 20451  	// This member has been deprecated.
 20452  	//
 20453  	// The list of reviews for the skill, including Key and Value pair.
 20454  	Reviews map[string]*string `type:"map"`
 20455  
 20456  	// The types of skills.
 20457  	SkillTypes []*string `type:"list"`
 20458  }
 20459  
 20460  // String returns the string representation.
 20461  //
 20462  // API parameter values that are decorated as "sensitive" in the API will not
 20463  // be included in the string output. The member name will be present, but the
 20464  // value will be replaced with "sensitive".
 20465  func (s SkillDetails) String() string {
 20466  	return awsutil.Prettify(s)
 20467  }
 20468  
 20469  // GoString returns the string representation.
 20470  //
 20471  // API parameter values that are decorated as "sensitive" in the API will not
 20472  // be included in the string output. The member name will be present, but the
 20473  // value will be replaced with "sensitive".
 20474  func (s SkillDetails) GoString() string {
 20475  	return s.String()
 20476  }
 20477  
 20478  // SetBulletPoints sets the BulletPoints field's value.
 20479  func (s *SkillDetails) SetBulletPoints(v []*string) *SkillDetails {
 20480  	s.BulletPoints = v
 20481  	return s
 20482  }
 20483  
 20484  // SetDeveloperInfo sets the DeveloperInfo field's value.
 20485  func (s *SkillDetails) SetDeveloperInfo(v *DeveloperInfo) *SkillDetails {
 20486  	s.DeveloperInfo = v
 20487  	return s
 20488  }
 20489  
 20490  // SetEndUserLicenseAgreement sets the EndUserLicenseAgreement field's value.
 20491  func (s *SkillDetails) SetEndUserLicenseAgreement(v string) *SkillDetails {
 20492  	s.EndUserLicenseAgreement = &v
 20493  	return s
 20494  }
 20495  
 20496  // SetGenericKeywords sets the GenericKeywords field's value.
 20497  func (s *SkillDetails) SetGenericKeywords(v []*string) *SkillDetails {
 20498  	s.GenericKeywords = v
 20499  	return s
 20500  }
 20501  
 20502  // SetInvocationPhrase sets the InvocationPhrase field's value.
 20503  func (s *SkillDetails) SetInvocationPhrase(v string) *SkillDetails {
 20504  	s.InvocationPhrase = &v
 20505  	return s
 20506  }
 20507  
 20508  // SetNewInThisVersionBulletPoints sets the NewInThisVersionBulletPoints field's value.
 20509  func (s *SkillDetails) SetNewInThisVersionBulletPoints(v []*string) *SkillDetails {
 20510  	s.NewInThisVersionBulletPoints = v
 20511  	return s
 20512  }
 20513  
 20514  // SetProductDescription sets the ProductDescription field's value.
 20515  func (s *SkillDetails) SetProductDescription(v string) *SkillDetails {
 20516  	s.ProductDescription = &v
 20517  	return s
 20518  }
 20519  
 20520  // SetReleaseDate sets the ReleaseDate field's value.
 20521  func (s *SkillDetails) SetReleaseDate(v string) *SkillDetails {
 20522  	s.ReleaseDate = &v
 20523  	return s
 20524  }
 20525  
 20526  // SetReviews sets the Reviews field's value.
 20527  func (s *SkillDetails) SetReviews(v map[string]*string) *SkillDetails {
 20528  	s.Reviews = v
 20529  	return s
 20530  }
 20531  
 20532  // SetSkillTypes sets the SkillTypes field's value.
 20533  func (s *SkillDetails) SetSkillTypes(v []*string) *SkillDetails {
 20534  	s.SkillTypes = v
 20535  	return s
 20536  }
 20537  
 20538  // A skill group with attributes.
 20539  type SkillGroup struct {
 20540  	_ struct{} `type:"structure"`
 20541  
 20542  	// The description of a skill group.
 20543  	Description *string `min:"1" type:"string"`
 20544  
 20545  	// The ARN of a skill group.
 20546  	SkillGroupArn *string `type:"string"`
 20547  
 20548  	// The name of a skill group.
 20549  	SkillGroupName *string `min:"1" type:"string"`
 20550  }
 20551  
 20552  // String returns the string representation.
 20553  //
 20554  // API parameter values that are decorated as "sensitive" in the API will not
 20555  // be included in the string output. The member name will be present, but the
 20556  // value will be replaced with "sensitive".
 20557  func (s SkillGroup) String() string {
 20558  	return awsutil.Prettify(s)
 20559  }
 20560  
 20561  // GoString returns the string representation.
 20562  //
 20563  // API parameter values that are decorated as "sensitive" in the API will not
 20564  // be included in the string output. The member name will be present, but the
 20565  // value will be replaced with "sensitive".
 20566  func (s SkillGroup) GoString() string {
 20567  	return s.String()
 20568  }
 20569  
 20570  // SetDescription sets the Description field's value.
 20571  func (s *SkillGroup) SetDescription(v string) *SkillGroup {
 20572  	s.Description = &v
 20573  	return s
 20574  }
 20575  
 20576  // SetSkillGroupArn sets the SkillGroupArn field's value.
 20577  func (s *SkillGroup) SetSkillGroupArn(v string) *SkillGroup {
 20578  	s.SkillGroupArn = &v
 20579  	return s
 20580  }
 20581  
 20582  // SetSkillGroupName sets the SkillGroupName field's value.
 20583  func (s *SkillGroup) SetSkillGroupName(v string) *SkillGroup {
 20584  	s.SkillGroupName = &v
 20585  	return s
 20586  }
 20587  
 20588  // The attributes of a skill group.
 20589  type SkillGroupData struct {
 20590  	_ struct{} `type:"structure"`
 20591  
 20592  	// The description of a skill group.
 20593  	Description *string `min:"1" type:"string"`
 20594  
 20595  	// The skill group ARN of a skill group.
 20596  	SkillGroupArn *string `type:"string"`
 20597  
 20598  	// The skill group name of a skill group.
 20599  	SkillGroupName *string `min:"1" type:"string"`
 20600  }
 20601  
 20602  // String returns the string representation.
 20603  //
 20604  // API parameter values that are decorated as "sensitive" in the API will not
 20605  // be included in the string output. The member name will be present, but the
 20606  // value will be replaced with "sensitive".
 20607  func (s SkillGroupData) String() string {
 20608  	return awsutil.Prettify(s)
 20609  }
 20610  
 20611  // GoString returns the string representation.
 20612  //
 20613  // API parameter values that are decorated as "sensitive" in the API will not
 20614  // be included in the string output. The member name will be present, but the
 20615  // value will be replaced with "sensitive".
 20616  func (s SkillGroupData) GoString() string {
 20617  	return s.String()
 20618  }
 20619  
 20620  // SetDescription sets the Description field's value.
 20621  func (s *SkillGroupData) SetDescription(v string) *SkillGroupData {
 20622  	s.Description = &v
 20623  	return s
 20624  }
 20625  
 20626  // SetSkillGroupArn sets the SkillGroupArn field's value.
 20627  func (s *SkillGroupData) SetSkillGroupArn(v string) *SkillGroupData {
 20628  	s.SkillGroupArn = &v
 20629  	return s
 20630  }
 20631  
 20632  // SetSkillGroupName sets the SkillGroupName field's value.
 20633  func (s *SkillGroupData) SetSkillGroupName(v string) *SkillGroupData {
 20634  	s.SkillGroupName = &v
 20635  	return s
 20636  }
 20637  
 20638  // The skill must be linked to a third-party account.
 20639  type SkillNotLinkedException struct {
 20640  	_            struct{}                  `type:"structure"`
 20641  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 20642  
 20643  	Message_ *string `locationName:"Message" type:"string"`
 20644  }
 20645  
 20646  // String returns the string representation.
 20647  //
 20648  // API parameter values that are decorated as "sensitive" in the API will not
 20649  // be included in the string output. The member name will be present, but the
 20650  // value will be replaced with "sensitive".
 20651  func (s SkillNotLinkedException) String() string {
 20652  	return awsutil.Prettify(s)
 20653  }
 20654  
 20655  // GoString returns the string representation.
 20656  //
 20657  // API parameter values that are decorated as "sensitive" in the API will not
 20658  // be included in the string output. The member name will be present, but the
 20659  // value will be replaced with "sensitive".
 20660  func (s SkillNotLinkedException) GoString() string {
 20661  	return s.String()
 20662  }
 20663  
 20664  func newErrorSkillNotLinkedException(v protocol.ResponseMetadata) error {
 20665  	return &SkillNotLinkedException{
 20666  		RespMetadata: v,
 20667  	}
 20668  }
 20669  
 20670  // Code returns the exception type name.
 20671  func (s *SkillNotLinkedException) Code() string {
 20672  	return "SkillNotLinkedException"
 20673  }
 20674  
 20675  // Message returns the exception's message.
 20676  func (s *SkillNotLinkedException) Message() string {
 20677  	if s.Message_ != nil {
 20678  		return *s.Message_
 20679  	}
 20680  	return ""
 20681  }
 20682  
 20683  // OrigErr always returns nil, satisfies awserr.Error interface.
 20684  func (s *SkillNotLinkedException) OrigErr() error {
 20685  	return nil
 20686  }
 20687  
 20688  func (s *SkillNotLinkedException) Error() string {
 20689  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 20690  }
 20691  
 20692  // Status code returns the HTTP status code for the request's response error.
 20693  func (s *SkillNotLinkedException) StatusCode() int {
 20694  	return s.RespMetadata.StatusCode
 20695  }
 20696  
 20697  // RequestID returns the service's response RequestID for request.
 20698  func (s *SkillNotLinkedException) RequestID() string {
 20699  	return s.RespMetadata.RequestID
 20700  }
 20701  
 20702  // The summary of skills.
 20703  type SkillSummary struct {
 20704  	_ struct{} `type:"structure"`
 20705  
 20706  	// Whether the skill is enabled under the user's account, or if it requires
 20707  	// linking to be used.
 20708  	EnablementType *string `type:"string" enum:"EnablementType"`
 20709  
 20710  	// The ARN of the skill summary.
 20711  	SkillId *string `type:"string"`
 20712  
 20713  	// The name of the skill.
 20714  	SkillName *string `min:"1" type:"string"`
 20715  
 20716  	// Whether the skill is publicly available or is a private skill.
 20717  	SkillType *string `min:"1" type:"string" enum:"SkillType"`
 20718  
 20719  	// Linking support for a skill.
 20720  	SupportsLinking *bool `type:"boolean"`
 20721  }
 20722  
 20723  // String returns the string representation.
 20724  //
 20725  // API parameter values that are decorated as "sensitive" in the API will not
 20726  // be included in the string output. The member name will be present, but the
 20727  // value will be replaced with "sensitive".
 20728  func (s SkillSummary) String() string {
 20729  	return awsutil.Prettify(s)
 20730  }
 20731  
 20732  // GoString returns the string representation.
 20733  //
 20734  // API parameter values that are decorated as "sensitive" in the API will not
 20735  // be included in the string output. The member name will be present, but the
 20736  // value will be replaced with "sensitive".
 20737  func (s SkillSummary) GoString() string {
 20738  	return s.String()
 20739  }
 20740  
 20741  // SetEnablementType sets the EnablementType field's value.
 20742  func (s *SkillSummary) SetEnablementType(v string) *SkillSummary {
 20743  	s.EnablementType = &v
 20744  	return s
 20745  }
 20746  
 20747  // SetSkillId sets the SkillId field's value.
 20748  func (s *SkillSummary) SetSkillId(v string) *SkillSummary {
 20749  	s.SkillId = &v
 20750  	return s
 20751  }
 20752  
 20753  // SetSkillName sets the SkillName field's value.
 20754  func (s *SkillSummary) SetSkillName(v string) *SkillSummary {
 20755  	s.SkillName = &v
 20756  	return s
 20757  }
 20758  
 20759  // SetSkillType sets the SkillType field's value.
 20760  func (s *SkillSummary) SetSkillType(v string) *SkillSummary {
 20761  	s.SkillType = &v
 20762  	return s
 20763  }
 20764  
 20765  // SetSupportsLinking sets the SupportsLinking field's value.
 20766  func (s *SkillSummary) SetSupportsLinking(v bool) *SkillSummary {
 20767  	s.SupportsLinking = &v
 20768  	return s
 20769  }
 20770  
 20771  // The detailed information about an Alexa skill.
 20772  type SkillsStoreSkill struct {
 20773  	_ struct{} `type:"structure"`
 20774  
 20775  	// The URL where the skill icon resides.
 20776  	IconUrl *string `type:"string"`
 20777  
 20778  	// Sample utterances that interact with the skill.
 20779  	SampleUtterances []*string `type:"list"`
 20780  
 20781  	// Short description about the skill.
 20782  	ShortDescription *string `type:"string"`
 20783  
 20784  	// Information about the skill.
 20785  	SkillDetails *SkillDetails `type:"structure"`
 20786  
 20787  	// The ARN of the skill.
 20788  	SkillId *string `type:"string"`
 20789  
 20790  	// The name of the skill.
 20791  	SkillName *string `min:"1" type:"string"`
 20792  
 20793  	// Linking support for a skill.
 20794  	SupportsLinking *bool `type:"boolean"`
 20795  }
 20796  
 20797  // String returns the string representation.
 20798  //
 20799  // API parameter values that are decorated as "sensitive" in the API will not
 20800  // be included in the string output. The member name will be present, but the
 20801  // value will be replaced with "sensitive".
 20802  func (s SkillsStoreSkill) String() string {
 20803  	return awsutil.Prettify(s)
 20804  }
 20805  
 20806  // GoString returns the string representation.
 20807  //
 20808  // API parameter values that are decorated as "sensitive" in the API will not
 20809  // be included in the string output. The member name will be present, but the
 20810  // value will be replaced with "sensitive".
 20811  func (s SkillsStoreSkill) GoString() string {
 20812  	return s.String()
 20813  }
 20814  
 20815  // SetIconUrl sets the IconUrl field's value.
 20816  func (s *SkillsStoreSkill) SetIconUrl(v string) *SkillsStoreSkill {
 20817  	s.IconUrl = &v
 20818  	return s
 20819  }
 20820  
 20821  // SetSampleUtterances sets the SampleUtterances field's value.
 20822  func (s *SkillsStoreSkill) SetSampleUtterances(v []*string) *SkillsStoreSkill {
 20823  	s.SampleUtterances = v
 20824  	return s
 20825  }
 20826  
 20827  // SetShortDescription sets the ShortDescription field's value.
 20828  func (s *SkillsStoreSkill) SetShortDescription(v string) *SkillsStoreSkill {
 20829  	s.ShortDescription = &v
 20830  	return s
 20831  }
 20832  
 20833  // SetSkillDetails sets the SkillDetails field's value.
 20834  func (s *SkillsStoreSkill) SetSkillDetails(v *SkillDetails) *SkillsStoreSkill {
 20835  	s.SkillDetails = v
 20836  	return s
 20837  }
 20838  
 20839  // SetSkillId sets the SkillId field's value.
 20840  func (s *SkillsStoreSkill) SetSkillId(v string) *SkillsStoreSkill {
 20841  	s.SkillId = &v
 20842  	return s
 20843  }
 20844  
 20845  // SetSkillName sets the SkillName field's value.
 20846  func (s *SkillsStoreSkill) SetSkillName(v string) *SkillsStoreSkill {
 20847  	s.SkillName = &v
 20848  	return s
 20849  }
 20850  
 20851  // SetSupportsLinking sets the SupportsLinking field's value.
 20852  func (s *SkillsStoreSkill) SetSupportsLinking(v bool) *SkillsStoreSkill {
 20853  	s.SupportsLinking = &v
 20854  	return s
 20855  }
 20856  
 20857  // A smart home appliance that can connect to a central system. Any domestic
 20858  // device can be a smart appliance.
 20859  type SmartHomeAppliance struct {
 20860  	_ struct{} `type:"structure"`
 20861  
 20862  	// The description of the smart home appliance.
 20863  	Description *string `type:"string"`
 20864  
 20865  	// The friendly name of the smart home appliance.
 20866  	FriendlyName *string `type:"string"`
 20867  
 20868  	// The name of the manufacturer of the smart home appliance.
 20869  	ManufacturerName *string `type:"string"`
 20870  }
 20871  
 20872  // String returns the string representation.
 20873  //
 20874  // API parameter values that are decorated as "sensitive" in the API will not
 20875  // be included in the string output. The member name will be present, but the
 20876  // value will be replaced with "sensitive".
 20877  func (s SmartHomeAppliance) String() string {
 20878  	return awsutil.Prettify(s)
 20879  }
 20880  
 20881  // GoString returns the string representation.
 20882  //
 20883  // API parameter values that are decorated as "sensitive" in the API will not
 20884  // be included in the string output. The member name will be present, but the
 20885  // value will be replaced with "sensitive".
 20886  func (s SmartHomeAppliance) GoString() string {
 20887  	return s.String()
 20888  }
 20889  
 20890  // SetDescription sets the Description field's value.
 20891  func (s *SmartHomeAppliance) SetDescription(v string) *SmartHomeAppliance {
 20892  	s.Description = &v
 20893  	return s
 20894  }
 20895  
 20896  // SetFriendlyName sets the FriendlyName field's value.
 20897  func (s *SmartHomeAppliance) SetFriendlyName(v string) *SmartHomeAppliance {
 20898  	s.FriendlyName = &v
 20899  	return s
 20900  }
 20901  
 20902  // SetManufacturerName sets the ManufacturerName field's value.
 20903  func (s *SmartHomeAppliance) SetManufacturerName(v string) *SmartHomeAppliance {
 20904  	s.ManufacturerName = &v
 20905  	return s
 20906  }
 20907  
 20908  // An object representing a sort criteria.
 20909  type Sort struct {
 20910  	_ struct{} `type:"structure"`
 20911  
 20912  	// The sort key of a sort object.
 20913  	//
 20914  	// Key is a required field
 20915  	Key *string `min:"1" type:"string" required:"true"`
 20916  
 20917  	// The sort value of a sort object.
 20918  	//
 20919  	// Value is a required field
 20920  	Value *string `type:"string" required:"true" enum:"SortValue"`
 20921  }
 20922  
 20923  // String returns the string representation.
 20924  //
 20925  // API parameter values that are decorated as "sensitive" in the API will not
 20926  // be included in the string output. The member name will be present, but the
 20927  // value will be replaced with "sensitive".
 20928  func (s Sort) String() string {
 20929  	return awsutil.Prettify(s)
 20930  }
 20931  
 20932  // GoString returns the string representation.
 20933  //
 20934  // API parameter values that are decorated as "sensitive" in the API will not
 20935  // be included in the string output. The member name will be present, but the
 20936  // value will be replaced with "sensitive".
 20937  func (s Sort) GoString() string {
 20938  	return s.String()
 20939  }
 20940  
 20941  // Validate inspects the fields of the type to determine if they are valid.
 20942  func (s *Sort) Validate() error {
 20943  	invalidParams := request.ErrInvalidParams{Context: "Sort"}
 20944  	if s.Key == nil {
 20945  		invalidParams.Add(request.NewErrParamRequired("Key"))
 20946  	}
 20947  	if s.Key != nil && len(*s.Key) < 1 {
 20948  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 20949  	}
 20950  	if s.Value == nil {
 20951  		invalidParams.Add(request.NewErrParamRequired("Value"))
 20952  	}
 20953  
 20954  	if invalidParams.Len() > 0 {
 20955  		return invalidParams
 20956  	}
 20957  	return nil
 20958  }
 20959  
 20960  // SetKey sets the Key field's value.
 20961  func (s *Sort) SetKey(v string) *Sort {
 20962  	s.Key = &v
 20963  	return s
 20964  }
 20965  
 20966  // SetValue sets the Value field's value.
 20967  func (s *Sort) SetValue(v string) *Sort {
 20968  	s.Value = &v
 20969  	return s
 20970  }
 20971  
 20972  // The SSML message. For more information, see SSML Reference (https://developer.amazon.com/docs/custom-skills/speech-synthesis-markup-language-ssml-reference.html).
 20973  type Ssml struct {
 20974  	_ struct{} `type:"structure"`
 20975  
 20976  	// The locale of the SSML message. Currently, en-US is supported.
 20977  	//
 20978  	// Locale is a required field
 20979  	Locale *string `type:"string" required:"true" enum:"Locale"`
 20980  
 20981  	// The value of the SSML message in the correct SSML format. The audio tag is
 20982  	// not supported.
 20983  	//
 20984  	// Value is a required field
 20985  	Value *string `type:"string" required:"true"`
 20986  }
 20987  
 20988  // String returns the string representation.
 20989  //
 20990  // API parameter values that are decorated as "sensitive" in the API will not
 20991  // be included in the string output. The member name will be present, but the
 20992  // value will be replaced with "sensitive".
 20993  func (s Ssml) String() string {
 20994  	return awsutil.Prettify(s)
 20995  }
 20996  
 20997  // GoString returns the string representation.
 20998  //
 20999  // API parameter values that are decorated as "sensitive" in the API will not
 21000  // be included in the string output. The member name will be present, but the
 21001  // value will be replaced with "sensitive".
 21002  func (s Ssml) GoString() string {
 21003  	return s.String()
 21004  }
 21005  
 21006  // Validate inspects the fields of the type to determine if they are valid.
 21007  func (s *Ssml) Validate() error {
 21008  	invalidParams := request.ErrInvalidParams{Context: "Ssml"}
 21009  	if s.Locale == nil {
 21010  		invalidParams.Add(request.NewErrParamRequired("Locale"))
 21011  	}
 21012  	if s.Value == nil {
 21013  		invalidParams.Add(request.NewErrParamRequired("Value"))
 21014  	}
 21015  
 21016  	if invalidParams.Len() > 0 {
 21017  		return invalidParams
 21018  	}
 21019  	return nil
 21020  }
 21021  
 21022  // SetLocale sets the Locale field's value.
 21023  func (s *Ssml) SetLocale(v string) *Ssml {
 21024  	s.Locale = &v
 21025  	return s
 21026  }
 21027  
 21028  // SetValue sets the Value field's value.
 21029  func (s *Ssml) SetValue(v string) *Ssml {
 21030  	s.Value = &v
 21031  	return s
 21032  }
 21033  
 21034  type StartDeviceSyncInput struct {
 21035  	_ struct{} `type:"structure"`
 21036  
 21037  	// The ARN of the device to sync. Required.
 21038  	DeviceArn *string `type:"string"`
 21039  
 21040  	// Request structure to start the device sync. Required.
 21041  	//
 21042  	// Features is a required field
 21043  	Features []*string `type:"list" required:"true"`
 21044  
 21045  	// The ARN of the room with which the device to sync is associated. Required.
 21046  	RoomArn *string `type:"string"`
 21047  }
 21048  
 21049  // String returns the string representation.
 21050  //
 21051  // API parameter values that are decorated as "sensitive" in the API will not
 21052  // be included in the string output. The member name will be present, but the
 21053  // value will be replaced with "sensitive".
 21054  func (s StartDeviceSyncInput) String() string {
 21055  	return awsutil.Prettify(s)
 21056  }
 21057  
 21058  // GoString returns the string representation.
 21059  //
 21060  // API parameter values that are decorated as "sensitive" in the API will not
 21061  // be included in the string output. The member name will be present, but the
 21062  // value will be replaced with "sensitive".
 21063  func (s StartDeviceSyncInput) GoString() string {
 21064  	return s.String()
 21065  }
 21066  
 21067  // Validate inspects the fields of the type to determine if they are valid.
 21068  func (s *StartDeviceSyncInput) Validate() error {
 21069  	invalidParams := request.ErrInvalidParams{Context: "StartDeviceSyncInput"}
 21070  	if s.Features == nil {
 21071  		invalidParams.Add(request.NewErrParamRequired("Features"))
 21072  	}
 21073  
 21074  	if invalidParams.Len() > 0 {
 21075  		return invalidParams
 21076  	}
 21077  	return nil
 21078  }
 21079  
 21080  // SetDeviceArn sets the DeviceArn field's value.
 21081  func (s *StartDeviceSyncInput) SetDeviceArn(v string) *StartDeviceSyncInput {
 21082  	s.DeviceArn = &v
 21083  	return s
 21084  }
 21085  
 21086  // SetFeatures sets the Features field's value.
 21087  func (s *StartDeviceSyncInput) SetFeatures(v []*string) *StartDeviceSyncInput {
 21088  	s.Features = v
 21089  	return s
 21090  }
 21091  
 21092  // SetRoomArn sets the RoomArn field's value.
 21093  func (s *StartDeviceSyncInput) SetRoomArn(v string) *StartDeviceSyncInput {
 21094  	s.RoomArn = &v
 21095  	return s
 21096  }
 21097  
 21098  type StartDeviceSyncOutput struct {
 21099  	_ struct{} `type:"structure"`
 21100  }
 21101  
 21102  // String returns the string representation.
 21103  //
 21104  // API parameter values that are decorated as "sensitive" in the API will not
 21105  // be included in the string output. The member name will be present, but the
 21106  // value will be replaced with "sensitive".
 21107  func (s StartDeviceSyncOutput) String() string {
 21108  	return awsutil.Prettify(s)
 21109  }
 21110  
 21111  // GoString returns the string representation.
 21112  //
 21113  // API parameter values that are decorated as "sensitive" in the API will not
 21114  // be included in the string output. The member name will be present, but the
 21115  // value will be replaced with "sensitive".
 21116  func (s StartDeviceSyncOutput) GoString() string {
 21117  	return s.String()
 21118  }
 21119  
 21120  type StartSmartHomeApplianceDiscoveryInput struct {
 21121  	_ struct{} `type:"structure"`
 21122  
 21123  	// The room where smart home appliance discovery was initiated.
 21124  	//
 21125  	// RoomArn is a required field
 21126  	RoomArn *string `type:"string" required:"true"`
 21127  }
 21128  
 21129  // String returns the string representation.
 21130  //
 21131  // API parameter values that are decorated as "sensitive" in the API will not
 21132  // be included in the string output. The member name will be present, but the
 21133  // value will be replaced with "sensitive".
 21134  func (s StartSmartHomeApplianceDiscoveryInput) String() string {
 21135  	return awsutil.Prettify(s)
 21136  }
 21137  
 21138  // GoString returns the string representation.
 21139  //
 21140  // API parameter values that are decorated as "sensitive" in the API will not
 21141  // be included in the string output. The member name will be present, but the
 21142  // value will be replaced with "sensitive".
 21143  func (s StartSmartHomeApplianceDiscoveryInput) GoString() string {
 21144  	return s.String()
 21145  }
 21146  
 21147  // Validate inspects the fields of the type to determine if they are valid.
 21148  func (s *StartSmartHomeApplianceDiscoveryInput) Validate() error {
 21149  	invalidParams := request.ErrInvalidParams{Context: "StartSmartHomeApplianceDiscoveryInput"}
 21150  	if s.RoomArn == nil {
 21151  		invalidParams.Add(request.NewErrParamRequired("RoomArn"))
 21152  	}
 21153  
 21154  	if invalidParams.Len() > 0 {
 21155  		return invalidParams
 21156  	}
 21157  	return nil
 21158  }
 21159  
 21160  // SetRoomArn sets the RoomArn field's value.
 21161  func (s *StartSmartHomeApplianceDiscoveryInput) SetRoomArn(v string) *StartSmartHomeApplianceDiscoveryInput {
 21162  	s.RoomArn = &v
 21163  	return s
 21164  }
 21165  
 21166  type StartSmartHomeApplianceDiscoveryOutput struct {
 21167  	_ struct{} `type:"structure"`
 21168  }
 21169  
 21170  // String returns the string representation.
 21171  //
 21172  // API parameter values that are decorated as "sensitive" in the API will not
 21173  // be included in the string output. The member name will be present, but the
 21174  // value will be replaced with "sensitive".
 21175  func (s StartSmartHomeApplianceDiscoveryOutput) String() string {
 21176  	return awsutil.Prettify(s)
 21177  }
 21178  
 21179  // GoString returns the string representation.
 21180  //
 21181  // API parameter values that are decorated as "sensitive" in the API will not
 21182  // be included in the string output. The member name will be present, but the
 21183  // value will be replaced with "sensitive".
 21184  func (s StartSmartHomeApplianceDiscoveryOutput) GoString() string {
 21185  	return s.String()
 21186  }
 21187  
 21188  // A key-value pair that can be associated with a resource.
 21189  type Tag struct {
 21190  	_ struct{} `type:"structure"`
 21191  
 21192  	// The key of a tag. Tag keys are case-sensitive.
 21193  	//
 21194  	// Key is a required field
 21195  	Key *string `min:"1" type:"string" required:"true"`
 21196  
 21197  	// The value of a tag. Tag values are case sensitive and can be null.
 21198  	//
 21199  	// Value is a required field
 21200  	Value *string `type:"string" required:"true"`
 21201  }
 21202  
 21203  // String returns the string representation.
 21204  //
 21205  // API parameter values that are decorated as "sensitive" in the API will not
 21206  // be included in the string output. The member name will be present, but the
 21207  // value will be replaced with "sensitive".
 21208  func (s Tag) String() string {
 21209  	return awsutil.Prettify(s)
 21210  }
 21211  
 21212  // GoString returns the string representation.
 21213  //
 21214  // API parameter values that are decorated as "sensitive" in the API will not
 21215  // be included in the string output. The member name will be present, but the
 21216  // value will be replaced with "sensitive".
 21217  func (s Tag) GoString() string {
 21218  	return s.String()
 21219  }
 21220  
 21221  // Validate inspects the fields of the type to determine if they are valid.
 21222  func (s *Tag) Validate() error {
 21223  	invalidParams := request.ErrInvalidParams{Context: "Tag"}
 21224  	if s.Key == nil {
 21225  		invalidParams.Add(request.NewErrParamRequired("Key"))
 21226  	}
 21227  	if s.Key != nil && len(*s.Key) < 1 {
 21228  		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
 21229  	}
 21230  	if s.Value == nil {
 21231  		invalidParams.Add(request.NewErrParamRequired("Value"))
 21232  	}
 21233  
 21234  	if invalidParams.Len() > 0 {
 21235  		return invalidParams
 21236  	}
 21237  	return nil
 21238  }
 21239  
 21240  // SetKey sets the Key field's value.
 21241  func (s *Tag) SetKey(v string) *Tag {
 21242  	s.Key = &v
 21243  	return s
 21244  }
 21245  
 21246  // SetValue sets the Value field's value.
 21247  func (s *Tag) SetValue(v string) *Tag {
 21248  	s.Value = &v
 21249  	return s
 21250  }
 21251  
 21252  type TagResourceInput struct {
 21253  	_ struct{} `type:"structure"`
 21254  
 21255  	// The ARN of the resource to which to add metadata tags. Required.
 21256  	//
 21257  	// Arn is a required field
 21258  	Arn *string `type:"string" required:"true"`
 21259  
 21260  	// The tags to be added to the specified resource. Do not provide system tags.
 21261  	// Required.
 21262  	//
 21263  	// Tags is a required field
 21264  	Tags []*Tag `type:"list" required:"true"`
 21265  }
 21266  
 21267  // String returns the string representation.
 21268  //
 21269  // API parameter values that are decorated as "sensitive" in the API will not
 21270  // be included in the string output. The member name will be present, but the
 21271  // value will be replaced with "sensitive".
 21272  func (s TagResourceInput) String() string {
 21273  	return awsutil.Prettify(s)
 21274  }
 21275  
 21276  // GoString returns the string representation.
 21277  //
 21278  // API parameter values that are decorated as "sensitive" in the API will not
 21279  // be included in the string output. The member name will be present, but the
 21280  // value will be replaced with "sensitive".
 21281  func (s TagResourceInput) GoString() string {
 21282  	return s.String()
 21283  }
 21284  
 21285  // Validate inspects the fields of the type to determine if they are valid.
 21286  func (s *TagResourceInput) Validate() error {
 21287  	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
 21288  	if s.Arn == nil {
 21289  		invalidParams.Add(request.NewErrParamRequired("Arn"))
 21290  	}
 21291  	if s.Tags == nil {
 21292  		invalidParams.Add(request.NewErrParamRequired("Tags"))
 21293  	}
 21294  	if s.Tags != nil {
 21295  		for i, v := range s.Tags {
 21296  			if v == nil {
 21297  				continue
 21298  			}
 21299  			if err := v.Validate(); err != nil {
 21300  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
 21301  			}
 21302  		}
 21303  	}
 21304  
 21305  	if invalidParams.Len() > 0 {
 21306  		return invalidParams
 21307  	}
 21308  	return nil
 21309  }
 21310  
 21311  // SetArn sets the Arn field's value.
 21312  func (s *TagResourceInput) SetArn(v string) *TagResourceInput {
 21313  	s.Arn = &v
 21314  	return s
 21315  }
 21316  
 21317  // SetTags sets the Tags field's value.
 21318  func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
 21319  	s.Tags = v
 21320  	return s
 21321  }
 21322  
 21323  type TagResourceOutput struct {
 21324  	_ struct{} `type:"structure"`
 21325  }
 21326  
 21327  // String returns the string representation.
 21328  //
 21329  // API parameter values that are decorated as "sensitive" in the API will not
 21330  // be included in the string output. The member name will be present, but the
 21331  // value will be replaced with "sensitive".
 21332  func (s TagResourceOutput) String() string {
 21333  	return awsutil.Prettify(s)
 21334  }
 21335  
 21336  // GoString returns the string representation.
 21337  //
 21338  // API parameter values that are decorated as "sensitive" in the API will not
 21339  // be included in the string output. The member name will be present, but the
 21340  // value will be replaced with "sensitive".
 21341  func (s TagResourceOutput) GoString() string {
 21342  	return s.String()
 21343  }
 21344  
 21345  // The text message.
 21346  type Text struct {
 21347  	_ struct{} `type:"structure"`
 21348  
 21349  	// The locale of the text message. Currently, en-US is supported.
 21350  	//
 21351  	// Locale is a required field
 21352  	Locale *string `type:"string" required:"true" enum:"Locale"`
 21353  
 21354  	// The value of the text message.
 21355  	//
 21356  	// Value is a required field
 21357  	Value *string `type:"string" required:"true"`
 21358  }
 21359  
 21360  // String returns the string representation.
 21361  //
 21362  // API parameter values that are decorated as "sensitive" in the API will not
 21363  // be included in the string output. The member name will be present, but the
 21364  // value will be replaced with "sensitive".
 21365  func (s Text) String() string {
 21366  	return awsutil.Prettify(s)
 21367  }
 21368  
 21369  // GoString returns the string representation.
 21370  //
 21371  // API parameter values that are decorated as "sensitive" in the API will not
 21372  // be included in the string output. The member name will be present, but the
 21373  // value will be replaced with "sensitive".
 21374  func (s Text) GoString() string {
 21375  	return s.String()
 21376  }
 21377  
 21378  // Validate inspects the fields of the type to determine if they are valid.
 21379  func (s *Text) Validate() error {
 21380  	invalidParams := request.ErrInvalidParams{Context: "Text"}
 21381  	if s.Locale == nil {
 21382  		invalidParams.Add(request.NewErrParamRequired("Locale"))
 21383  	}
 21384  	if s.Value == nil {
 21385  		invalidParams.Add(request.NewErrParamRequired("Value"))
 21386  	}
 21387  
 21388  	if invalidParams.Len() > 0 {
 21389  		return invalidParams
 21390  	}
 21391  	return nil
 21392  }
 21393  
 21394  // SetLocale sets the Locale field's value.
 21395  func (s *Text) SetLocale(v string) *Text {
 21396  	s.Locale = &v
 21397  	return s
 21398  }
 21399  
 21400  // SetValue sets the Value field's value.
 21401  func (s *Text) SetValue(v string) *Text {
 21402  	s.Value = &v
 21403  	return s
 21404  }
 21405  
 21406  // The caller has no permissions to operate on the resource involved in the
 21407  // API call.
 21408  type UnauthorizedException struct {
 21409  	_            struct{}                  `type:"structure"`
 21410  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
 21411  
 21412  	Message_ *string `locationName:"Message" type:"string"`
 21413  }
 21414  
 21415  // String returns the string representation.
 21416  //
 21417  // API parameter values that are decorated as "sensitive" in the API will not
 21418  // be included in the string output. The member name will be present, but the
 21419  // value will be replaced with "sensitive".
 21420  func (s UnauthorizedException) String() string {
 21421  	return awsutil.Prettify(s)
 21422  }
 21423  
 21424  // GoString returns the string representation.
 21425  //
 21426  // API parameter values that are decorated as "sensitive" in the API will not
 21427  // be included in the string output. The member name will be present, but the
 21428  // value will be replaced with "sensitive".
 21429  func (s UnauthorizedException) GoString() string {
 21430  	return s.String()
 21431  }
 21432  
 21433  func newErrorUnauthorizedException(v protocol.ResponseMetadata) error {
 21434  	return &UnauthorizedException{
 21435  		RespMetadata: v,
 21436  	}
 21437  }
 21438  
 21439  // Code returns the exception type name.
 21440  func (s *UnauthorizedException) Code() string {
 21441  	return "UnauthorizedException"
 21442  }
 21443  
 21444  // Message returns the exception's message.
 21445  func (s *UnauthorizedException) Message() string {
 21446  	if s.Message_ != nil {
 21447  		return *s.Message_
 21448  	}
 21449  	return ""
 21450  }
 21451  
 21452  // OrigErr always returns nil, satisfies awserr.Error interface.
 21453  func (s *UnauthorizedException) OrigErr() error {
 21454  	return nil
 21455  }
 21456  
 21457  func (s *UnauthorizedException) Error() string {
 21458  	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
 21459  }
 21460  
 21461  // Status code returns the HTTP status code for the request's response error.
 21462  func (s *UnauthorizedException) StatusCode() int {
 21463  	return s.RespMetadata.StatusCode
 21464  }
 21465  
 21466  // RequestID returns the service's response RequestID for request.
 21467  func (s *UnauthorizedException) RequestID() string {
 21468  	return s.RespMetadata.RequestID
 21469  }
 21470  
 21471  type UntagResourceInput struct {
 21472  	_ struct{} `type:"structure"`
 21473  
 21474  	// The ARN of the resource from which to remove metadata tags. Required.
 21475  	//
 21476  	// Arn is a required field
 21477  	Arn *string `type:"string" required:"true"`
 21478  
 21479  	// The tags to be removed from the specified resource. Do not provide system
 21480  	// tags. Required.
 21481  	//
 21482  	// TagKeys is a required field
 21483  	TagKeys []*string `type:"list" required:"true"`
 21484  }
 21485  
 21486  // String returns the string representation.
 21487  //
 21488  // API parameter values that are decorated as "sensitive" in the API will not
 21489  // be included in the string output. The member name will be present, but the
 21490  // value will be replaced with "sensitive".
 21491  func (s UntagResourceInput) String() string {
 21492  	return awsutil.Prettify(s)
 21493  }
 21494  
 21495  // GoString returns the string representation.
 21496  //
 21497  // API parameter values that are decorated as "sensitive" in the API will not
 21498  // be included in the string output. The member name will be present, but the
 21499  // value will be replaced with "sensitive".
 21500  func (s UntagResourceInput) GoString() string {
 21501  	return s.String()
 21502  }
 21503  
 21504  // Validate inspects the fields of the type to determine if they are valid.
 21505  func (s *UntagResourceInput) Validate() error {
 21506  	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
 21507  	if s.Arn == nil {
 21508  		invalidParams.Add(request.NewErrParamRequired("Arn"))
 21509  	}
 21510  	if s.TagKeys == nil {
 21511  		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
 21512  	}
 21513  
 21514  	if invalidParams.Len() > 0 {
 21515  		return invalidParams
 21516  	}
 21517  	return nil
 21518  }
 21519  
 21520  // SetArn sets the Arn field's value.
 21521  func (s *UntagResourceInput) SetArn(v string) *UntagResourceInput {
 21522  	s.Arn = &v
 21523  	return s
 21524  }
 21525  
 21526  // SetTagKeys sets the TagKeys field's value.
 21527  func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
 21528  	s.TagKeys = v
 21529  	return s
 21530  }
 21531  
 21532  type UntagResourceOutput struct {
 21533  	_ struct{} `type:"structure"`
 21534  }
 21535  
 21536  // String returns the string representation.
 21537  //
 21538  // API parameter values that are decorated as "sensitive" in the API will not
 21539  // be included in the string output. The member name will be present, but the
 21540  // value will be replaced with "sensitive".
 21541  func (s UntagResourceOutput) String() string {
 21542  	return awsutil.Prettify(s)
 21543  }
 21544  
 21545  // GoString returns the string representation.
 21546  //
 21547  // API parameter values that are decorated as "sensitive" in the API will not
 21548  // be included in the string output. The member name will be present, but the
 21549  // value will be replaced with "sensitive".
 21550  func (s UntagResourceOutput) GoString() string {
 21551  	return s.String()
 21552  }
 21553  
 21554  type UpdateAddressBookInput struct {
 21555  	_ struct{} `type:"structure"`
 21556  
 21557  	// The ARN of the room to update.
 21558  	//
 21559  	// AddressBookArn is a required field
 21560  	AddressBookArn *string `type:"string" required:"true"`
 21561  
 21562  	// The updated description of the room.
 21563  	Description *string `min:"1" type:"string"`
 21564  
 21565  	// The updated name of the room.
 21566  	Name *string `min:"1" type:"string"`
 21567  }
 21568  
 21569  // String returns the string representation.
 21570  //
 21571  // API parameter values that are decorated as "sensitive" in the API will not
 21572  // be included in the string output. The member name will be present, but the
 21573  // value will be replaced with "sensitive".
 21574  func (s UpdateAddressBookInput) String() string {
 21575  	return awsutil.Prettify(s)
 21576  }
 21577  
 21578  // GoString returns the string representation.
 21579  //
 21580  // API parameter values that are decorated as "sensitive" in the API will not
 21581  // be included in the string output. The member name will be present, but the
 21582  // value will be replaced with "sensitive".
 21583  func (s UpdateAddressBookInput) GoString() string {
 21584  	return s.String()
 21585  }
 21586  
 21587  // Validate inspects the fields of the type to determine if they are valid.
 21588  func (s *UpdateAddressBookInput) Validate() error {
 21589  	invalidParams := request.ErrInvalidParams{Context: "UpdateAddressBookInput"}
 21590  	if s.AddressBookArn == nil {
 21591  		invalidParams.Add(request.NewErrParamRequired("AddressBookArn"))
 21592  	}
 21593  	if s.Description != nil && len(*s.Description) < 1 {
 21594  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 21595  	}
 21596  	if s.Name != nil && len(*s.Name) < 1 {
 21597  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 21598  	}
 21599  
 21600  	if invalidParams.Len() > 0 {
 21601  		return invalidParams
 21602  	}
 21603  	return nil
 21604  }
 21605  
 21606  // SetAddressBookArn sets the AddressBookArn field's value.
 21607  func (s *UpdateAddressBookInput) SetAddressBookArn(v string) *UpdateAddressBookInput {
 21608  	s.AddressBookArn = &v
 21609  	return s
 21610  }
 21611  
 21612  // SetDescription sets the Description field's value.
 21613  func (s *UpdateAddressBookInput) SetDescription(v string) *UpdateAddressBookInput {
 21614  	s.Description = &v
 21615  	return s
 21616  }
 21617  
 21618  // SetName sets the Name field's value.
 21619  func (s *UpdateAddressBookInput) SetName(v string) *UpdateAddressBookInput {
 21620  	s.Name = &v
 21621  	return s
 21622  }
 21623  
 21624  type UpdateAddressBookOutput struct {
 21625  	_ struct{} `type:"structure"`
 21626  }
 21627  
 21628  // String returns the string representation.
 21629  //
 21630  // API parameter values that are decorated as "sensitive" in the API will not
 21631  // be included in the string output. The member name will be present, but the
 21632  // value will be replaced with "sensitive".
 21633  func (s UpdateAddressBookOutput) String() string {
 21634  	return awsutil.Prettify(s)
 21635  }
 21636  
 21637  // GoString returns the string representation.
 21638  //
 21639  // API parameter values that are decorated as "sensitive" in the API will not
 21640  // be included in the string output. The member name will be present, but the
 21641  // value will be replaced with "sensitive".
 21642  func (s UpdateAddressBookOutput) GoString() string {
 21643  	return s.String()
 21644  }
 21645  
 21646  type UpdateBusinessReportScheduleInput struct {
 21647  	_ struct{} `type:"structure"`
 21648  
 21649  	// The format of the generated report (individual CSV files or zipped files
 21650  	// of individual files).
 21651  	Format *string `type:"string" enum:"BusinessReportFormat"`
 21652  
 21653  	// The recurrence of the reports.
 21654  	Recurrence *BusinessReportRecurrence `type:"structure"`
 21655  
 21656  	// The S3 location of the output reports.
 21657  	S3BucketName *string `type:"string"`
 21658  
 21659  	// The S3 key where the report is delivered.
 21660  	S3KeyPrefix *string `type:"string"`
 21661  
 21662  	// The ARN of the business report schedule.
 21663  	//
 21664  	// ScheduleArn is a required field
 21665  	ScheduleArn *string `type:"string" required:"true"`
 21666  
 21667  	// The name identifier of the schedule.
 21668  	ScheduleName *string `type:"string"`
 21669  }
 21670  
 21671  // String returns the string representation.
 21672  //
 21673  // API parameter values that are decorated as "sensitive" in the API will not
 21674  // be included in the string output. The member name will be present, but the
 21675  // value will be replaced with "sensitive".
 21676  func (s UpdateBusinessReportScheduleInput) String() string {
 21677  	return awsutil.Prettify(s)
 21678  }
 21679  
 21680  // GoString returns the string representation.
 21681  //
 21682  // API parameter values that are decorated as "sensitive" in the API will not
 21683  // be included in the string output. The member name will be present, but the
 21684  // value will be replaced with "sensitive".
 21685  func (s UpdateBusinessReportScheduleInput) GoString() string {
 21686  	return s.String()
 21687  }
 21688  
 21689  // Validate inspects the fields of the type to determine if they are valid.
 21690  func (s *UpdateBusinessReportScheduleInput) Validate() error {
 21691  	invalidParams := request.ErrInvalidParams{Context: "UpdateBusinessReportScheduleInput"}
 21692  	if s.ScheduleArn == nil {
 21693  		invalidParams.Add(request.NewErrParamRequired("ScheduleArn"))
 21694  	}
 21695  
 21696  	if invalidParams.Len() > 0 {
 21697  		return invalidParams
 21698  	}
 21699  	return nil
 21700  }
 21701  
 21702  // SetFormat sets the Format field's value.
 21703  func (s *UpdateBusinessReportScheduleInput) SetFormat(v string) *UpdateBusinessReportScheduleInput {
 21704  	s.Format = &v
 21705  	return s
 21706  }
 21707  
 21708  // SetRecurrence sets the Recurrence field's value.
 21709  func (s *UpdateBusinessReportScheduleInput) SetRecurrence(v *BusinessReportRecurrence) *UpdateBusinessReportScheduleInput {
 21710  	s.Recurrence = v
 21711  	return s
 21712  }
 21713  
 21714  // SetS3BucketName sets the S3BucketName field's value.
 21715  func (s *UpdateBusinessReportScheduleInput) SetS3BucketName(v string) *UpdateBusinessReportScheduleInput {
 21716  	s.S3BucketName = &v
 21717  	return s
 21718  }
 21719  
 21720  // SetS3KeyPrefix sets the S3KeyPrefix field's value.
 21721  func (s *UpdateBusinessReportScheduleInput) SetS3KeyPrefix(v string) *UpdateBusinessReportScheduleInput {
 21722  	s.S3KeyPrefix = &v
 21723  	return s
 21724  }
 21725  
 21726  // SetScheduleArn sets the ScheduleArn field's value.
 21727  func (s *UpdateBusinessReportScheduleInput) SetScheduleArn(v string) *UpdateBusinessReportScheduleInput {
 21728  	s.ScheduleArn = &v
 21729  	return s
 21730  }
 21731  
 21732  // SetScheduleName sets the ScheduleName field's value.
 21733  func (s *UpdateBusinessReportScheduleInput) SetScheduleName(v string) *UpdateBusinessReportScheduleInput {
 21734  	s.ScheduleName = &v
 21735  	return s
 21736  }
 21737  
 21738  type UpdateBusinessReportScheduleOutput struct {
 21739  	_ struct{} `type:"structure"`
 21740  }
 21741  
 21742  // String returns the string representation.
 21743  //
 21744  // API parameter values that are decorated as "sensitive" in the API will not
 21745  // be included in the string output. The member name will be present, but the
 21746  // value will be replaced with "sensitive".
 21747  func (s UpdateBusinessReportScheduleOutput) String() string {
 21748  	return awsutil.Prettify(s)
 21749  }
 21750  
 21751  // GoString returns the string representation.
 21752  //
 21753  // API parameter values that are decorated as "sensitive" in the API will not
 21754  // be included in the string output. The member name will be present, but the
 21755  // value will be replaced with "sensitive".
 21756  func (s UpdateBusinessReportScheduleOutput) GoString() string {
 21757  	return s.String()
 21758  }
 21759  
 21760  type UpdateConferenceProviderInput struct {
 21761  	_ struct{} `type:"structure"`
 21762  
 21763  	// The ARN of the conference provider.
 21764  	//
 21765  	// ConferenceProviderArn is a required field
 21766  	ConferenceProviderArn *string `type:"string" required:"true"`
 21767  
 21768  	// The type of the conference provider.
 21769  	//
 21770  	// ConferenceProviderType is a required field
 21771  	ConferenceProviderType *string `type:"string" required:"true" enum:"ConferenceProviderType"`
 21772  
 21773  	// The IP endpoint and protocol for calling.
 21774  	IPDialIn *IPDialIn `type:"structure"`
 21775  
 21776  	// The meeting settings for the conference provider.
 21777  	//
 21778  	// MeetingSetting is a required field
 21779  	MeetingSetting *MeetingSetting `type:"structure" required:"true"`
 21780  
 21781  	// The information for PSTN conferencing.
 21782  	PSTNDialIn *PSTNDialIn `type:"structure"`
 21783  }
 21784  
 21785  // String returns the string representation.
 21786  //
 21787  // API parameter values that are decorated as "sensitive" in the API will not
 21788  // be included in the string output. The member name will be present, but the
 21789  // value will be replaced with "sensitive".
 21790  func (s UpdateConferenceProviderInput) String() string {
 21791  	return awsutil.Prettify(s)
 21792  }
 21793  
 21794  // GoString returns the string representation.
 21795  //
 21796  // API parameter values that are decorated as "sensitive" in the API will not
 21797  // be included in the string output. The member name will be present, but the
 21798  // value will be replaced with "sensitive".
 21799  func (s UpdateConferenceProviderInput) GoString() string {
 21800  	return s.String()
 21801  }
 21802  
 21803  // Validate inspects the fields of the type to determine if they are valid.
 21804  func (s *UpdateConferenceProviderInput) Validate() error {
 21805  	invalidParams := request.ErrInvalidParams{Context: "UpdateConferenceProviderInput"}
 21806  	if s.ConferenceProviderArn == nil {
 21807  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderArn"))
 21808  	}
 21809  	if s.ConferenceProviderType == nil {
 21810  		invalidParams.Add(request.NewErrParamRequired("ConferenceProviderType"))
 21811  	}
 21812  	if s.MeetingSetting == nil {
 21813  		invalidParams.Add(request.NewErrParamRequired("MeetingSetting"))
 21814  	}
 21815  	if s.IPDialIn != nil {
 21816  		if err := s.IPDialIn.Validate(); err != nil {
 21817  			invalidParams.AddNested("IPDialIn", err.(request.ErrInvalidParams))
 21818  		}
 21819  	}
 21820  	if s.MeetingSetting != nil {
 21821  		if err := s.MeetingSetting.Validate(); err != nil {
 21822  			invalidParams.AddNested("MeetingSetting", err.(request.ErrInvalidParams))
 21823  		}
 21824  	}
 21825  	if s.PSTNDialIn != nil {
 21826  		if err := s.PSTNDialIn.Validate(); err != nil {
 21827  			invalidParams.AddNested("PSTNDialIn", err.(request.ErrInvalidParams))
 21828  		}
 21829  	}
 21830  
 21831  	if invalidParams.Len() > 0 {
 21832  		return invalidParams
 21833  	}
 21834  	return nil
 21835  }
 21836  
 21837  // SetConferenceProviderArn sets the ConferenceProviderArn field's value.
 21838  func (s *UpdateConferenceProviderInput) SetConferenceProviderArn(v string) *UpdateConferenceProviderInput {
 21839  	s.ConferenceProviderArn = &v
 21840  	return s
 21841  }
 21842  
 21843  // SetConferenceProviderType sets the ConferenceProviderType field's value.
 21844  func (s *UpdateConferenceProviderInput) SetConferenceProviderType(v string) *UpdateConferenceProviderInput {
 21845  	s.ConferenceProviderType = &v
 21846  	return s
 21847  }
 21848  
 21849  // SetIPDialIn sets the IPDialIn field's value.
 21850  func (s *UpdateConferenceProviderInput) SetIPDialIn(v *IPDialIn) *UpdateConferenceProviderInput {
 21851  	s.IPDialIn = v
 21852  	return s
 21853  }
 21854  
 21855  // SetMeetingSetting sets the MeetingSetting field's value.
 21856  func (s *UpdateConferenceProviderInput) SetMeetingSetting(v *MeetingSetting) *UpdateConferenceProviderInput {
 21857  	s.MeetingSetting = v
 21858  	return s
 21859  }
 21860  
 21861  // SetPSTNDialIn sets the PSTNDialIn field's value.
 21862  func (s *UpdateConferenceProviderInput) SetPSTNDialIn(v *PSTNDialIn) *UpdateConferenceProviderInput {
 21863  	s.PSTNDialIn = v
 21864  	return s
 21865  }
 21866  
 21867  type UpdateConferenceProviderOutput struct {
 21868  	_ struct{} `type:"structure"`
 21869  }
 21870  
 21871  // String returns the string representation.
 21872  //
 21873  // API parameter values that are decorated as "sensitive" in the API will not
 21874  // be included in the string output. The member name will be present, but the
 21875  // value will be replaced with "sensitive".
 21876  func (s UpdateConferenceProviderOutput) String() string {
 21877  	return awsutil.Prettify(s)
 21878  }
 21879  
 21880  // GoString returns the string representation.
 21881  //
 21882  // API parameter values that are decorated as "sensitive" in the API will not
 21883  // be included in the string output. The member name will be present, but the
 21884  // value will be replaced with "sensitive".
 21885  func (s UpdateConferenceProviderOutput) GoString() string {
 21886  	return s.String()
 21887  }
 21888  
 21889  type UpdateContactInput struct {
 21890  	_ struct{} `type:"structure"`
 21891  
 21892  	// The ARN of the contact to update.
 21893  	//
 21894  	// ContactArn is a required field
 21895  	ContactArn *string `type:"string" required:"true"`
 21896  
 21897  	// The updated display name of the contact.
 21898  	DisplayName *string `min:"1" type:"string"`
 21899  
 21900  	// The updated first name of the contact.
 21901  	FirstName *string `min:"1" type:"string"`
 21902  
 21903  	// The updated last name of the contact.
 21904  	LastName *string `min:"1" type:"string"`
 21905  
 21906  	// The updated phone number of the contact. The phone number type defaults to
 21907  	// WORK. You can either specify PhoneNumber or PhoneNumbers. We recommend that
 21908  	// you use PhoneNumbers, which lets you specify the phone number type and multiple
 21909  	// numbers.
 21910  	//
 21911  	// PhoneNumber is a sensitive parameter and its value will be
 21912  	// replaced with "sensitive" in string returned by UpdateContactInput's
 21913  	// String and GoString methods.
 21914  	PhoneNumber *string `type:"string" sensitive:"true"`
 21915  
 21916  	// The list of phone numbers for the contact.
 21917  	PhoneNumbers []*PhoneNumber `type:"list"`
 21918  
 21919  	// The list of SIP addresses for the contact.
 21920  	SipAddresses []*SipAddress `type:"list"`
 21921  }
 21922  
 21923  // String returns the string representation.
 21924  //
 21925  // API parameter values that are decorated as "sensitive" in the API will not
 21926  // be included in the string output. The member name will be present, but the
 21927  // value will be replaced with "sensitive".
 21928  func (s UpdateContactInput) String() string {
 21929  	return awsutil.Prettify(s)
 21930  }
 21931  
 21932  // GoString returns the string representation.
 21933  //
 21934  // API parameter values that are decorated as "sensitive" in the API will not
 21935  // be included in the string output. The member name will be present, but the
 21936  // value will be replaced with "sensitive".
 21937  func (s UpdateContactInput) GoString() string {
 21938  	return s.String()
 21939  }
 21940  
 21941  // Validate inspects the fields of the type to determine if they are valid.
 21942  func (s *UpdateContactInput) Validate() error {
 21943  	invalidParams := request.ErrInvalidParams{Context: "UpdateContactInput"}
 21944  	if s.ContactArn == nil {
 21945  		invalidParams.Add(request.NewErrParamRequired("ContactArn"))
 21946  	}
 21947  	if s.DisplayName != nil && len(*s.DisplayName) < 1 {
 21948  		invalidParams.Add(request.NewErrParamMinLen("DisplayName", 1))
 21949  	}
 21950  	if s.FirstName != nil && len(*s.FirstName) < 1 {
 21951  		invalidParams.Add(request.NewErrParamMinLen("FirstName", 1))
 21952  	}
 21953  	if s.LastName != nil && len(*s.LastName) < 1 {
 21954  		invalidParams.Add(request.NewErrParamMinLen("LastName", 1))
 21955  	}
 21956  	if s.PhoneNumbers != nil {
 21957  		for i, v := range s.PhoneNumbers {
 21958  			if v == nil {
 21959  				continue
 21960  			}
 21961  			if err := v.Validate(); err != nil {
 21962  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "PhoneNumbers", i), err.(request.ErrInvalidParams))
 21963  			}
 21964  		}
 21965  	}
 21966  	if s.SipAddresses != nil {
 21967  		for i, v := range s.SipAddresses {
 21968  			if v == nil {
 21969  				continue
 21970  			}
 21971  			if err := v.Validate(); err != nil {
 21972  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SipAddresses", i), err.(request.ErrInvalidParams))
 21973  			}
 21974  		}
 21975  	}
 21976  
 21977  	if invalidParams.Len() > 0 {
 21978  		return invalidParams
 21979  	}
 21980  	return nil
 21981  }
 21982  
 21983  // SetContactArn sets the ContactArn field's value.
 21984  func (s *UpdateContactInput) SetContactArn(v string) *UpdateContactInput {
 21985  	s.ContactArn = &v
 21986  	return s
 21987  }
 21988  
 21989  // SetDisplayName sets the DisplayName field's value.
 21990  func (s *UpdateContactInput) SetDisplayName(v string) *UpdateContactInput {
 21991  	s.DisplayName = &v
 21992  	return s
 21993  }
 21994  
 21995  // SetFirstName sets the FirstName field's value.
 21996  func (s *UpdateContactInput) SetFirstName(v string) *UpdateContactInput {
 21997  	s.FirstName = &v
 21998  	return s
 21999  }
 22000  
 22001  // SetLastName sets the LastName field's value.
 22002  func (s *UpdateContactInput) SetLastName(v string) *UpdateContactInput {
 22003  	s.LastName = &v
 22004  	return s
 22005  }
 22006  
 22007  // SetPhoneNumber sets the PhoneNumber field's value.
 22008  func (s *UpdateContactInput) SetPhoneNumber(v string) *UpdateContactInput {
 22009  	s.PhoneNumber = &v
 22010  	return s
 22011  }
 22012  
 22013  // SetPhoneNumbers sets the PhoneNumbers field's value.
 22014  func (s *UpdateContactInput) SetPhoneNumbers(v []*PhoneNumber) *UpdateContactInput {
 22015  	s.PhoneNumbers = v
 22016  	return s
 22017  }
 22018  
 22019  // SetSipAddresses sets the SipAddresses field's value.
 22020  func (s *UpdateContactInput) SetSipAddresses(v []*SipAddress) *UpdateContactInput {
 22021  	s.SipAddresses = v
 22022  	return s
 22023  }
 22024  
 22025  type UpdateContactOutput struct {
 22026  	_ struct{} `type:"structure"`
 22027  }
 22028  
 22029  // String returns the string representation.
 22030  //
 22031  // API parameter values that are decorated as "sensitive" in the API will not
 22032  // be included in the string output. The member name will be present, but the
 22033  // value will be replaced with "sensitive".
 22034  func (s UpdateContactOutput) String() string {
 22035  	return awsutil.Prettify(s)
 22036  }
 22037  
 22038  // GoString returns the string representation.
 22039  //
 22040  // API parameter values that are decorated as "sensitive" in the API will not
 22041  // be included in the string output. The member name will be present, but the
 22042  // value will be replaced with "sensitive".
 22043  func (s UpdateContactOutput) GoString() string {
 22044  	return s.String()
 22045  }
 22046  
 22047  type UpdateDeviceInput struct {
 22048  	_ struct{} `type:"structure"`
 22049  
 22050  	// The ARN of the device to update. Required.
 22051  	DeviceArn *string `type:"string"`
 22052  
 22053  	// The updated device name. Required.
 22054  	DeviceName *string `min:"2" type:"string"`
 22055  }
 22056  
 22057  // String returns the string representation.
 22058  //
 22059  // API parameter values that are decorated as "sensitive" in the API will not
 22060  // be included in the string output. The member name will be present, but the
 22061  // value will be replaced with "sensitive".
 22062  func (s UpdateDeviceInput) String() string {
 22063  	return awsutil.Prettify(s)
 22064  }
 22065  
 22066  // GoString returns the string representation.
 22067  //
 22068  // API parameter values that are decorated as "sensitive" in the API will not
 22069  // be included in the string output. The member name will be present, but the
 22070  // value will be replaced with "sensitive".
 22071  func (s UpdateDeviceInput) GoString() string {
 22072  	return s.String()
 22073  }
 22074  
 22075  // Validate inspects the fields of the type to determine if they are valid.
 22076  func (s *UpdateDeviceInput) Validate() error {
 22077  	invalidParams := request.ErrInvalidParams{Context: "UpdateDeviceInput"}
 22078  	if s.DeviceName != nil && len(*s.DeviceName) < 2 {
 22079  		invalidParams.Add(request.NewErrParamMinLen("DeviceName", 2))
 22080  	}
 22081  
 22082  	if invalidParams.Len() > 0 {
 22083  		return invalidParams
 22084  	}
 22085  	return nil
 22086  }
 22087  
 22088  // SetDeviceArn sets the DeviceArn field's value.
 22089  func (s *UpdateDeviceInput) SetDeviceArn(v string) *UpdateDeviceInput {
 22090  	s.DeviceArn = &v
 22091  	return s
 22092  }
 22093  
 22094  // SetDeviceName sets the DeviceName field's value.
 22095  func (s *UpdateDeviceInput) SetDeviceName(v string) *UpdateDeviceInput {
 22096  	s.DeviceName = &v
 22097  	return s
 22098  }
 22099  
 22100  type UpdateDeviceOutput struct {
 22101  	_ struct{} `type:"structure"`
 22102  }
 22103  
 22104  // String returns the string representation.
 22105  //
 22106  // API parameter values that are decorated as "sensitive" in the API will not
 22107  // be included in the string output. The member name will be present, but the
 22108  // value will be replaced with "sensitive".
 22109  func (s UpdateDeviceOutput) String() string {
 22110  	return awsutil.Prettify(s)
 22111  }
 22112  
 22113  // GoString returns the string representation.
 22114  //
 22115  // API parameter values that are decorated as "sensitive" in the API will not
 22116  // be included in the string output. The member name will be present, but the
 22117  // value will be replaced with "sensitive".
 22118  func (s UpdateDeviceOutput) GoString() string {
 22119  	return s.String()
 22120  }
 22121  
 22122  // Settings for the end of meeting reminder feature that are applied to a room
 22123  // profile. The end of meeting reminder enables Alexa to remind users when a
 22124  // meeting is ending.
 22125  type UpdateEndOfMeetingReminder struct {
 22126  	_ struct{} `type:"structure"`
 22127  
 22128  	// Whether an end of meeting reminder is enabled or not.
 22129  	Enabled *bool `type:"boolean"`
 22130  
 22131  	// Updates settings for the end of meeting reminder feature that are applied
 22132  	// to a room profile. The end of meeting reminder enables Alexa to remind users
 22133  	// when a meeting is ending.
 22134  	ReminderAtMinutes []*int64 `min:"1" type:"list"`
 22135  
 22136  	// The type of sound that users hear during the end of meeting reminder.
 22137  	ReminderType *string `type:"string" enum:"EndOfMeetingReminderType"`
 22138  }
 22139  
 22140  // String returns the string representation.
 22141  //
 22142  // API parameter values that are decorated as "sensitive" in the API will not
 22143  // be included in the string output. The member name will be present, but the
 22144  // value will be replaced with "sensitive".
 22145  func (s UpdateEndOfMeetingReminder) String() string {
 22146  	return awsutil.Prettify(s)
 22147  }
 22148  
 22149  // GoString returns the string representation.
 22150  //
 22151  // API parameter values that are decorated as "sensitive" in the API will not
 22152  // be included in the string output. The member name will be present, but the
 22153  // value will be replaced with "sensitive".
 22154  func (s UpdateEndOfMeetingReminder) GoString() string {
 22155  	return s.String()
 22156  }
 22157  
 22158  // Validate inspects the fields of the type to determine if they are valid.
 22159  func (s *UpdateEndOfMeetingReminder) Validate() error {
 22160  	invalidParams := request.ErrInvalidParams{Context: "UpdateEndOfMeetingReminder"}
 22161  	if s.ReminderAtMinutes != nil && len(s.ReminderAtMinutes) < 1 {
 22162  		invalidParams.Add(request.NewErrParamMinLen("ReminderAtMinutes", 1))
 22163  	}
 22164  
 22165  	if invalidParams.Len() > 0 {
 22166  		return invalidParams
 22167  	}
 22168  	return nil
 22169  }
 22170  
 22171  // SetEnabled sets the Enabled field's value.
 22172  func (s *UpdateEndOfMeetingReminder) SetEnabled(v bool) *UpdateEndOfMeetingReminder {
 22173  	s.Enabled = &v
 22174  	return s
 22175  }
 22176  
 22177  // SetReminderAtMinutes sets the ReminderAtMinutes field's value.
 22178  func (s *UpdateEndOfMeetingReminder) SetReminderAtMinutes(v []*int64) *UpdateEndOfMeetingReminder {
 22179  	s.ReminderAtMinutes = v
 22180  	return s
 22181  }
 22182  
 22183  // SetReminderType sets the ReminderType field's value.
 22184  func (s *UpdateEndOfMeetingReminder) SetReminderType(v string) *UpdateEndOfMeetingReminder {
 22185  	s.ReminderType = &v
 22186  	return s
 22187  }
 22188  
 22189  type UpdateGatewayGroupInput struct {
 22190  	_ struct{} `type:"structure"`
 22191  
 22192  	// The updated description of the gateway group.
 22193  	Description *string `type:"string"`
 22194  
 22195  	// The ARN of the gateway group to update.
 22196  	//
 22197  	// GatewayGroupArn is a required field
 22198  	GatewayGroupArn *string `type:"string" required:"true"`
 22199  
 22200  	// The updated name of the gateway group.
 22201  	Name *string `min:"1" type:"string"`
 22202  }
 22203  
 22204  // String returns the string representation.
 22205  //
 22206  // API parameter values that are decorated as "sensitive" in the API will not
 22207  // be included in the string output. The member name will be present, but the
 22208  // value will be replaced with "sensitive".
 22209  func (s UpdateGatewayGroupInput) String() string {
 22210  	return awsutil.Prettify(s)
 22211  }
 22212  
 22213  // GoString returns the string representation.
 22214  //
 22215  // API parameter values that are decorated as "sensitive" in the API will not
 22216  // be included in the string output. The member name will be present, but the
 22217  // value will be replaced with "sensitive".
 22218  func (s UpdateGatewayGroupInput) GoString() string {
 22219  	return s.String()
 22220  }
 22221  
 22222  // Validate inspects the fields of the type to determine if they are valid.
 22223  func (s *UpdateGatewayGroupInput) Validate() error {
 22224  	invalidParams := request.ErrInvalidParams{Context: "UpdateGatewayGroupInput"}
 22225  	if s.GatewayGroupArn == nil {
 22226  		invalidParams.Add(request.NewErrParamRequired("GatewayGroupArn"))
 22227  	}
 22228  	if s.Name != nil && len(*s.Name) < 1 {
 22229  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 22230  	}
 22231  
 22232  	if invalidParams.Len() > 0 {
 22233  		return invalidParams
 22234  	}
 22235  	return nil
 22236  }
 22237  
 22238  // SetDescription sets the Description field's value.
 22239  func (s *UpdateGatewayGroupInput) SetDescription(v string) *UpdateGatewayGroupInput {
 22240  	s.Description = &v
 22241  	return s
 22242  }
 22243  
 22244  // SetGatewayGroupArn sets the GatewayGroupArn field's value.
 22245  func (s *UpdateGatewayGroupInput) SetGatewayGroupArn(v string) *UpdateGatewayGroupInput {
 22246  	s.GatewayGroupArn = &v
 22247  	return s
 22248  }
 22249  
 22250  // SetName sets the Name field's value.
 22251  func (s *UpdateGatewayGroupInput) SetName(v string) *UpdateGatewayGroupInput {
 22252  	s.Name = &v
 22253  	return s
 22254  }
 22255  
 22256  type UpdateGatewayGroupOutput struct {
 22257  	_ struct{} `type:"structure"`
 22258  }
 22259  
 22260  // String returns the string representation.
 22261  //
 22262  // API parameter values that are decorated as "sensitive" in the API will not
 22263  // be included in the string output. The member name will be present, but the
 22264  // value will be replaced with "sensitive".
 22265  func (s UpdateGatewayGroupOutput) String() string {
 22266  	return awsutil.Prettify(s)
 22267  }
 22268  
 22269  // GoString returns the string representation.
 22270  //
 22271  // API parameter values that are decorated as "sensitive" in the API will not
 22272  // be included in the string output. The member name will be present, but the
 22273  // value will be replaced with "sensitive".
 22274  func (s UpdateGatewayGroupOutput) GoString() string {
 22275  	return s.String()
 22276  }
 22277  
 22278  type UpdateGatewayInput struct {
 22279  	_ struct{} `type:"structure"`
 22280  
 22281  	// The updated description of the gateway.
 22282  	Description *string `type:"string"`
 22283  
 22284  	// The ARN of the gateway to update.
 22285  	//
 22286  	// GatewayArn is a required field
 22287  	GatewayArn *string `type:"string" required:"true"`
 22288  
 22289  	// The updated name of the gateway.
 22290  	Name *string `min:"1" type:"string"`
 22291  
 22292  	// The updated software version of the gateway. The gateway automatically updates
 22293  	// its software version during normal operation.
 22294  	SoftwareVersion *string `min:"1" type:"string"`
 22295  }
 22296  
 22297  // String returns the string representation.
 22298  //
 22299  // API parameter values that are decorated as "sensitive" in the API will not
 22300  // be included in the string output. The member name will be present, but the
 22301  // value will be replaced with "sensitive".
 22302  func (s UpdateGatewayInput) String() string {
 22303  	return awsutil.Prettify(s)
 22304  }
 22305  
 22306  // GoString returns the string representation.
 22307  //
 22308  // API parameter values that are decorated as "sensitive" in the API will not
 22309  // be included in the string output. The member name will be present, but the
 22310  // value will be replaced with "sensitive".
 22311  func (s UpdateGatewayInput) GoString() string {
 22312  	return s.String()
 22313  }
 22314  
 22315  // Validate inspects the fields of the type to determine if they are valid.
 22316  func (s *UpdateGatewayInput) Validate() error {
 22317  	invalidParams := request.ErrInvalidParams{Context: "UpdateGatewayInput"}
 22318  	if s.GatewayArn == nil {
 22319  		invalidParams.Add(request.NewErrParamRequired("GatewayArn"))
 22320  	}
 22321  	if s.Name != nil && len(*s.Name) < 1 {
 22322  		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
 22323  	}
 22324  	if s.SoftwareVersion != nil && len(*s.SoftwareVersion) < 1 {
 22325  		invalidParams.Add(request.NewErrParamMinLen("SoftwareVersion", 1))
 22326  	}
 22327  
 22328  	if invalidParams.Len() > 0 {
 22329  		return invalidParams
 22330  	}
 22331  	return nil
 22332  }
 22333  
 22334  // SetDescription sets the Description field's value.
 22335  func (s *UpdateGatewayInput) SetDescription(v string) *UpdateGatewayInput {
 22336  	s.Description = &v
 22337  	return s
 22338  }
 22339  
 22340  // SetGatewayArn sets the GatewayArn field's value.
 22341  func (s *UpdateGatewayInput) SetGatewayArn(v string) *UpdateGatewayInput {
 22342  	s.GatewayArn = &v
 22343  	return s
 22344  }
 22345  
 22346  // SetName sets the Name field's value.
 22347  func (s *UpdateGatewayInput) SetName(v string) *UpdateGatewayInput {
 22348  	s.Name = &v
 22349  	return s
 22350  }
 22351  
 22352  // SetSoftwareVersion sets the SoftwareVersion field's value.
 22353  func (s *UpdateGatewayInput) SetSoftwareVersion(v string) *UpdateGatewayInput {
 22354  	s.SoftwareVersion = &v
 22355  	return s
 22356  }
 22357  
 22358  type UpdateGatewayOutput struct {
 22359  	_ struct{} `type:"structure"`
 22360  }
 22361  
 22362  // String returns the string representation.
 22363  //
 22364  // API parameter values that are decorated as "sensitive" in the API will not
 22365  // be included in the string output. The member name will be present, but the
 22366  // value will be replaced with "sensitive".
 22367  func (s UpdateGatewayOutput) String() string {
 22368  	return awsutil.Prettify(s)
 22369  }
 22370  
 22371  // GoString returns the string representation.
 22372  //
 22373  // API parameter values that are decorated as "sensitive" in the API will not
 22374  // be included in the string output. The member name will be present, but the
 22375  // value will be replaced with "sensitive".
 22376  func (s UpdateGatewayOutput) GoString() string {
 22377  	return s.String()
 22378  }
 22379  
 22380  // Updates settings for the instant booking feature that are applied to a room
 22381  // profile. If instant booking is enabled, Alexa automatically reserves a room
 22382  // if it is free when a user joins a meeting with Alexa.
 22383  type UpdateInstantBooking struct {
 22384  	_ struct{} `type:"structure"`
 22385  
 22386  	// Duration between 15 and 240 minutes at increments of 15 that determines how
 22387  	// long to book an available room when a meeting is started with Alexa.
 22388  	DurationInMinutes *int64 `type:"integer"`
 22389  
 22390  	// Whether instant booking is enabled or not.
 22391  	Enabled *bool `type:"boolean"`
 22392  }
 22393  
 22394  // String returns the string representation.
 22395  //
 22396  // API parameter values that are decorated as "sensitive" in the API will not
 22397  // be included in the string output. The member name will be present, but the
 22398  // value will be replaced with "sensitive".
 22399  func (s UpdateInstantBooking) String() string {
 22400  	return awsutil.Prettify(s)
 22401  }
 22402  
 22403  // GoString returns the string representation.
 22404  //
 22405  // API parameter values that are decorated as "sensitive" in the API will not
 22406  // be included in the string output. The member name will be present, but the
 22407  // value will be replaced with "sensitive".
 22408  func (s UpdateInstantBooking) GoString() string {
 22409  	return s.String()
 22410  }
 22411  
 22412  // SetDurationInMinutes sets the DurationInMinutes field's value.
 22413  func (s *UpdateInstantBooking) SetDurationInMinutes(v int64) *UpdateInstantBooking {
 22414  	s.DurationInMinutes = &v
 22415  	return s
 22416  }
 22417  
 22418  // SetEnabled sets the Enabled field's value.
 22419  func (s *UpdateInstantBooking) SetEnabled(v bool) *UpdateInstantBooking {
 22420  	s.Enabled = &v
 22421  	return s
 22422  }
 22423  
 22424  // Updates meeting room settings of a room profile.
 22425  type UpdateMeetingRoomConfiguration struct {
 22426  	_ struct{} `type:"structure"`
 22427  
 22428  	// Settings for the end of meeting reminder feature that are applied to a room
 22429  	// profile. The end of meeting reminder enables Alexa to remind users when a
 22430  	// meeting is ending.
 22431  	EndOfMeetingReminder *UpdateEndOfMeetingReminder `type:"structure"`
 22432  
 22433  	// Settings to automatically book an available room available for a configured
 22434  	// duration when joining a meeting with Alexa.
 22435  	InstantBooking *UpdateInstantBooking `type:"structure"`
 22436  
 22437  	// Settings for requiring a check in when a room is reserved. Alexa can cancel
 22438  	// a room reservation if it's not checked into to make the room available for
 22439  	// others. Users can check in by joining the meeting with Alexa or an AVS device,
 22440  	// or by saying “Alexa, check in.”
 22441  	RequireCheckIn *UpdateRequireCheckIn `type:"structure"`
 22442  
 22443  	// Whether room utilization metrics are enabled or not.
 22444  	RoomUtilizationMetricsEnabled *bool `type:"boolean"`
 22445  }
 22446  
 22447  // String returns the string representation.
 22448  //
 22449  // API parameter values that are decorated as "sensitive" in the API will not
 22450  // be included in the string output. The member name will be present, but the
 22451  // value will be replaced with "sensitive".
 22452  func (s UpdateMeetingRoomConfiguration) String() string {
 22453  	return awsutil.Prettify(s)
 22454  }
 22455  
 22456  // GoString returns the string representation.
 22457  //
 22458  // API parameter values that are decorated as "sensitive" in the API will not
 22459  // be included in the string output. The member name will be present, but the
 22460  // value will be replaced with "sensitive".
 22461  func (s UpdateMeetingRoomConfiguration) GoString() string {
 22462  	return s.String()
 22463  }
 22464  
 22465  // Validate inspects the fields of the type to determine if they are valid.
 22466  func (s *UpdateMeetingRoomConfiguration) Validate() error {
 22467  	invalidParams := request.ErrInvalidParams{Context: "UpdateMeetingRoomConfiguration"}
 22468  	if s.EndOfMeetingReminder != nil {
 22469  		if err := s.EndOfMeetingReminder.Validate(); err != nil {
 22470  			invalidParams.AddNested("EndOfMeetingReminder", err.(request.ErrInvalidParams))
 22471  		}
 22472  	}
 22473  
 22474  	if invalidParams.Len() > 0 {
 22475  		return invalidParams
 22476  	}
 22477  	return nil
 22478  }
 22479  
 22480  // SetEndOfMeetingReminder sets the EndOfMeetingReminder field's value.
 22481  func (s *UpdateMeetingRoomConfiguration) SetEndOfMeetingReminder(v *UpdateEndOfMeetingReminder) *UpdateMeetingRoomConfiguration {
 22482  	s.EndOfMeetingReminder = v
 22483  	return s
 22484  }
 22485  
 22486  // SetInstantBooking sets the InstantBooking field's value.
 22487  func (s *UpdateMeetingRoomConfiguration) SetInstantBooking(v *UpdateInstantBooking) *UpdateMeetingRoomConfiguration {
 22488  	s.InstantBooking = v
 22489  	return s
 22490  }
 22491  
 22492  // SetRequireCheckIn sets the RequireCheckIn field's value.
 22493  func (s *UpdateMeetingRoomConfiguration) SetRequireCheckIn(v *UpdateRequireCheckIn) *UpdateMeetingRoomConfiguration {
 22494  	s.RequireCheckIn = v
 22495  	return s
 22496  }
 22497  
 22498  // SetRoomUtilizationMetricsEnabled sets the RoomUtilizationMetricsEnabled field's value.
 22499  func (s *UpdateMeetingRoomConfiguration) SetRoomUtilizationMetricsEnabled(v bool) *UpdateMeetingRoomConfiguration {
 22500  	s.RoomUtilizationMetricsEnabled = &v
 22501  	return s
 22502  }
 22503  
 22504  type UpdateNetworkProfileInput struct {
 22505  	_ struct{} `type:"structure"`
 22506  
 22507  	// The ARN of the Private Certificate Authority (PCA) created in AWS Certificate
 22508  	// Manager (ACM). This is used to issue certificates to the devices.
 22509  	CertificateAuthorityArn *string `type:"string"`
 22510  
 22511  	// The current password of the Wi-Fi network.
 22512  	//
 22513  	// CurrentPassword is a sensitive parameter and its value will be
 22514  	// replaced with "sensitive" in string returned by UpdateNetworkProfileInput's
 22515  	// String and GoString methods.
 22516  	CurrentPassword *string `min:"5" type:"string" sensitive:"true"`
 22517  
 22518  	// Detailed information about a device's network profile.
 22519  	Description *string `type:"string"`
 22520  
 22521  	// The ARN of the network profile associated with a device.
 22522  	//
 22523  	// NetworkProfileArn is a required field
 22524  	NetworkProfileArn *string `type:"string" required:"true"`
 22525  
 22526  	// The name of the network profile associated with a device.
 22527  	NetworkProfileName *string `min:"1" type:"string"`
 22528  
 22529  	// The next, or subsequent, password of the Wi-Fi network. This password is
 22530  	// asynchronously transmitted to the device and is used when the password of
 22531  	// the network changes to NextPassword.
 22532  	//
 22533  	// NextPassword is a sensitive parameter and its value will be
 22534  	// replaced with "sensitive" in string returned by UpdateNetworkProfileInput's
 22535  	// String and GoString methods.
 22536  	NextPassword *string `type:"string" sensitive:"true"`
 22537  
 22538  	// The root certificate(s) of your authentication server that will be installed
 22539  	// on your devices and used to trust your authentication server during EAP negotiation.
 22540  	TrustAnchors []*string `min:"1" type:"list"`
 22541  }
 22542  
 22543  // String returns the string representation.
 22544  //
 22545  // API parameter values that are decorated as "sensitive" in the API will not
 22546  // be included in the string output. The member name will be present, but the
 22547  // value will be replaced with "sensitive".
 22548  func (s UpdateNetworkProfileInput) String() string {
 22549  	return awsutil.Prettify(s)
 22550  }
 22551  
 22552  // GoString returns the string representation.
 22553  //
 22554  // API parameter values that are decorated as "sensitive" in the API will not
 22555  // be included in the string output. The member name will be present, but the
 22556  // value will be replaced with "sensitive".
 22557  func (s UpdateNetworkProfileInput) GoString() string {
 22558  	return s.String()
 22559  }
 22560  
 22561  // Validate inspects the fields of the type to determine if they are valid.
 22562  func (s *UpdateNetworkProfileInput) Validate() error {
 22563  	invalidParams := request.ErrInvalidParams{Context: "UpdateNetworkProfileInput"}
 22564  	if s.CurrentPassword != nil && len(*s.CurrentPassword) < 5 {
 22565  		invalidParams.Add(request.NewErrParamMinLen("CurrentPassword", 5))
 22566  	}
 22567  	if s.NetworkProfileArn == nil {
 22568  		invalidParams.Add(request.NewErrParamRequired("NetworkProfileArn"))
 22569  	}
 22570  	if s.NetworkProfileName != nil && len(*s.NetworkProfileName) < 1 {
 22571  		invalidParams.Add(request.NewErrParamMinLen("NetworkProfileName", 1))
 22572  	}
 22573  	if s.TrustAnchors != nil && len(s.TrustAnchors) < 1 {
 22574  		invalidParams.Add(request.NewErrParamMinLen("TrustAnchors", 1))
 22575  	}
 22576  
 22577  	if invalidParams.Len() > 0 {
 22578  		return invalidParams
 22579  	}
 22580  	return nil
 22581  }
 22582  
 22583  // SetCertificateAuthorityArn sets the CertificateAuthorityArn field's value.
 22584  func (s *UpdateNetworkProfileInput) SetCertificateAuthorityArn(v string) *UpdateNetworkProfileInput {
 22585  	s.CertificateAuthorityArn = &v
 22586  	return s
 22587  }
 22588  
 22589  // SetCurrentPassword sets the CurrentPassword field's value.
 22590  func (s *UpdateNetworkProfileInput) SetCurrentPassword(v string) *UpdateNetworkProfileInput {
 22591  	s.CurrentPassword = &v
 22592  	return s
 22593  }
 22594  
 22595  // SetDescription sets the Description field's value.
 22596  func (s *UpdateNetworkProfileInput) SetDescription(v string) *UpdateNetworkProfileInput {
 22597  	s.Description = &v
 22598  	return s
 22599  }
 22600  
 22601  // SetNetworkProfileArn sets the NetworkProfileArn field's value.
 22602  func (s *UpdateNetworkProfileInput) SetNetworkProfileArn(v string) *UpdateNetworkProfileInput {
 22603  	s.NetworkProfileArn = &v
 22604  	return s
 22605  }
 22606  
 22607  // SetNetworkProfileName sets the NetworkProfileName field's value.
 22608  func (s *UpdateNetworkProfileInput) SetNetworkProfileName(v string) *UpdateNetworkProfileInput {
 22609  	s.NetworkProfileName = &v
 22610  	return s
 22611  }
 22612  
 22613  // SetNextPassword sets the NextPassword field's value.
 22614  func (s *UpdateNetworkProfileInput) SetNextPassword(v string) *UpdateNetworkProfileInput {
 22615  	s.NextPassword = &v
 22616  	return s
 22617  }
 22618  
 22619  // SetTrustAnchors sets the TrustAnchors field's value.
 22620  func (s *UpdateNetworkProfileInput) SetTrustAnchors(v []*string) *UpdateNetworkProfileInput {
 22621  	s.TrustAnchors = v
 22622  	return s
 22623  }
 22624  
 22625  type UpdateNetworkProfileOutput struct {
 22626  	_ struct{} `type:"structure"`
 22627  }
 22628  
 22629  // String returns the string representation.
 22630  //
 22631  // API parameter values that are decorated as "sensitive" in the API will not
 22632  // be included in the string output. The member name will be present, but the
 22633  // value will be replaced with "sensitive".
 22634  func (s UpdateNetworkProfileOutput) String() string {
 22635  	return awsutil.Prettify(s)
 22636  }
 22637  
 22638  // GoString returns the string representation.
 22639  //
 22640  // API parameter values that are decorated as "sensitive" in the API will not
 22641  // be included in the string output. The member name will be present, but the
 22642  // value will be replaced with "sensitive".
 22643  func (s UpdateNetworkProfileOutput) GoString() string {
 22644  	return s.String()
 22645  }
 22646  
 22647  type UpdateProfileInput struct {
 22648  	_ struct{} `type:"structure"`
 22649  
 22650  	// The updated address for the room profile.
 22651  	Address *string `min:"1" type:"string"`
 22652  
 22653  	// Whether data retention of the profile is enabled.
 22654  	DataRetentionOptIn *bool `type:"boolean"`
 22655  
 22656  	// The updated distance unit for the room profile.
 22657  	DistanceUnit *string `type:"string" enum:"DistanceUnit"`
 22658  
 22659  	// Sets the profile as default if selected. If this is missing, no update is
 22660  	// done to the default status.
 22661  	IsDefault *bool `type:"boolean"`
 22662  
 22663  	// The updated locale for the room profile. (This is currently only available
 22664  	// to a limited preview audience.)
 22665  	Locale *string `min:"1" type:"string"`
 22666  
 22667  	// The updated maximum volume limit for the room profile.
 22668  	MaxVolumeLimit *int64 `type:"integer"`
 22669  
 22670  	// The updated meeting room settings of a room profile.
 22671  	MeetingRoomConfiguration *UpdateMeetingRoomConfiguration `type:"structure"`
 22672  
 22673  	// Whether the PSTN setting of the room profile is enabled.
 22674  	PSTNEnabled *bool `type:"boolean"`
 22675  
 22676  	// The ARN of the room profile to update. Required.
 22677  	ProfileArn *string `type:"string"`
 22678  
 22679  	// The updated name for the room profile.
 22680  	ProfileName *string `min:"1" type:"string"`
 22681  
 22682  	// Whether the setup mode of the profile is enabled.
 22683  	SetupModeDisabled *bool `type:"boolean"`
 22684  
 22685  	// The updated temperature unit for the room profile.
 22686  	TemperatureUnit *string `type:"string" enum:"TemperatureUnit"`
 22687  
 22688  	// The updated timezone for the room profile.
 22689  	Timezone *string `min:"1" type:"string"`
 22690  
 22691  	// The updated wake word for the room profile.
 22692  	WakeWord *string `type:"string" enum:"WakeWord"`
 22693  }
 22694  
 22695  // String returns the string representation.
 22696  //
 22697  // API parameter values that are decorated as "sensitive" in the API will not
 22698  // be included in the string output. The member name will be present, but the
 22699  // value will be replaced with "sensitive".
 22700  func (s UpdateProfileInput) String() string {
 22701  	return awsutil.Prettify(s)
 22702  }
 22703  
 22704  // GoString returns the string representation.
 22705  //
 22706  // API parameter values that are decorated as "sensitive" in the API will not
 22707  // be included in the string output. The member name will be present, but the
 22708  // value will be replaced with "sensitive".
 22709  func (s UpdateProfileInput) GoString() string {
 22710  	return s.String()
 22711  }
 22712  
 22713  // Validate inspects the fields of the type to determine if they are valid.
 22714  func (s *UpdateProfileInput) Validate() error {
 22715  	invalidParams := request.ErrInvalidParams{Context: "UpdateProfileInput"}
 22716  	if s.Address != nil && len(*s.Address) < 1 {
 22717  		invalidParams.Add(request.NewErrParamMinLen("Address", 1))
 22718  	}
 22719  	if s.Locale != nil && len(*s.Locale) < 1 {
 22720  		invalidParams.Add(request.NewErrParamMinLen("Locale", 1))
 22721  	}
 22722  	if s.ProfileName != nil && len(*s.ProfileName) < 1 {
 22723  		invalidParams.Add(request.NewErrParamMinLen("ProfileName", 1))
 22724  	}
 22725  	if s.Timezone != nil && len(*s.Timezone) < 1 {
 22726  		invalidParams.Add(request.NewErrParamMinLen("Timezone", 1))
 22727  	}
 22728  	if s.MeetingRoomConfiguration != nil {
 22729  		if err := s.MeetingRoomConfiguration.Validate(); err != nil {
 22730  			invalidParams.AddNested("MeetingRoomConfiguration", err.(request.ErrInvalidParams))
 22731  		}
 22732  	}
 22733  
 22734  	if invalidParams.Len() > 0 {
 22735  		return invalidParams
 22736  	}
 22737  	return nil
 22738  }
 22739  
 22740  // SetAddress sets the Address field's value.
 22741  func (s *UpdateProfileInput) SetAddress(v string) *UpdateProfileInput {
 22742  	s.Address = &v
 22743  	return s
 22744  }
 22745  
 22746  // SetDataRetentionOptIn sets the DataRetentionOptIn field's value.
 22747  func (s *UpdateProfileInput) SetDataRetentionOptIn(v bool) *UpdateProfileInput {
 22748  	s.DataRetentionOptIn = &v
 22749  	return s
 22750  }
 22751  
 22752  // SetDistanceUnit sets the DistanceUnit field's value.
 22753  func (s *UpdateProfileInput) SetDistanceUnit(v string) *UpdateProfileInput {
 22754  	s.DistanceUnit = &v
 22755  	return s
 22756  }
 22757  
 22758  // SetIsDefault sets the IsDefault field's value.
 22759  func (s *UpdateProfileInput) SetIsDefault(v bool) *UpdateProfileInput {
 22760  	s.IsDefault = &v
 22761  	return s
 22762  }
 22763  
 22764  // SetLocale sets the Locale field's value.
 22765  func (s *UpdateProfileInput) SetLocale(v string) *UpdateProfileInput {
 22766  	s.Locale = &v
 22767  	return s
 22768  }
 22769  
 22770  // SetMaxVolumeLimit sets the MaxVolumeLimit field's value.
 22771  func (s *UpdateProfileInput) SetMaxVolumeLimit(v int64) *UpdateProfileInput {
 22772  	s.MaxVolumeLimit = &v
 22773  	return s
 22774  }
 22775  
 22776  // SetMeetingRoomConfiguration sets the MeetingRoomConfiguration field's value.
 22777  func (s *UpdateProfileInput) SetMeetingRoomConfiguration(v *UpdateMeetingRoomConfiguration) *UpdateProfileInput {
 22778  	s.MeetingRoomConfiguration = v
 22779  	return s
 22780  }
 22781  
 22782  // SetPSTNEnabled sets the PSTNEnabled field's value.
 22783  func (s *UpdateProfileInput) SetPSTNEnabled(v bool) *UpdateProfileInput {
 22784  	s.PSTNEnabled = &v
 22785  	return s
 22786  }
 22787  
 22788  // SetProfileArn sets the ProfileArn field's value.
 22789  func (s *UpdateProfileInput) SetProfileArn(v string) *UpdateProfileInput {
 22790  	s.ProfileArn = &v
 22791  	return s
 22792  }
 22793  
 22794  // SetProfileName sets the ProfileName field's value.
 22795  func (s *UpdateProfileInput) SetProfileName(v string) *UpdateProfileInput {
 22796  	s.ProfileName = &v
 22797  	return s
 22798  }
 22799  
 22800  // SetSetupModeDisabled sets the SetupModeDisabled field's value.
 22801  func (s *UpdateProfileInput) SetSetupModeDisabled(v bool) *UpdateProfileInput {
 22802  	s.SetupModeDisabled = &v
 22803  	return s
 22804  }
 22805  
 22806  // SetTemperatureUnit sets the TemperatureUnit field's value.
 22807  func (s *UpdateProfileInput) SetTemperatureUnit(v string) *UpdateProfileInput {
 22808  	s.TemperatureUnit = &v
 22809  	return s
 22810  }
 22811  
 22812  // SetTimezone sets the Timezone field's value.
 22813  func (s *UpdateProfileInput) SetTimezone(v string) *UpdateProfileInput {
 22814  	s.Timezone = &v
 22815  	return s
 22816  }
 22817  
 22818  // SetWakeWord sets the WakeWord field's value.
 22819  func (s *UpdateProfileInput) SetWakeWord(v string) *UpdateProfileInput {
 22820  	s.WakeWord = &v
 22821  	return s
 22822  }
 22823  
 22824  type UpdateProfileOutput struct {
 22825  	_ struct{} `type:"structure"`
 22826  }
 22827  
 22828  // String returns the string representation.
 22829  //
 22830  // API parameter values that are decorated as "sensitive" in the API will not
 22831  // be included in the string output. The member name will be present, but the
 22832  // value will be replaced with "sensitive".
 22833  func (s UpdateProfileOutput) String() string {
 22834  	return awsutil.Prettify(s)
 22835  }
 22836  
 22837  // GoString returns the string representation.
 22838  //
 22839  // API parameter values that are decorated as "sensitive" in the API will not
 22840  // be included in the string output. The member name will be present, but the
 22841  // value will be replaced with "sensitive".
 22842  func (s UpdateProfileOutput) GoString() string {
 22843  	return s.String()
 22844  }
 22845  
 22846  // Updates settings for the require check in feature that are applied to a room
 22847  // profile. Require check in allows a meeting room’s Alexa or AVS device to
 22848  // prompt the user to check in; otherwise, the room will be released.
 22849  type UpdateRequireCheckIn struct {
 22850  	_ struct{} `type:"structure"`
 22851  
 22852  	// Whether require check in is enabled or not.
 22853  	Enabled *bool `type:"boolean"`
 22854  
 22855  	// Duration between 5 and 20 minutes to determine when to release the room if
 22856  	// it's not checked into.
 22857  	ReleaseAfterMinutes *int64 `type:"integer"`
 22858  }
 22859  
 22860  // String returns the string representation.
 22861  //
 22862  // API parameter values that are decorated as "sensitive" in the API will not
 22863  // be included in the string output. The member name will be present, but the
 22864  // value will be replaced with "sensitive".
 22865  func (s UpdateRequireCheckIn) String() string {
 22866  	return awsutil.Prettify(s)
 22867  }
 22868  
 22869  // GoString returns the string representation.
 22870  //
 22871  // API parameter values that are decorated as "sensitive" in the API will not
 22872  // be included in the string output. The member name will be present, but the
 22873  // value will be replaced with "sensitive".
 22874  func (s UpdateRequireCheckIn) GoString() string {
 22875  	return s.String()
 22876  }
 22877  
 22878  // SetEnabled sets the Enabled field's value.
 22879  func (s *UpdateRequireCheckIn) SetEnabled(v bool) *UpdateRequireCheckIn {
 22880  	s.Enabled = &v
 22881  	return s
 22882  }
 22883  
 22884  // SetReleaseAfterMinutes sets the ReleaseAfterMinutes field's value.
 22885  func (s *UpdateRequireCheckIn) SetReleaseAfterMinutes(v int64) *UpdateRequireCheckIn {
 22886  	s.ReleaseAfterMinutes = &v
 22887  	return s
 22888  }
 22889  
 22890  type UpdateRoomInput struct {
 22891  	_ struct{} `type:"structure"`
 22892  
 22893  	// The updated description for the room.
 22894  	Description *string `min:"1" type:"string"`
 22895  
 22896  	// The updated profile ARN for the room.
 22897  	ProfileArn *string `type:"string"`
 22898  
 22899  	// The updated provider calendar ARN for the room.
 22900  	ProviderCalendarId *string `type:"string"`
 22901  
 22902  	// The ARN of the room to update.
 22903  	RoomArn *string `type:"string"`
 22904  
 22905  	// The updated name for the room.
 22906  	RoomName *string `min:"1" type:"string"`
 22907  }
 22908  
 22909  // String returns the string representation.
 22910  //
 22911  // API parameter values that are decorated as "sensitive" in the API will not
 22912  // be included in the string output. The member name will be present, but the
 22913  // value will be replaced with "sensitive".
 22914  func (s UpdateRoomInput) String() string {
 22915  	return awsutil.Prettify(s)
 22916  }
 22917  
 22918  // GoString returns the string representation.
 22919  //
 22920  // API parameter values that are decorated as "sensitive" in the API will not
 22921  // be included in the string output. The member name will be present, but the
 22922  // value will be replaced with "sensitive".
 22923  func (s UpdateRoomInput) GoString() string {
 22924  	return s.String()
 22925  }
 22926  
 22927  // Validate inspects the fields of the type to determine if they are valid.
 22928  func (s *UpdateRoomInput) Validate() error {
 22929  	invalidParams := request.ErrInvalidParams{Context: "UpdateRoomInput"}
 22930  	if s.Description != nil && len(*s.Description) < 1 {
 22931  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 22932  	}
 22933  	if s.RoomName != nil && len(*s.RoomName) < 1 {
 22934  		invalidParams.Add(request.NewErrParamMinLen("RoomName", 1))
 22935  	}
 22936  
 22937  	if invalidParams.Len() > 0 {
 22938  		return invalidParams
 22939  	}
 22940  	return nil
 22941  }
 22942  
 22943  // SetDescription sets the Description field's value.
 22944  func (s *UpdateRoomInput) SetDescription(v string) *UpdateRoomInput {
 22945  	s.Description = &v
 22946  	return s
 22947  }
 22948  
 22949  // SetProfileArn sets the ProfileArn field's value.
 22950  func (s *UpdateRoomInput) SetProfileArn(v string) *UpdateRoomInput {
 22951  	s.ProfileArn = &v
 22952  	return s
 22953  }
 22954  
 22955  // SetProviderCalendarId sets the ProviderCalendarId field's value.
 22956  func (s *UpdateRoomInput) SetProviderCalendarId(v string) *UpdateRoomInput {
 22957  	s.ProviderCalendarId = &v
 22958  	return s
 22959  }
 22960  
 22961  // SetRoomArn sets the RoomArn field's value.
 22962  func (s *UpdateRoomInput) SetRoomArn(v string) *UpdateRoomInput {
 22963  	s.RoomArn = &v
 22964  	return s
 22965  }
 22966  
 22967  // SetRoomName sets the RoomName field's value.
 22968  func (s *UpdateRoomInput) SetRoomName(v string) *UpdateRoomInput {
 22969  	s.RoomName = &v
 22970  	return s
 22971  }
 22972  
 22973  type UpdateRoomOutput struct {
 22974  	_ struct{} `type:"structure"`
 22975  }
 22976  
 22977  // String returns the string representation.
 22978  //
 22979  // API parameter values that are decorated as "sensitive" in the API will not
 22980  // be included in the string output. The member name will be present, but the
 22981  // value will be replaced with "sensitive".
 22982  func (s UpdateRoomOutput) String() string {
 22983  	return awsutil.Prettify(s)
 22984  }
 22985  
 22986  // GoString returns the string representation.
 22987  //
 22988  // API parameter values that are decorated as "sensitive" in the API will not
 22989  // be included in the string output. The member name will be present, but the
 22990  // value will be replaced with "sensitive".
 22991  func (s UpdateRoomOutput) GoString() string {
 22992  	return s.String()
 22993  }
 22994  
 22995  type UpdateSkillGroupInput struct {
 22996  	_ struct{} `type:"structure"`
 22997  
 22998  	// The updated description for the skill group.
 22999  	Description *string `min:"1" type:"string"`
 23000  
 23001  	// The ARN of the skill group to update.
 23002  	SkillGroupArn *string `type:"string"`
 23003  
 23004  	// The updated name for the skill group.
 23005  	SkillGroupName *string `min:"1" type:"string"`
 23006  }
 23007  
 23008  // String returns the string representation.
 23009  //
 23010  // API parameter values that are decorated as "sensitive" in the API will not
 23011  // be included in the string output. The member name will be present, but the
 23012  // value will be replaced with "sensitive".
 23013  func (s UpdateSkillGroupInput) String() string {
 23014  	return awsutil.Prettify(s)
 23015  }
 23016  
 23017  // GoString returns the string representation.
 23018  //
 23019  // API parameter values that are decorated as "sensitive" in the API will not
 23020  // be included in the string output. The member name will be present, but the
 23021  // value will be replaced with "sensitive".
 23022  func (s UpdateSkillGroupInput) GoString() string {
 23023  	return s.String()
 23024  }
 23025  
 23026  // Validate inspects the fields of the type to determine if they are valid.
 23027  func (s *UpdateSkillGroupInput) Validate() error {
 23028  	invalidParams := request.ErrInvalidParams{Context: "UpdateSkillGroupInput"}
 23029  	if s.Description != nil && len(*s.Description) < 1 {
 23030  		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
 23031  	}
 23032  	if s.SkillGroupName != nil && len(*s.SkillGroupName) < 1 {
 23033  		invalidParams.Add(request.NewErrParamMinLen("SkillGroupName", 1))
 23034  	}
 23035  
 23036  	if invalidParams.Len() > 0 {
 23037  		return invalidParams
 23038  	}
 23039  	return nil
 23040  }
 23041  
 23042  // SetDescription sets the Description field's value.
 23043  func (s *UpdateSkillGroupInput) SetDescription(v string) *UpdateSkillGroupInput {
 23044  	s.Description = &v
 23045  	return s
 23046  }
 23047  
 23048  // SetSkillGroupArn sets the SkillGroupArn field's value.
 23049  func (s *UpdateSkillGroupInput) SetSkillGroupArn(v string) *UpdateSkillGroupInput {
 23050  	s.SkillGroupArn = &v
 23051  	return s
 23052  }
 23053  
 23054  // SetSkillGroupName sets the SkillGroupName field's value.
 23055  func (s *UpdateSkillGroupInput) SetSkillGroupName(v string) *UpdateSkillGroupInput {
 23056  	s.SkillGroupName = &v
 23057  	return s
 23058  }
 23059  
 23060  type UpdateSkillGroupOutput struct {
 23061  	_ struct{} `type:"structure"`
 23062  }
 23063  
 23064  // String returns the string representation.
 23065  //
 23066  // API parameter values that are decorated as "sensitive" in the API will not
 23067  // be included in the string output. The member name will be present, but the
 23068  // value will be replaced with "sensitive".
 23069  func (s UpdateSkillGroupOutput) String() string {
 23070  	return awsutil.Prettify(s)
 23071  }
 23072  
 23073  // GoString returns the string representation.
 23074  //
 23075  // API parameter values that are decorated as "sensitive" in the API will not
 23076  // be included in the string output. The member name will be present, but the
 23077  // value will be replaced with "sensitive".
 23078  func (s UpdateSkillGroupOutput) GoString() string {
 23079  	return s.String()
 23080  }
 23081  
 23082  // Information related to a user.
 23083  type UserData struct {
 23084  	_ struct{} `type:"structure"`
 23085  
 23086  	// The email of a user.
 23087  	Email *string `min:"1" type:"string"`
 23088  
 23089  	// The enrollment ARN of a user.
 23090  	EnrollmentId *string `type:"string"`
 23091  
 23092  	// The enrollment status of a user.
 23093  	EnrollmentStatus *string `type:"string" enum:"EnrollmentStatus"`
 23094  
 23095  	// The first name of a user.
 23096  	FirstName *string `type:"string"`
 23097  
 23098  	// The last name of a user.
 23099  	LastName *string `type:"string"`
 23100  
 23101  	// The ARN of a user.
 23102  	UserArn *string `type:"string"`
 23103  }
 23104  
 23105  // String returns the string representation.
 23106  //
 23107  // API parameter values that are decorated as "sensitive" in the API will not
 23108  // be included in the string output. The member name will be present, but the
 23109  // value will be replaced with "sensitive".
 23110  func (s UserData) String() string {
 23111  	return awsutil.Prettify(s)
 23112  }
 23113  
 23114  // GoString returns the string representation.
 23115  //
 23116  // API parameter values that are decorated as "sensitive" in the API will not
 23117  // be included in the string output. The member name will be present, but the
 23118  // value will be replaced with "sensitive".
 23119  func (s UserData) GoString() string {
 23120  	return s.String()
 23121  }
 23122  
 23123  // SetEmail sets the Email field's value.
 23124  func (s *UserData) SetEmail(v string) *UserData {
 23125  	s.Email = &v
 23126  	return s
 23127  }
 23128  
 23129  // SetEnrollmentId sets the EnrollmentId field's value.
 23130  func (s *UserData) SetEnrollmentId(v string) *UserData {
 23131  	s.EnrollmentId = &v
 23132  	return s
 23133  }
 23134  
 23135  // SetEnrollmentStatus sets the EnrollmentStatus field's value.
 23136  func (s *UserData) SetEnrollmentStatus(v string) *UserData {
 23137  	s.EnrollmentStatus = &v
 23138  	return s
 23139  }
 23140  
 23141  // SetFirstName sets the FirstName field's value.
 23142  func (s *UserData) SetFirstName(v string) *UserData {
 23143  	s.FirstName = &v
 23144  	return s
 23145  }
 23146  
 23147  // SetLastName sets the LastName field's value.
 23148  func (s *UserData) SetLastName(v string) *UserData {
 23149  	s.LastName = &v
 23150  	return s
 23151  }
 23152  
 23153  // SetUserArn sets the UserArn field's value.
 23154  func (s *UserData) SetUserArn(v string) *UserData {
 23155  	s.UserArn = &v
 23156  	return s
 23157  }
 23158  
 23159  const (
 23160  	// BusinessReportFailureCodeAccessDenied is a BusinessReportFailureCode enum value
 23161  	BusinessReportFailureCodeAccessDenied = "ACCESS_DENIED"
 23162  
 23163  	// BusinessReportFailureCodeNoSuchBucket is a BusinessReportFailureCode enum value
 23164  	BusinessReportFailureCodeNoSuchBucket = "NO_SUCH_BUCKET"
 23165  
 23166  	// BusinessReportFailureCodeInternalFailure is a BusinessReportFailureCode enum value
 23167  	BusinessReportFailureCodeInternalFailure = "INTERNAL_FAILURE"
 23168  )
 23169  
 23170  // BusinessReportFailureCode_Values returns all elements of the BusinessReportFailureCode enum
 23171  func BusinessReportFailureCode_Values() []string {
 23172  	return []string{
 23173  		BusinessReportFailureCodeAccessDenied,
 23174  		BusinessReportFailureCodeNoSuchBucket,
 23175  		BusinessReportFailureCodeInternalFailure,
 23176  	}
 23177  }
 23178  
 23179  const (
 23180  	// BusinessReportFormatCsv is a BusinessReportFormat enum value
 23181  	BusinessReportFormatCsv = "CSV"
 23182  
 23183  	// BusinessReportFormatCsvZip is a BusinessReportFormat enum value
 23184  	BusinessReportFormatCsvZip = "CSV_ZIP"
 23185  )
 23186  
 23187  // BusinessReportFormat_Values returns all elements of the BusinessReportFormat enum
 23188  func BusinessReportFormat_Values() []string {
 23189  	return []string{
 23190  		BusinessReportFormatCsv,
 23191  		BusinessReportFormatCsvZip,
 23192  	}
 23193  }
 23194  
 23195  const (
 23196  	// BusinessReportIntervalOneDay is a BusinessReportInterval enum value
 23197  	BusinessReportIntervalOneDay = "ONE_DAY"
 23198  
 23199  	// BusinessReportIntervalOneWeek is a BusinessReportInterval enum value
 23200  	BusinessReportIntervalOneWeek = "ONE_WEEK"
 23201  
 23202  	// BusinessReportIntervalThirtyDays is a BusinessReportInterval enum value
 23203  	BusinessReportIntervalThirtyDays = "THIRTY_DAYS"
 23204  )
 23205  
 23206  // BusinessReportInterval_Values returns all elements of the BusinessReportInterval enum
 23207  func BusinessReportInterval_Values() []string {
 23208  	return []string{
 23209  		BusinessReportIntervalOneDay,
 23210  		BusinessReportIntervalOneWeek,
 23211  		BusinessReportIntervalThirtyDays,
 23212  	}
 23213  }
 23214  
 23215  const (
 23216  	// BusinessReportStatusRunning is a BusinessReportStatus enum value
 23217  	BusinessReportStatusRunning = "RUNNING"
 23218  
 23219  	// BusinessReportStatusSucceeded is a BusinessReportStatus enum value
 23220  	BusinessReportStatusSucceeded = "SUCCEEDED"
 23221  
 23222  	// BusinessReportStatusFailed is a BusinessReportStatus enum value
 23223  	BusinessReportStatusFailed = "FAILED"
 23224  )
 23225  
 23226  // BusinessReportStatus_Values returns all elements of the BusinessReportStatus enum
 23227  func BusinessReportStatus_Values() []string {
 23228  	return []string{
 23229  		BusinessReportStatusRunning,
 23230  		BusinessReportStatusSucceeded,
 23231  		BusinessReportStatusFailed,
 23232  	}
 23233  }
 23234  
 23235  const (
 23236  	// CommsProtocolSip is a CommsProtocol enum value
 23237  	CommsProtocolSip = "SIP"
 23238  
 23239  	// CommsProtocolSips is a CommsProtocol enum value
 23240  	CommsProtocolSips = "SIPS"
 23241  
 23242  	// CommsProtocolH323 is a CommsProtocol enum value
 23243  	CommsProtocolH323 = "H323"
 23244  )
 23245  
 23246  // CommsProtocol_Values returns all elements of the CommsProtocol enum
 23247  func CommsProtocol_Values() []string {
 23248  	return []string{
 23249  		CommsProtocolSip,
 23250  		CommsProtocolSips,
 23251  		CommsProtocolH323,
 23252  	}
 23253  }
 23254  
 23255  const (
 23256  	// ConferenceProviderTypeChime is a ConferenceProviderType enum value
 23257  	ConferenceProviderTypeChime = "CHIME"
 23258  
 23259  	// ConferenceProviderTypeBluejeans is a ConferenceProviderType enum value
 23260  	ConferenceProviderTypeBluejeans = "BLUEJEANS"
 23261  
 23262  	// ConferenceProviderTypeFuze is a ConferenceProviderType enum value
 23263  	ConferenceProviderTypeFuze = "FUZE"
 23264  
 23265  	// ConferenceProviderTypeGoogleHangouts is a ConferenceProviderType enum value
 23266  	ConferenceProviderTypeGoogleHangouts = "GOOGLE_HANGOUTS"
 23267  
 23268  	// ConferenceProviderTypePolycom is a ConferenceProviderType enum value
 23269  	ConferenceProviderTypePolycom = "POLYCOM"
 23270  
 23271  	// ConferenceProviderTypeRingcentral is a ConferenceProviderType enum value
 23272  	ConferenceProviderTypeRingcentral = "RINGCENTRAL"
 23273  
 23274  	// ConferenceProviderTypeSkypeForBusiness is a ConferenceProviderType enum value
 23275  	ConferenceProviderTypeSkypeForBusiness = "SKYPE_FOR_BUSINESS"
 23276  
 23277  	// ConferenceProviderTypeWebex is a ConferenceProviderType enum value
 23278  	ConferenceProviderTypeWebex = "WEBEX"
 23279  
 23280  	// ConferenceProviderTypeZoom is a ConferenceProviderType enum value
 23281  	ConferenceProviderTypeZoom = "ZOOM"
 23282  
 23283  	// ConferenceProviderTypeCustom is a ConferenceProviderType enum value
 23284  	ConferenceProviderTypeCustom = "CUSTOM"
 23285  )
 23286  
 23287  // ConferenceProviderType_Values returns all elements of the ConferenceProviderType enum
 23288  func ConferenceProviderType_Values() []string {
 23289  	return []string{
 23290  		ConferenceProviderTypeChime,
 23291  		ConferenceProviderTypeBluejeans,
 23292  		ConferenceProviderTypeFuze,
 23293  		ConferenceProviderTypeGoogleHangouts,
 23294  		ConferenceProviderTypePolycom,
 23295  		ConferenceProviderTypeRingcentral,
 23296  		ConferenceProviderTypeSkypeForBusiness,
 23297  		ConferenceProviderTypeWebex,
 23298  		ConferenceProviderTypeZoom,
 23299  		ConferenceProviderTypeCustom,
 23300  	}
 23301  }
 23302  
 23303  const (
 23304  	// ConnectionStatusOnline is a ConnectionStatus enum value
 23305  	ConnectionStatusOnline = "ONLINE"
 23306  
 23307  	// ConnectionStatusOffline is a ConnectionStatus enum value
 23308  	ConnectionStatusOffline = "OFFLINE"
 23309  )
 23310  
 23311  // ConnectionStatus_Values returns all elements of the ConnectionStatus enum
 23312  func ConnectionStatus_Values() []string {
 23313  	return []string{
 23314  		ConnectionStatusOnline,
 23315  		ConnectionStatusOffline,
 23316  	}
 23317  }
 23318  
 23319  const (
 23320  	// DeviceEventTypeConnectionStatus is a DeviceEventType enum value
 23321  	DeviceEventTypeConnectionStatus = "CONNECTION_STATUS"
 23322  
 23323  	// DeviceEventTypeDeviceStatus is a DeviceEventType enum value
 23324  	DeviceEventTypeDeviceStatus = "DEVICE_STATUS"
 23325  )
 23326  
 23327  // DeviceEventType_Values returns all elements of the DeviceEventType enum
 23328  func DeviceEventType_Values() []string {
 23329  	return []string{
 23330  		DeviceEventTypeConnectionStatus,
 23331  		DeviceEventTypeDeviceStatus,
 23332  	}
 23333  }
 23334  
 23335  const (
 23336  	// DeviceStatusReady is a DeviceStatus enum value
 23337  	DeviceStatusReady = "READY"
 23338  
 23339  	// DeviceStatusPending is a DeviceStatus enum value
 23340  	DeviceStatusPending = "PENDING"
 23341  
 23342  	// DeviceStatusWasOffline is a DeviceStatus enum value
 23343  	DeviceStatusWasOffline = "WAS_OFFLINE"
 23344  
 23345  	// DeviceStatusDeregistered is a DeviceStatus enum value
 23346  	DeviceStatusDeregistered = "DEREGISTERED"
 23347  
 23348  	// DeviceStatusFailed is a DeviceStatus enum value
 23349  	DeviceStatusFailed = "FAILED"
 23350  )
 23351  
 23352  // DeviceStatus_Values returns all elements of the DeviceStatus enum
 23353  func DeviceStatus_Values() []string {
 23354  	return []string{
 23355  		DeviceStatusReady,
 23356  		DeviceStatusPending,
 23357  		DeviceStatusWasOffline,
 23358  		DeviceStatusDeregistered,
 23359  		DeviceStatusFailed,
 23360  	}
 23361  }
 23362  
 23363  const (
 23364  	// DeviceStatusDetailCodeDeviceSoftwareUpdateNeeded is a DeviceStatusDetailCode enum value
 23365  	DeviceStatusDetailCodeDeviceSoftwareUpdateNeeded = "DEVICE_SOFTWARE_UPDATE_NEEDED"
 23366  
 23367  	// DeviceStatusDetailCodeDeviceWasOffline is a DeviceStatusDetailCode enum value
 23368  	DeviceStatusDetailCodeDeviceWasOffline = "DEVICE_WAS_OFFLINE"
 23369  
 23370  	// DeviceStatusDetailCodeCredentialsAccessFailure is a DeviceStatusDetailCode enum value
 23371  	DeviceStatusDetailCodeCredentialsAccessFailure = "CREDENTIALS_ACCESS_FAILURE"
 23372  
 23373  	// DeviceStatusDetailCodeTlsVersionMismatch is a DeviceStatusDetailCode enum value
 23374  	DeviceStatusDetailCodeTlsVersionMismatch = "TLS_VERSION_MISMATCH"
 23375  
 23376  	// DeviceStatusDetailCodeAssociationRejection is a DeviceStatusDetailCode enum value
 23377  	DeviceStatusDetailCodeAssociationRejection = "ASSOCIATION_REJECTION"
 23378  
 23379  	// DeviceStatusDetailCodeAuthenticationFailure is a DeviceStatusDetailCode enum value
 23380  	DeviceStatusDetailCodeAuthenticationFailure = "AUTHENTICATION_FAILURE"
 23381  
 23382  	// DeviceStatusDetailCodeDhcpFailure is a DeviceStatusDetailCode enum value
 23383  	DeviceStatusDetailCodeDhcpFailure = "DHCP_FAILURE"
 23384  
 23385  	// DeviceStatusDetailCodeInternetUnavailable is a DeviceStatusDetailCode enum value
 23386  	DeviceStatusDetailCodeInternetUnavailable = "INTERNET_UNAVAILABLE"
 23387  
 23388  	// DeviceStatusDetailCodeDnsFailure is a DeviceStatusDetailCode enum value
 23389  	DeviceStatusDetailCodeDnsFailure = "DNS_FAILURE"
 23390  
 23391  	// DeviceStatusDetailCodeUnknownFailure is a DeviceStatusDetailCode enum value
 23392  	DeviceStatusDetailCodeUnknownFailure = "UNKNOWN_FAILURE"
 23393  
 23394  	// DeviceStatusDetailCodeCertificateIssuingLimitExceeded is a DeviceStatusDetailCode enum value
 23395  	DeviceStatusDetailCodeCertificateIssuingLimitExceeded = "CERTIFICATE_ISSUING_LIMIT_EXCEEDED"
 23396  
 23397  	// DeviceStatusDetailCodeInvalidCertificateAuthority is a DeviceStatusDetailCode enum value
 23398  	DeviceStatusDetailCodeInvalidCertificateAuthority = "INVALID_CERTIFICATE_AUTHORITY"
 23399  
 23400  	// DeviceStatusDetailCodeNetworkProfileNotFound is a DeviceStatusDetailCode enum value
 23401  	DeviceStatusDetailCodeNetworkProfileNotFound = "NETWORK_PROFILE_NOT_FOUND"
 23402  
 23403  	// DeviceStatusDetailCodeInvalidPasswordState is a DeviceStatusDetailCode enum value
 23404  	DeviceStatusDetailCodeInvalidPasswordState = "INVALID_PASSWORD_STATE"
 23405  
 23406  	// DeviceStatusDetailCodePasswordNotFound is a DeviceStatusDetailCode enum value
 23407  	DeviceStatusDetailCodePasswordNotFound = "PASSWORD_NOT_FOUND"
 23408  
 23409  	// DeviceStatusDetailCodePasswordManagerAccessDenied is a DeviceStatusDetailCode enum value
 23410  	DeviceStatusDetailCodePasswordManagerAccessDenied = "PASSWORD_MANAGER_ACCESS_DENIED"
 23411  
 23412  	// DeviceStatusDetailCodeCertificateAuthorityAccessDenied is a DeviceStatusDetailCode enum value
 23413  	DeviceStatusDetailCodeCertificateAuthorityAccessDenied = "CERTIFICATE_AUTHORITY_ACCESS_DENIED"
 23414  )
 23415  
 23416  // DeviceStatusDetailCode_Values returns all elements of the DeviceStatusDetailCode enum
 23417  func DeviceStatusDetailCode_Values() []string {
 23418  	return []string{
 23419  		DeviceStatusDetailCodeDeviceSoftwareUpdateNeeded,
 23420  		DeviceStatusDetailCodeDeviceWasOffline,
 23421  		DeviceStatusDetailCodeCredentialsAccessFailure,
 23422  		DeviceStatusDetailCodeTlsVersionMismatch,
 23423  		DeviceStatusDetailCodeAssociationRejection,
 23424  		DeviceStatusDetailCodeAuthenticationFailure,
 23425  		DeviceStatusDetailCodeDhcpFailure,
 23426  		DeviceStatusDetailCodeInternetUnavailable,
 23427  		DeviceStatusDetailCodeDnsFailure,
 23428  		DeviceStatusDetailCodeUnknownFailure,
 23429  		DeviceStatusDetailCodeCertificateIssuingLimitExceeded,
 23430  		DeviceStatusDetailCodeInvalidCertificateAuthority,
 23431  		DeviceStatusDetailCodeNetworkProfileNotFound,
 23432  		DeviceStatusDetailCodeInvalidPasswordState,
 23433  		DeviceStatusDetailCodePasswordNotFound,
 23434  		DeviceStatusDetailCodePasswordManagerAccessDenied,
 23435  		DeviceStatusDetailCodeCertificateAuthorityAccessDenied,
 23436  	}
 23437  }
 23438  
 23439  const (
 23440  	// DeviceUsageTypeVoice is a DeviceUsageType enum value
 23441  	DeviceUsageTypeVoice = "VOICE"
 23442  )
 23443  
 23444  // DeviceUsageType_Values returns all elements of the DeviceUsageType enum
 23445  func DeviceUsageType_Values() []string {
 23446  	return []string{
 23447  		DeviceUsageTypeVoice,
 23448  	}
 23449  }
 23450  
 23451  const (
 23452  	// DistanceUnitMetric is a DistanceUnit enum value
 23453  	DistanceUnitMetric = "METRIC"
 23454  
 23455  	// DistanceUnitImperial is a DistanceUnit enum value
 23456  	DistanceUnitImperial = "IMPERIAL"
 23457  )
 23458  
 23459  // DistanceUnit_Values returns all elements of the DistanceUnit enum
 23460  func DistanceUnit_Values() []string {
 23461  	return []string{
 23462  		DistanceUnitMetric,
 23463  		DistanceUnitImperial,
 23464  	}
 23465  }
 23466  
 23467  const (
 23468  	// EnablementTypeEnabled is a EnablementType enum value
 23469  	EnablementTypeEnabled = "ENABLED"
 23470  
 23471  	// EnablementTypePending is a EnablementType enum value
 23472  	EnablementTypePending = "PENDING"
 23473  )
 23474  
 23475  // EnablementType_Values returns all elements of the EnablementType enum
 23476  func EnablementType_Values() []string {
 23477  	return []string{
 23478  		EnablementTypeEnabled,
 23479  		EnablementTypePending,
 23480  	}
 23481  }
 23482  
 23483  const (
 23484  	// EnablementTypeFilterEnabled is a EnablementTypeFilter enum value
 23485  	EnablementTypeFilterEnabled = "ENABLED"
 23486  
 23487  	// EnablementTypeFilterPending is a EnablementTypeFilter enum value
 23488  	EnablementTypeFilterPending = "PENDING"
 23489  )
 23490  
 23491  // EnablementTypeFilter_Values returns all elements of the EnablementTypeFilter enum
 23492  func EnablementTypeFilter_Values() []string {
 23493  	return []string{
 23494  		EnablementTypeFilterEnabled,
 23495  		EnablementTypeFilterPending,
 23496  	}
 23497  }
 23498  
 23499  const (
 23500  	// EndOfMeetingReminderTypeAnnouncementTimeCheck is a EndOfMeetingReminderType enum value
 23501  	EndOfMeetingReminderTypeAnnouncementTimeCheck = "ANNOUNCEMENT_TIME_CHECK"
 23502  
 23503  	// EndOfMeetingReminderTypeAnnouncementVariableTimeLeft is a EndOfMeetingReminderType enum value
 23504  	EndOfMeetingReminderTypeAnnouncementVariableTimeLeft = "ANNOUNCEMENT_VARIABLE_TIME_LEFT"
 23505  
 23506  	// EndOfMeetingReminderTypeChime is a EndOfMeetingReminderType enum value
 23507  	EndOfMeetingReminderTypeChime = "CHIME"
 23508  
 23509  	// EndOfMeetingReminderTypeKnock is a EndOfMeetingReminderType enum value
 23510  	EndOfMeetingReminderTypeKnock = "KNOCK"
 23511  )
 23512  
 23513  // EndOfMeetingReminderType_Values returns all elements of the EndOfMeetingReminderType enum
 23514  func EndOfMeetingReminderType_Values() []string {
 23515  	return []string{
 23516  		EndOfMeetingReminderTypeAnnouncementTimeCheck,
 23517  		EndOfMeetingReminderTypeAnnouncementVariableTimeLeft,
 23518  		EndOfMeetingReminderTypeChime,
 23519  		EndOfMeetingReminderTypeKnock,
 23520  	}
 23521  }
 23522  
 23523  const (
 23524  	// EnrollmentStatusInitialized is a EnrollmentStatus enum value
 23525  	EnrollmentStatusInitialized = "INITIALIZED"
 23526  
 23527  	// EnrollmentStatusPending is a EnrollmentStatus enum value
 23528  	EnrollmentStatusPending = "PENDING"
 23529  
 23530  	// EnrollmentStatusRegistered is a EnrollmentStatus enum value
 23531  	EnrollmentStatusRegistered = "REGISTERED"
 23532  
 23533  	// EnrollmentStatusDisassociating is a EnrollmentStatus enum value
 23534  	EnrollmentStatusDisassociating = "DISASSOCIATING"
 23535  
 23536  	// EnrollmentStatusDeregistering is a EnrollmentStatus enum value
 23537  	EnrollmentStatusDeregistering = "DEREGISTERING"
 23538  )
 23539  
 23540  // EnrollmentStatus_Values returns all elements of the EnrollmentStatus enum
 23541  func EnrollmentStatus_Values() []string {
 23542  	return []string{
 23543  		EnrollmentStatusInitialized,
 23544  		EnrollmentStatusPending,
 23545  		EnrollmentStatusRegistered,
 23546  		EnrollmentStatusDisassociating,
 23547  		EnrollmentStatusDeregistering,
 23548  	}
 23549  }
 23550  
 23551  const (
 23552  	// FeatureBluetooth is a Feature enum value
 23553  	FeatureBluetooth = "BLUETOOTH"
 23554  
 23555  	// FeatureVolume is a Feature enum value
 23556  	FeatureVolume = "VOLUME"
 23557  
 23558  	// FeatureNotifications is a Feature enum value
 23559  	FeatureNotifications = "NOTIFICATIONS"
 23560  
 23561  	// FeatureLists is a Feature enum value
 23562  	FeatureLists = "LISTS"
 23563  
 23564  	// FeatureSkills is a Feature enum value
 23565  	FeatureSkills = "SKILLS"
 23566  
 23567  	// FeatureNetworkProfile is a Feature enum value
 23568  	FeatureNetworkProfile = "NETWORK_PROFILE"
 23569  
 23570  	// FeatureSettings is a Feature enum value
 23571  	FeatureSettings = "SETTINGS"
 23572  
 23573  	// FeatureAll is a Feature enum value
 23574  	FeatureAll = "ALL"
 23575  )
 23576  
 23577  // Feature_Values returns all elements of the Feature enum
 23578  func Feature_Values() []string {
 23579  	return []string{
 23580  		FeatureBluetooth,
 23581  		FeatureVolume,
 23582  		FeatureNotifications,
 23583  		FeatureLists,
 23584  		FeatureSkills,
 23585  		FeatureNetworkProfile,
 23586  		FeatureSettings,
 23587  		FeatureAll,
 23588  	}
 23589  }
 23590  
 23591  const (
 23592  	// LocaleEnUs is a Locale enum value
 23593  	LocaleEnUs = "en-US"
 23594  )
 23595  
 23596  // Locale_Values returns all elements of the Locale enum
 23597  func Locale_Values() []string {
 23598  	return []string{
 23599  		LocaleEnUs,
 23600  	}
 23601  }
 23602  
 23603  const (
 23604  	// NetworkEapMethodEapTls is a NetworkEapMethod enum value
 23605  	NetworkEapMethodEapTls = "EAP_TLS"
 23606  )
 23607  
 23608  // NetworkEapMethod_Values returns all elements of the NetworkEapMethod enum
 23609  func NetworkEapMethod_Values() []string {
 23610  	return []string{
 23611  		NetworkEapMethodEapTls,
 23612  	}
 23613  }
 23614  
 23615  const (
 23616  	// NetworkSecurityTypeOpen is a NetworkSecurityType enum value
 23617  	NetworkSecurityTypeOpen = "OPEN"
 23618  
 23619  	// NetworkSecurityTypeWep is a NetworkSecurityType enum value
 23620  	NetworkSecurityTypeWep = "WEP"
 23621  
 23622  	// NetworkSecurityTypeWpaPsk is a NetworkSecurityType enum value
 23623  	NetworkSecurityTypeWpaPsk = "WPA_PSK"
 23624  
 23625  	// NetworkSecurityTypeWpa2Psk is a NetworkSecurityType enum value
 23626  	NetworkSecurityTypeWpa2Psk = "WPA2_PSK"
 23627  
 23628  	// NetworkSecurityTypeWpa2Enterprise is a NetworkSecurityType enum value
 23629  	NetworkSecurityTypeWpa2Enterprise = "WPA2_ENTERPRISE"
 23630  )
 23631  
 23632  // NetworkSecurityType_Values returns all elements of the NetworkSecurityType enum
 23633  func NetworkSecurityType_Values() []string {
 23634  	return []string{
 23635  		NetworkSecurityTypeOpen,
 23636  		NetworkSecurityTypeWep,
 23637  		NetworkSecurityTypeWpaPsk,
 23638  		NetworkSecurityTypeWpa2Psk,
 23639  		NetworkSecurityTypeWpa2Enterprise,
 23640  	}
 23641  }
 23642  
 23643  const (
 23644  	// PhoneNumberTypeMobile is a PhoneNumberType enum value
 23645  	PhoneNumberTypeMobile = "MOBILE"
 23646  
 23647  	// PhoneNumberTypeWork is a PhoneNumberType enum value
 23648  	PhoneNumberTypeWork = "WORK"
 23649  
 23650  	// PhoneNumberTypeHome is a PhoneNumberType enum value
 23651  	PhoneNumberTypeHome = "HOME"
 23652  )
 23653  
 23654  // PhoneNumberType_Values returns all elements of the PhoneNumberType enum
 23655  func PhoneNumberType_Values() []string {
 23656  	return []string{
 23657  		PhoneNumberTypeMobile,
 23658  		PhoneNumberTypeWork,
 23659  		PhoneNumberTypeHome,
 23660  	}
 23661  }
 23662  
 23663  const (
 23664  	// RequirePinYes is a RequirePin enum value
 23665  	RequirePinYes = "YES"
 23666  
 23667  	// RequirePinNo is a RequirePin enum value
 23668  	RequirePinNo = "NO"
 23669  
 23670  	// RequirePinOptional is a RequirePin enum value
 23671  	RequirePinOptional = "OPTIONAL"
 23672  )
 23673  
 23674  // RequirePin_Values returns all elements of the RequirePin enum
 23675  func RequirePin_Values() []string {
 23676  	return []string{
 23677  		RequirePinYes,
 23678  		RequirePinNo,
 23679  		RequirePinOptional,
 23680  	}
 23681  }
 23682  
 23683  const (
 23684  	// SipTypeWork is a SipType enum value
 23685  	SipTypeWork = "WORK"
 23686  )
 23687  
 23688  // SipType_Values returns all elements of the SipType enum
 23689  func SipType_Values() []string {
 23690  	return []string{
 23691  		SipTypeWork,
 23692  	}
 23693  }
 23694  
 23695  const (
 23696  	// SkillTypePublic is a SkillType enum value
 23697  	SkillTypePublic = "PUBLIC"
 23698  
 23699  	// SkillTypePrivate is a SkillType enum value
 23700  	SkillTypePrivate = "PRIVATE"
 23701  )
 23702  
 23703  // SkillType_Values returns all elements of the SkillType enum
 23704  func SkillType_Values() []string {
 23705  	return []string{
 23706  		SkillTypePublic,
 23707  		SkillTypePrivate,
 23708  	}
 23709  }
 23710  
 23711  const (
 23712  	// SkillTypeFilterPublic is a SkillTypeFilter enum value
 23713  	SkillTypeFilterPublic = "PUBLIC"
 23714  
 23715  	// SkillTypeFilterPrivate is a SkillTypeFilter enum value
 23716  	SkillTypeFilterPrivate = "PRIVATE"
 23717  
 23718  	// SkillTypeFilterAll is a SkillTypeFilter enum value
 23719  	SkillTypeFilterAll = "ALL"
 23720  )
 23721  
 23722  // SkillTypeFilter_Values returns all elements of the SkillTypeFilter enum
 23723  func SkillTypeFilter_Values() []string {
 23724  	return []string{
 23725  		SkillTypeFilterPublic,
 23726  		SkillTypeFilterPrivate,
 23727  		SkillTypeFilterAll,
 23728  	}
 23729  }
 23730  
 23731  const (
 23732  	// SortValueAsc is a SortValue enum value
 23733  	SortValueAsc = "ASC"
 23734  
 23735  	// SortValueDesc is a SortValue enum value
 23736  	SortValueDesc = "DESC"
 23737  )
 23738  
 23739  // SortValue_Values returns all elements of the SortValue enum
 23740  func SortValue_Values() []string {
 23741  	return []string{
 23742  		SortValueAsc,
 23743  		SortValueDesc,
 23744  	}
 23745  }
 23746  
 23747  const (
 23748  	// TemperatureUnitFahrenheit is a TemperatureUnit enum value
 23749  	TemperatureUnitFahrenheit = "FAHRENHEIT"
 23750  
 23751  	// TemperatureUnitCelsius is a TemperatureUnit enum value
 23752  	TemperatureUnitCelsius = "CELSIUS"
 23753  )
 23754  
 23755  // TemperatureUnit_Values returns all elements of the TemperatureUnit enum
 23756  func TemperatureUnit_Values() []string {
 23757  	return []string{
 23758  		TemperatureUnitFahrenheit,
 23759  		TemperatureUnitCelsius,
 23760  	}
 23761  }
 23762  
 23763  const (
 23764  	// WakeWordAlexa is a WakeWord enum value
 23765  	WakeWordAlexa = "ALEXA"
 23766  
 23767  	// WakeWordAmazon is a WakeWord enum value
 23768  	WakeWordAmazon = "AMAZON"
 23769  
 23770  	// WakeWordEcho is a WakeWord enum value
 23771  	WakeWordEcho = "ECHO"
 23772  
 23773  	// WakeWordComputer is a WakeWord enum value
 23774  	WakeWordComputer = "COMPUTER"
 23775  )
 23776  
 23777  // WakeWord_Values returns all elements of the WakeWord enum
 23778  func WakeWord_Values() []string {
 23779  	return []string{
 23780  		WakeWordAlexa,
 23781  		WakeWordAmazon,
 23782  		WakeWordEcho,
 23783  		WakeWordComputer,
 23784  	}
 23785  }