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

     1  // Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
     2  
     3  package identitystore
     4  
     5  import (
     6  	"fmt"
     7  
     8  	"github.com/aavshr/aws-sdk-go/aws"
     9  	"github.com/aavshr/aws-sdk-go/aws/awsutil"
    10  	"github.com/aavshr/aws-sdk-go/aws/request"
    11  	"github.com/aavshr/aws-sdk-go/private/protocol"
    12  )
    13  
    14  const opDescribeGroup = "DescribeGroup"
    15  
    16  // DescribeGroupRequest generates a "aws/request.Request" representing the
    17  // client's request for the DescribeGroup operation. The "output" return
    18  // value will be populated with the request's response once the request completes
    19  // successfully.
    20  //
    21  // Use "Send" method on the returned Request to send the API call to the service.
    22  // the "output" return value is not valid until after Send returns without error.
    23  //
    24  // See DescribeGroup for more information on using the DescribeGroup
    25  // API call, and error handling.
    26  //
    27  // This method is useful when you want to inject custom logic or configuration
    28  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
    29  //
    30  //
    31  //    // Example sending a request using the DescribeGroupRequest method.
    32  //    req, resp := client.DescribeGroupRequest(params)
    33  //
    34  //    err := req.Send()
    35  //    if err == nil { // resp is now filled
    36  //        fmt.Println(resp)
    37  //    }
    38  //
    39  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/DescribeGroup
    40  func (c *IdentityStore) DescribeGroupRequest(input *DescribeGroupInput) (req *request.Request, output *DescribeGroupOutput) {
    41  	op := &request.Operation{
    42  		Name:       opDescribeGroup,
    43  		HTTPMethod: "POST",
    44  		HTTPPath:   "/",
    45  	}
    46  
    47  	if input == nil {
    48  		input = &DescribeGroupInput{}
    49  	}
    50  
    51  	output = &DescribeGroupOutput{}
    52  	req = c.newRequest(op, input, output)
    53  	return
    54  }
    55  
    56  // DescribeGroup API operation for AWS SSO Identity Store.
    57  //
    58  // Retrieves the group metadata and attributes from GroupId in an identity store.
    59  //
    60  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
    61  // with awserr.Error's Code and Message methods to get detailed information about
    62  // the error.
    63  //
    64  // See the AWS API reference guide for AWS SSO Identity Store's
    65  // API operation DescribeGroup for usage and error information.
    66  //
    67  // Returned Error Types:
    68  //   * ResourceNotFoundException
    69  //   Indicates that a requested resource is not found.
    70  //
    71  //   * ValidationException
    72  //   The request failed because it contains a syntax error.
    73  //
    74  //   * AccessDeniedException
    75  //   You do not have sufficient access to perform this action.
    76  //
    77  //   * ThrottlingException
    78  //   Indicates that the principal has crossed the throttling limits of the API
    79  //   operations.
    80  //
    81  //   * InternalServerException
    82  //   The request processing has failed because of an unknown error, exception
    83  //   or failure with an internal server.
    84  //
    85  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/DescribeGroup
    86  func (c *IdentityStore) DescribeGroup(input *DescribeGroupInput) (*DescribeGroupOutput, error) {
    87  	req, out := c.DescribeGroupRequest(input)
    88  	return out, req.Send()
    89  }
    90  
    91  // DescribeGroupWithContext is the same as DescribeGroup with the addition of
    92  // the ability to pass a context and additional request options.
    93  //
    94  // See DescribeGroup for details on how to use this API operation.
    95  //
    96  // The context must be non-nil and will be used for request cancellation. If
    97  // the context is nil a panic will occur. In the future the SDK may create
    98  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
    99  // for more information on using Contexts.
   100  func (c *IdentityStore) DescribeGroupWithContext(ctx aws.Context, input *DescribeGroupInput, opts ...request.Option) (*DescribeGroupOutput, error) {
   101  	req, out := c.DescribeGroupRequest(input)
   102  	req.SetContext(ctx)
   103  	req.ApplyOptions(opts...)
   104  	return out, req.Send()
   105  }
   106  
   107  const opDescribeUser = "DescribeUser"
   108  
   109  // DescribeUserRequest generates a "aws/request.Request" representing the
   110  // client's request for the DescribeUser operation. The "output" return
   111  // value will be populated with the request's response once the request completes
   112  // successfully.
   113  //
   114  // Use "Send" method on the returned Request to send the API call to the service.
   115  // the "output" return value is not valid until after Send returns without error.
   116  //
   117  // See DescribeUser for more information on using the DescribeUser
   118  // API call, and error handling.
   119  //
   120  // This method is useful when you want to inject custom logic or configuration
   121  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   122  //
   123  //
   124  //    // Example sending a request using the DescribeUserRequest method.
   125  //    req, resp := client.DescribeUserRequest(params)
   126  //
   127  //    err := req.Send()
   128  //    if err == nil { // resp is now filled
   129  //        fmt.Println(resp)
   130  //    }
   131  //
   132  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/DescribeUser
   133  func (c *IdentityStore) DescribeUserRequest(input *DescribeUserInput) (req *request.Request, output *DescribeUserOutput) {
   134  	op := &request.Operation{
   135  		Name:       opDescribeUser,
   136  		HTTPMethod: "POST",
   137  		HTTPPath:   "/",
   138  	}
   139  
   140  	if input == nil {
   141  		input = &DescribeUserInput{}
   142  	}
   143  
   144  	output = &DescribeUserOutput{}
   145  	req = c.newRequest(op, input, output)
   146  	return
   147  }
   148  
   149  // DescribeUser API operation for AWS SSO Identity Store.
   150  //
   151  // Retrieves the user metadata and attributes from UserId in an identity store.
   152  //
   153  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   154  // with awserr.Error's Code and Message methods to get detailed information about
   155  // the error.
   156  //
   157  // See the AWS API reference guide for AWS SSO Identity Store's
   158  // API operation DescribeUser for usage and error information.
   159  //
   160  // Returned Error Types:
   161  //   * ResourceNotFoundException
   162  //   Indicates that a requested resource is not found.
   163  //
   164  //   * ValidationException
   165  //   The request failed because it contains a syntax error.
   166  //
   167  //   * AccessDeniedException
   168  //   You do not have sufficient access to perform this action.
   169  //
   170  //   * ThrottlingException
   171  //   Indicates that the principal has crossed the throttling limits of the API
   172  //   operations.
   173  //
   174  //   * InternalServerException
   175  //   The request processing has failed because of an unknown error, exception
   176  //   or failure with an internal server.
   177  //
   178  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/DescribeUser
   179  func (c *IdentityStore) DescribeUser(input *DescribeUserInput) (*DescribeUserOutput, error) {
   180  	req, out := c.DescribeUserRequest(input)
   181  	return out, req.Send()
   182  }
   183  
   184  // DescribeUserWithContext is the same as DescribeUser with the addition of
   185  // the ability to pass a context and additional request options.
   186  //
   187  // See DescribeUser for details on how to use this API operation.
   188  //
   189  // The context must be non-nil and will be used for request cancellation. If
   190  // the context is nil a panic will occur. In the future the SDK may create
   191  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   192  // for more information on using Contexts.
   193  func (c *IdentityStore) DescribeUserWithContext(ctx aws.Context, input *DescribeUserInput, opts ...request.Option) (*DescribeUserOutput, error) {
   194  	req, out := c.DescribeUserRequest(input)
   195  	req.SetContext(ctx)
   196  	req.ApplyOptions(opts...)
   197  	return out, req.Send()
   198  }
   199  
   200  const opListGroups = "ListGroups"
   201  
   202  // ListGroupsRequest generates a "aws/request.Request" representing the
   203  // client's request for the ListGroups operation. The "output" return
   204  // value will be populated with the request's response once the request completes
   205  // successfully.
   206  //
   207  // Use "Send" method on the returned Request to send the API call to the service.
   208  // the "output" return value is not valid until after Send returns without error.
   209  //
   210  // See ListGroups for more information on using the ListGroups
   211  // API call, and error handling.
   212  //
   213  // This method is useful when you want to inject custom logic or configuration
   214  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   215  //
   216  //
   217  //    // Example sending a request using the ListGroupsRequest method.
   218  //    req, resp := client.ListGroupsRequest(params)
   219  //
   220  //    err := req.Send()
   221  //    if err == nil { // resp is now filled
   222  //        fmt.Println(resp)
   223  //    }
   224  //
   225  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/ListGroups
   226  func (c *IdentityStore) ListGroupsRequest(input *ListGroupsInput) (req *request.Request, output *ListGroupsOutput) {
   227  	op := &request.Operation{
   228  		Name:       opListGroups,
   229  		HTTPMethod: "POST",
   230  		HTTPPath:   "/",
   231  		Paginator: &request.Paginator{
   232  			InputTokens:     []string{"NextToken"},
   233  			OutputTokens:    []string{"NextToken"},
   234  			LimitToken:      "MaxResults",
   235  			TruncationToken: "",
   236  		},
   237  	}
   238  
   239  	if input == nil {
   240  		input = &ListGroupsInput{}
   241  	}
   242  
   243  	output = &ListGroupsOutput{}
   244  	req = c.newRequest(op, input, output)
   245  	return
   246  }
   247  
   248  // ListGroups API operation for AWS SSO Identity Store.
   249  //
   250  // Lists the attribute name and value of the group that you specified in the
   251  // search. We only support DisplayName as a valid filter attribute path currently,
   252  // and filter is required. This API returns minimum attributes, including GroupId
   253  // and group DisplayName in the response.
   254  //
   255  // Returns awserr.Error for service API and SDK errors. Use runtime type assertions
   256  // with awserr.Error's Code and Message methods to get detailed information about
   257  // the error.
   258  //
   259  // See the AWS API reference guide for AWS SSO Identity Store's
   260  // API operation ListGroups for usage and error information.
   261  //
   262  // Returned Error Types:
   263  //   * ValidationException
   264  //   The request failed because it contains a syntax error.
   265  //
   266  //   * AccessDeniedException
   267  //   You do not have sufficient access to perform this action.
   268  //
   269  //   * ResourceNotFoundException
   270  //   Indicates that a requested resource is not found.
   271  //
   272  //   * ThrottlingException
   273  //   Indicates that the principal has crossed the throttling limits of the API
   274  //   operations.
   275  //
   276  //   * InternalServerException
   277  //   The request processing has failed because of an unknown error, exception
   278  //   or failure with an internal server.
   279  //
   280  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/ListGroups
   281  func (c *IdentityStore) ListGroups(input *ListGroupsInput) (*ListGroupsOutput, error) {
   282  	req, out := c.ListGroupsRequest(input)
   283  	return out, req.Send()
   284  }
   285  
   286  // ListGroupsWithContext is the same as ListGroups with the addition of
   287  // the ability to pass a context and additional request options.
   288  //
   289  // See ListGroups for details on how to use this API operation.
   290  //
   291  // The context must be non-nil and will be used for request cancellation. If
   292  // the context is nil a panic will occur. In the future the SDK may create
   293  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   294  // for more information on using Contexts.
   295  func (c *IdentityStore) ListGroupsWithContext(ctx aws.Context, input *ListGroupsInput, opts ...request.Option) (*ListGroupsOutput, error) {
   296  	req, out := c.ListGroupsRequest(input)
   297  	req.SetContext(ctx)
   298  	req.ApplyOptions(opts...)
   299  	return out, req.Send()
   300  }
   301  
   302  // ListGroupsPages iterates over the pages of a ListGroups operation,
   303  // calling the "fn" function with the response data for each page. To stop
   304  // iterating, return false from the fn function.
   305  //
   306  // See ListGroups method for more information on how to use this operation.
   307  //
   308  // Note: This operation can generate multiple requests to a service.
   309  //
   310  //    // Example iterating over at most 3 pages of a ListGroups operation.
   311  //    pageNum := 0
   312  //    err := client.ListGroupsPages(params,
   313  //        func(page *identitystore.ListGroupsOutput, lastPage bool) bool {
   314  //            pageNum++
   315  //            fmt.Println(page)
   316  //            return pageNum <= 3
   317  //        })
   318  //
   319  func (c *IdentityStore) ListGroupsPages(input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool) error {
   320  	return c.ListGroupsPagesWithContext(aws.BackgroundContext(), input, fn)
   321  }
   322  
   323  // ListGroupsPagesWithContext same as ListGroupsPages except
   324  // it takes a Context and allows setting request options on the pages.
   325  //
   326  // The context must be non-nil and will be used for request cancellation. If
   327  // the context is nil a panic will occur. In the future the SDK may create
   328  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   329  // for more information on using Contexts.
   330  func (c *IdentityStore) ListGroupsPagesWithContext(ctx aws.Context, input *ListGroupsInput, fn func(*ListGroupsOutput, bool) bool, opts ...request.Option) error {
   331  	p := request.Pagination{
   332  		NewRequest: func() (*request.Request, error) {
   333  			var inCpy *ListGroupsInput
   334  			if input != nil {
   335  				tmp := *input
   336  				inCpy = &tmp
   337  			}
   338  			req, _ := c.ListGroupsRequest(inCpy)
   339  			req.SetContext(ctx)
   340  			req.ApplyOptions(opts...)
   341  			return req, nil
   342  		},
   343  	}
   344  
   345  	for p.Next() {
   346  		if !fn(p.Page().(*ListGroupsOutput), !p.HasNextPage()) {
   347  			break
   348  		}
   349  	}
   350  
   351  	return p.Err()
   352  }
   353  
   354  const opListUsers = "ListUsers"
   355  
   356  // ListUsersRequest generates a "aws/request.Request" representing the
   357  // client's request for the ListUsers operation. The "output" return
   358  // value will be populated with the request's response once the request completes
   359  // successfully.
   360  //
   361  // Use "Send" method on the returned Request to send the API call to the service.
   362  // the "output" return value is not valid until after Send returns without error.
   363  //
   364  // See ListUsers for more information on using the ListUsers
   365  // API call, and error handling.
   366  //
   367  // This method is useful when you want to inject custom logic or configuration
   368  // into the SDK's request lifecycle. Such as custom headers, or retry logic.
   369  //
   370  //
   371  //    // Example sending a request using the ListUsersRequest method.
   372  //    req, resp := client.ListUsersRequest(params)
   373  //
   374  //    err := req.Send()
   375  //    if err == nil { // resp is now filled
   376  //        fmt.Println(resp)
   377  //    }
   378  //
   379  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/ListUsers
   380  func (c *IdentityStore) ListUsersRequest(input *ListUsersInput) (req *request.Request, output *ListUsersOutput) {
   381  	op := &request.Operation{
   382  		Name:       opListUsers,
   383  		HTTPMethod: "POST",
   384  		HTTPPath:   "/",
   385  		Paginator: &request.Paginator{
   386  			InputTokens:     []string{"NextToken"},
   387  			OutputTokens:    []string{"NextToken"},
   388  			LimitToken:      "MaxResults",
   389  			TruncationToken: "",
   390  		},
   391  	}
   392  
   393  	if input == nil {
   394  		input = &ListUsersInput{}
   395  	}
   396  
   397  	output = &ListUsersOutput{}
   398  	req = c.newRequest(op, input, output)
   399  	return
   400  }
   401  
   402  // ListUsers API operation for AWS SSO Identity Store.
   403  //
   404  // Lists the attribute name and value of the user that you specified in the
   405  // search. We only support UserName as a valid filter attribute path currently,
   406  // and filter is required. This API returns minimum attributes, including UserId
   407  // and UserName in the response.
   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 AWS SSO Identity Store's
   414  // API operation ListUsers for usage and error information.
   415  //
   416  // Returned Error Types:
   417  //   * ValidationException
   418  //   The request failed because it contains a syntax error.
   419  //
   420  //   * AccessDeniedException
   421  //   You do not have sufficient access to perform this action.
   422  //
   423  //   * ResourceNotFoundException
   424  //   Indicates that a requested resource is not found.
   425  //
   426  //   * ThrottlingException
   427  //   Indicates that the principal has crossed the throttling limits of the API
   428  //   operations.
   429  //
   430  //   * InternalServerException
   431  //   The request processing has failed because of an unknown error, exception
   432  //   or failure with an internal server.
   433  //
   434  // See also, https://docs.aws.amazon.com/goto/WebAPI/identitystore-2020-06-15/ListUsers
   435  func (c *IdentityStore) ListUsers(input *ListUsersInput) (*ListUsersOutput, error) {
   436  	req, out := c.ListUsersRequest(input)
   437  	return out, req.Send()
   438  }
   439  
   440  // ListUsersWithContext is the same as ListUsers with the addition of
   441  // the ability to pass a context and additional request options.
   442  //
   443  // See ListUsers for details on how to use this API operation.
   444  //
   445  // The context must be non-nil and will be used for request cancellation. If
   446  // the context is nil a panic will occur. In the future the SDK may create
   447  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   448  // for more information on using Contexts.
   449  func (c *IdentityStore) ListUsersWithContext(ctx aws.Context, input *ListUsersInput, opts ...request.Option) (*ListUsersOutput, error) {
   450  	req, out := c.ListUsersRequest(input)
   451  	req.SetContext(ctx)
   452  	req.ApplyOptions(opts...)
   453  	return out, req.Send()
   454  }
   455  
   456  // ListUsersPages iterates over the pages of a ListUsers operation,
   457  // calling the "fn" function with the response data for each page. To stop
   458  // iterating, return false from the fn function.
   459  //
   460  // See ListUsers method for more information on how to use this operation.
   461  //
   462  // Note: This operation can generate multiple requests to a service.
   463  //
   464  //    // Example iterating over at most 3 pages of a ListUsers operation.
   465  //    pageNum := 0
   466  //    err := client.ListUsersPages(params,
   467  //        func(page *identitystore.ListUsersOutput, lastPage bool) bool {
   468  //            pageNum++
   469  //            fmt.Println(page)
   470  //            return pageNum <= 3
   471  //        })
   472  //
   473  func (c *IdentityStore) ListUsersPages(input *ListUsersInput, fn func(*ListUsersOutput, bool) bool) error {
   474  	return c.ListUsersPagesWithContext(aws.BackgroundContext(), input, fn)
   475  }
   476  
   477  // ListUsersPagesWithContext same as ListUsersPages except
   478  // it takes a Context and allows setting request options on the pages.
   479  //
   480  // The context must be non-nil and will be used for request cancellation. If
   481  // the context is nil a panic will occur. In the future the SDK may create
   482  // sub-contexts for http.Requests. See https://golang.org/pkg/context/
   483  // for more information on using Contexts.
   484  func (c *IdentityStore) ListUsersPagesWithContext(ctx aws.Context, input *ListUsersInput, fn func(*ListUsersOutput, bool) bool, opts ...request.Option) error {
   485  	p := request.Pagination{
   486  		NewRequest: func() (*request.Request, error) {
   487  			var inCpy *ListUsersInput
   488  			if input != nil {
   489  				tmp := *input
   490  				inCpy = &tmp
   491  			}
   492  			req, _ := c.ListUsersRequest(inCpy)
   493  			req.SetContext(ctx)
   494  			req.ApplyOptions(opts...)
   495  			return req, nil
   496  		},
   497  	}
   498  
   499  	for p.Next() {
   500  		if !fn(p.Page().(*ListUsersOutput), !p.HasNextPage()) {
   501  			break
   502  		}
   503  	}
   504  
   505  	return p.Err()
   506  }
   507  
   508  // You do not have sufficient access to perform this action.
   509  type AccessDeniedException struct {
   510  	_            struct{}                  `type:"structure"`
   511  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   512  
   513  	Message_ *string `locationName:"Message" min:"1" type:"string"`
   514  
   515  	// The identifier for each request. This value is a globally unique ID that
   516  	// is generated by the Identity Store service for each sent request, and is
   517  	// then returned inside the exception if the request fails.
   518  	RequestId *string `type:"string"`
   519  }
   520  
   521  // String returns the string representation.
   522  //
   523  // API parameter values that are decorated as "sensitive" in the API will not
   524  // be included in the string output. The member name will be present, but the
   525  // value will be replaced with "sensitive".
   526  func (s AccessDeniedException) String() string {
   527  	return awsutil.Prettify(s)
   528  }
   529  
   530  // GoString returns the string representation.
   531  //
   532  // API parameter values that are decorated as "sensitive" in the API will not
   533  // be included in the string output. The member name will be present, but the
   534  // value will be replaced with "sensitive".
   535  func (s AccessDeniedException) GoString() string {
   536  	return s.String()
   537  }
   538  
   539  func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
   540  	return &AccessDeniedException{
   541  		RespMetadata: v,
   542  	}
   543  }
   544  
   545  // Code returns the exception type name.
   546  func (s *AccessDeniedException) Code() string {
   547  	return "AccessDeniedException"
   548  }
   549  
   550  // Message returns the exception's message.
   551  func (s *AccessDeniedException) Message() string {
   552  	if s.Message_ != nil {
   553  		return *s.Message_
   554  	}
   555  	return ""
   556  }
   557  
   558  // OrigErr always returns nil, satisfies awserr.Error interface.
   559  func (s *AccessDeniedException) OrigErr() error {
   560  	return nil
   561  }
   562  
   563  func (s *AccessDeniedException) Error() string {
   564  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
   565  }
   566  
   567  // Status code returns the HTTP status code for the request's response error.
   568  func (s *AccessDeniedException) StatusCode() int {
   569  	return s.RespMetadata.StatusCode
   570  }
   571  
   572  // RequestID returns the service's response RequestID for request.
   573  func (s *AccessDeniedException) RequestID() string {
   574  	return s.RespMetadata.RequestID
   575  }
   576  
   577  type DescribeGroupInput struct {
   578  	_ struct{} `type:"structure"`
   579  
   580  	// The identifier for a group in the identity store.
   581  	//
   582  	// GroupId is a required field
   583  	GroupId *string `min:"1" type:"string" required:"true"`
   584  
   585  	// The globally unique identifier for the identity store, such as d-1234567890.
   586  	// In this example, d- is a fixed prefix, and 1234567890 is a randomly generated
   587  	// string that contains number and lower case letters. This value is generated
   588  	// at the time that a new identity store is created.
   589  	//
   590  	// IdentityStoreId is a required field
   591  	IdentityStoreId *string `min:"1" type:"string" required:"true"`
   592  }
   593  
   594  // String returns the string representation.
   595  //
   596  // API parameter values that are decorated as "sensitive" in the API will not
   597  // be included in the string output. The member name will be present, but the
   598  // value will be replaced with "sensitive".
   599  func (s DescribeGroupInput) String() string {
   600  	return awsutil.Prettify(s)
   601  }
   602  
   603  // GoString returns the string representation.
   604  //
   605  // API parameter values that are decorated as "sensitive" in the API will not
   606  // be included in the string output. The member name will be present, but the
   607  // value will be replaced with "sensitive".
   608  func (s DescribeGroupInput) GoString() string {
   609  	return s.String()
   610  }
   611  
   612  // Validate inspects the fields of the type to determine if they are valid.
   613  func (s *DescribeGroupInput) Validate() error {
   614  	invalidParams := request.ErrInvalidParams{Context: "DescribeGroupInput"}
   615  	if s.GroupId == nil {
   616  		invalidParams.Add(request.NewErrParamRequired("GroupId"))
   617  	}
   618  	if s.GroupId != nil && len(*s.GroupId) < 1 {
   619  		invalidParams.Add(request.NewErrParamMinLen("GroupId", 1))
   620  	}
   621  	if s.IdentityStoreId == nil {
   622  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
   623  	}
   624  	if s.IdentityStoreId != nil && len(*s.IdentityStoreId) < 1 {
   625  		invalidParams.Add(request.NewErrParamMinLen("IdentityStoreId", 1))
   626  	}
   627  
   628  	if invalidParams.Len() > 0 {
   629  		return invalidParams
   630  	}
   631  	return nil
   632  }
   633  
   634  // SetGroupId sets the GroupId field's value.
   635  func (s *DescribeGroupInput) SetGroupId(v string) *DescribeGroupInput {
   636  	s.GroupId = &v
   637  	return s
   638  }
   639  
   640  // SetIdentityStoreId sets the IdentityStoreId field's value.
   641  func (s *DescribeGroupInput) SetIdentityStoreId(v string) *DescribeGroupInput {
   642  	s.IdentityStoreId = &v
   643  	return s
   644  }
   645  
   646  type DescribeGroupOutput struct {
   647  	_ struct{} `type:"structure"`
   648  
   649  	// Contains the group’s display name value. The length limit is 1,024 characters.
   650  	// This value can consist of letters, accented characters, symbols, numbers,
   651  	// punctuation, tab, new line, carriage return, space, and nonbreaking space
   652  	// in this attribute. The characters <>;:% are excluded. This value is specified
   653  	// at the time that the group is created and stored as an attribute of the group
   654  	// object in the identity store.
   655  	//
   656  	// DisplayName is a required field
   657  	DisplayName *string `min:"1" type:"string" required:"true"`
   658  
   659  	// The identifier for a group in the identity store.
   660  	//
   661  	// GroupId is a required field
   662  	GroupId *string `min:"1" type:"string" required:"true"`
   663  }
   664  
   665  // String returns the string representation.
   666  //
   667  // API parameter values that are decorated as "sensitive" in the API will not
   668  // be included in the string output. The member name will be present, but the
   669  // value will be replaced with "sensitive".
   670  func (s DescribeGroupOutput) String() string {
   671  	return awsutil.Prettify(s)
   672  }
   673  
   674  // GoString returns the string representation.
   675  //
   676  // API parameter values that are decorated as "sensitive" in the API will not
   677  // be included in the string output. The member name will be present, but the
   678  // value will be replaced with "sensitive".
   679  func (s DescribeGroupOutput) GoString() string {
   680  	return s.String()
   681  }
   682  
   683  // SetDisplayName sets the DisplayName field's value.
   684  func (s *DescribeGroupOutput) SetDisplayName(v string) *DescribeGroupOutput {
   685  	s.DisplayName = &v
   686  	return s
   687  }
   688  
   689  // SetGroupId sets the GroupId field's value.
   690  func (s *DescribeGroupOutput) SetGroupId(v string) *DescribeGroupOutput {
   691  	s.GroupId = &v
   692  	return s
   693  }
   694  
   695  type DescribeUserInput struct {
   696  	_ struct{} `type:"structure"`
   697  
   698  	// The globally unique identifier for the identity store, such as d-1234567890.
   699  	// In this example, d- is a fixed prefix, and 1234567890 is a randomly generated
   700  	// string that contains number and lower case letters. This value is generated
   701  	// at the time that a new identity store is created.
   702  	//
   703  	// IdentityStoreId is a required field
   704  	IdentityStoreId *string `min:"1" type:"string" required:"true"`
   705  
   706  	// The identifier for a user in the identity store.
   707  	//
   708  	// UserId is a required field
   709  	UserId *string `min:"1" type:"string" required:"true"`
   710  }
   711  
   712  // String returns the string representation.
   713  //
   714  // API parameter values that are decorated as "sensitive" in the API will not
   715  // be included in the string output. The member name will be present, but the
   716  // value will be replaced with "sensitive".
   717  func (s DescribeUserInput) String() string {
   718  	return awsutil.Prettify(s)
   719  }
   720  
   721  // GoString returns the string representation.
   722  //
   723  // API parameter values that are decorated as "sensitive" in the API will not
   724  // be included in the string output. The member name will be present, but the
   725  // value will be replaced with "sensitive".
   726  func (s DescribeUserInput) GoString() string {
   727  	return s.String()
   728  }
   729  
   730  // Validate inspects the fields of the type to determine if they are valid.
   731  func (s *DescribeUserInput) Validate() error {
   732  	invalidParams := request.ErrInvalidParams{Context: "DescribeUserInput"}
   733  	if s.IdentityStoreId == nil {
   734  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
   735  	}
   736  	if s.IdentityStoreId != nil && len(*s.IdentityStoreId) < 1 {
   737  		invalidParams.Add(request.NewErrParamMinLen("IdentityStoreId", 1))
   738  	}
   739  	if s.UserId == nil {
   740  		invalidParams.Add(request.NewErrParamRequired("UserId"))
   741  	}
   742  	if s.UserId != nil && len(*s.UserId) < 1 {
   743  		invalidParams.Add(request.NewErrParamMinLen("UserId", 1))
   744  	}
   745  
   746  	if invalidParams.Len() > 0 {
   747  		return invalidParams
   748  	}
   749  	return nil
   750  }
   751  
   752  // SetIdentityStoreId sets the IdentityStoreId field's value.
   753  func (s *DescribeUserInput) SetIdentityStoreId(v string) *DescribeUserInput {
   754  	s.IdentityStoreId = &v
   755  	return s
   756  }
   757  
   758  // SetUserId sets the UserId field's value.
   759  func (s *DescribeUserInput) SetUserId(v string) *DescribeUserInput {
   760  	s.UserId = &v
   761  	return s
   762  }
   763  
   764  type DescribeUserOutput struct {
   765  	_ struct{} `type:"structure"`
   766  
   767  	// The identifier for a user in the identity store.
   768  	//
   769  	// UserId is a required field
   770  	UserId *string `min:"1" type:"string" required:"true"`
   771  
   772  	// Contains the user’s user name value. The length limit is 128 characters.
   773  	// This value can consist of letters, accented characters, symbols, numbers,
   774  	// and punctuation. The characters <>;:% are excluded. This value is specified
   775  	// at the time the user is created and stored as an attribute of the user object
   776  	// in the identity store.
   777  	//
   778  	// UserName is a sensitive parameter and its value will be
   779  	// replaced with "sensitive" in string returned by DescribeUserOutput's
   780  	// String and GoString methods.
   781  	//
   782  	// UserName is a required field
   783  	UserName *string `min:"1" type:"string" required:"true" sensitive:"true"`
   784  }
   785  
   786  // String returns the string representation.
   787  //
   788  // API parameter values that are decorated as "sensitive" in the API will not
   789  // be included in the string output. The member name will be present, but the
   790  // value will be replaced with "sensitive".
   791  func (s DescribeUserOutput) String() string {
   792  	return awsutil.Prettify(s)
   793  }
   794  
   795  // GoString returns the string representation.
   796  //
   797  // API parameter values that are decorated as "sensitive" in the API will not
   798  // be included in the string output. The member name will be present, but the
   799  // value will be replaced with "sensitive".
   800  func (s DescribeUserOutput) GoString() string {
   801  	return s.String()
   802  }
   803  
   804  // SetUserId sets the UserId field's value.
   805  func (s *DescribeUserOutput) SetUserId(v string) *DescribeUserOutput {
   806  	s.UserId = &v
   807  	return s
   808  }
   809  
   810  // SetUserName sets the UserName field's value.
   811  func (s *DescribeUserOutput) SetUserName(v string) *DescribeUserOutput {
   812  	s.UserName = &v
   813  	return s
   814  }
   815  
   816  // A query filter used by ListUsers and ListGroup. This filter object provides
   817  // the attribute name and attribute value to search users or groups.
   818  type Filter struct {
   819  	_ struct{} `type:"structure"`
   820  
   821  	// The attribute path that is used to specify which attribute name to search.
   822  	// Length limit is 255 characters. For example, UserName is a valid attribute
   823  	// path for the ListUsers API, and DisplayName is a valid attribute path for
   824  	// the ListGroups API.
   825  	//
   826  	// AttributePath is a required field
   827  	AttributePath *string `min:"1" type:"string" required:"true"`
   828  
   829  	// Represents the data for an attribute. Each attribute value is described as
   830  	// a name-value pair.
   831  	//
   832  	// AttributeValue is a sensitive parameter and its value will be
   833  	// replaced with "sensitive" in string returned by Filter's
   834  	// String and GoString methods.
   835  	//
   836  	// AttributeValue is a required field
   837  	AttributeValue *string `min:"1" type:"string" required:"true" sensitive:"true"`
   838  }
   839  
   840  // String returns the string representation.
   841  //
   842  // API parameter values that are decorated as "sensitive" in the API will not
   843  // be included in the string output. The member name will be present, but the
   844  // value will be replaced with "sensitive".
   845  func (s Filter) String() string {
   846  	return awsutil.Prettify(s)
   847  }
   848  
   849  // GoString returns the string representation.
   850  //
   851  // API parameter values that are decorated as "sensitive" in the API will not
   852  // be included in the string output. The member name will be present, but the
   853  // value will be replaced with "sensitive".
   854  func (s Filter) GoString() string {
   855  	return s.String()
   856  }
   857  
   858  // Validate inspects the fields of the type to determine if they are valid.
   859  func (s *Filter) Validate() error {
   860  	invalidParams := request.ErrInvalidParams{Context: "Filter"}
   861  	if s.AttributePath == nil {
   862  		invalidParams.Add(request.NewErrParamRequired("AttributePath"))
   863  	}
   864  	if s.AttributePath != nil && len(*s.AttributePath) < 1 {
   865  		invalidParams.Add(request.NewErrParamMinLen("AttributePath", 1))
   866  	}
   867  	if s.AttributeValue == nil {
   868  		invalidParams.Add(request.NewErrParamRequired("AttributeValue"))
   869  	}
   870  	if s.AttributeValue != nil && len(*s.AttributeValue) < 1 {
   871  		invalidParams.Add(request.NewErrParamMinLen("AttributeValue", 1))
   872  	}
   873  
   874  	if invalidParams.Len() > 0 {
   875  		return invalidParams
   876  	}
   877  	return nil
   878  }
   879  
   880  // SetAttributePath sets the AttributePath field's value.
   881  func (s *Filter) SetAttributePath(v string) *Filter {
   882  	s.AttributePath = &v
   883  	return s
   884  }
   885  
   886  // SetAttributeValue sets the AttributeValue field's value.
   887  func (s *Filter) SetAttributeValue(v string) *Filter {
   888  	s.AttributeValue = &v
   889  	return s
   890  }
   891  
   892  // A group object, which contains a specified group’s metadata and attributes.
   893  type Group struct {
   894  	_ struct{} `type:"structure"`
   895  
   896  	// Contains the group’s display name value. The length limit is 1,024 characters.
   897  	// This value can consist of letters, accented characters, symbols, numbers,
   898  	// punctuation, tab, new line, carriage return, space, and nonbreaking space
   899  	// in this attribute. The characters <>;:% are excluded. This value is specified
   900  	// at the time the group is created and stored as an attribute of the group
   901  	// object in the identity store.
   902  	//
   903  	// DisplayName is a required field
   904  	DisplayName *string `min:"1" type:"string" required:"true"`
   905  
   906  	// The identifier for a group in the identity store.
   907  	//
   908  	// GroupId is a required field
   909  	GroupId *string `min:"1" type:"string" required:"true"`
   910  }
   911  
   912  // String returns the string representation.
   913  //
   914  // API parameter values that are decorated as "sensitive" in the API will not
   915  // be included in the string output. The member name will be present, but the
   916  // value will be replaced with "sensitive".
   917  func (s Group) String() string {
   918  	return awsutil.Prettify(s)
   919  }
   920  
   921  // GoString returns the string representation.
   922  //
   923  // API parameter values that are decorated as "sensitive" in the API will not
   924  // be included in the string output. The member name will be present, but the
   925  // value will be replaced with "sensitive".
   926  func (s Group) GoString() string {
   927  	return s.String()
   928  }
   929  
   930  // SetDisplayName sets the DisplayName field's value.
   931  func (s *Group) SetDisplayName(v string) *Group {
   932  	s.DisplayName = &v
   933  	return s
   934  }
   935  
   936  // SetGroupId sets the GroupId field's value.
   937  func (s *Group) SetGroupId(v string) *Group {
   938  	s.GroupId = &v
   939  	return s
   940  }
   941  
   942  // The request processing has failed because of an unknown error, exception
   943  // or failure with an internal server.
   944  type InternalServerException struct {
   945  	_            struct{}                  `type:"structure"`
   946  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
   947  
   948  	Message_ *string `locationName:"Message" min:"1" type:"string"`
   949  
   950  	// The identifier for each request. This value is a globally unique ID that
   951  	// is generated by the Identity Store service for each sent request, and is
   952  	// then returned inside the exception if the request fails.
   953  	RequestId *string `type:"string"`
   954  }
   955  
   956  // String returns the string representation.
   957  //
   958  // API parameter values that are decorated as "sensitive" in the API will not
   959  // be included in the string output. The member name will be present, but the
   960  // value will be replaced with "sensitive".
   961  func (s InternalServerException) String() string {
   962  	return awsutil.Prettify(s)
   963  }
   964  
   965  // GoString returns the string representation.
   966  //
   967  // API parameter values that are decorated as "sensitive" in the API will not
   968  // be included in the string output. The member name will be present, but the
   969  // value will be replaced with "sensitive".
   970  func (s InternalServerException) GoString() string {
   971  	return s.String()
   972  }
   973  
   974  func newErrorInternalServerException(v protocol.ResponseMetadata) error {
   975  	return &InternalServerException{
   976  		RespMetadata: v,
   977  	}
   978  }
   979  
   980  // Code returns the exception type name.
   981  func (s *InternalServerException) Code() string {
   982  	return "InternalServerException"
   983  }
   984  
   985  // Message returns the exception's message.
   986  func (s *InternalServerException) Message() string {
   987  	if s.Message_ != nil {
   988  		return *s.Message_
   989  	}
   990  	return ""
   991  }
   992  
   993  // OrigErr always returns nil, satisfies awserr.Error interface.
   994  func (s *InternalServerException) OrigErr() error {
   995  	return nil
   996  }
   997  
   998  func (s *InternalServerException) Error() string {
   999  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  1000  }
  1001  
  1002  // Status code returns the HTTP status code for the request's response error.
  1003  func (s *InternalServerException) StatusCode() int {
  1004  	return s.RespMetadata.StatusCode
  1005  }
  1006  
  1007  // RequestID returns the service's response RequestID for request.
  1008  func (s *InternalServerException) RequestID() string {
  1009  	return s.RespMetadata.RequestID
  1010  }
  1011  
  1012  type ListGroupsInput struct {
  1013  	_ struct{} `type:"structure"`
  1014  
  1015  	// A list of Filter objects, which is used in the ListUsers and ListGroups request.
  1016  	Filters []*Filter `type:"list"`
  1017  
  1018  	// The globally unique identifier for the identity store, such as d-1234567890.
  1019  	// In this example, d- is a fixed prefix, and 1234567890 is a randomly generated
  1020  	// string that contains number and lower case letters. This value is generated
  1021  	// at the time that a new identity store is created.
  1022  	//
  1023  	// IdentityStoreId is a required field
  1024  	IdentityStoreId *string `min:"1" type:"string" required:"true"`
  1025  
  1026  	// The maximum number of results to be returned per request. This parameter
  1027  	// is used in the ListUsers and ListGroups request to specify how many results
  1028  	// to return in one page. The length limit is 50 characters.
  1029  	MaxResults *int64 `min:"1" type:"integer"`
  1030  
  1031  	// The pagination token used for the ListUsers and ListGroups API operations.
  1032  	// This value is generated by the identity store service. It is returned in
  1033  	// the API response if the total results are more than the size of one page.
  1034  	// This token is also returned when it is used in the API request to search
  1035  	// for the next page.
  1036  	NextToken *string `min:"1" type:"string"`
  1037  }
  1038  
  1039  // String returns the string representation.
  1040  //
  1041  // API parameter values that are decorated as "sensitive" in the API will not
  1042  // be included in the string output. The member name will be present, but the
  1043  // value will be replaced with "sensitive".
  1044  func (s ListGroupsInput) String() string {
  1045  	return awsutil.Prettify(s)
  1046  }
  1047  
  1048  // GoString returns the string representation.
  1049  //
  1050  // API parameter values that are decorated as "sensitive" in the API will not
  1051  // be included in the string output. The member name will be present, but the
  1052  // value will be replaced with "sensitive".
  1053  func (s ListGroupsInput) GoString() string {
  1054  	return s.String()
  1055  }
  1056  
  1057  // Validate inspects the fields of the type to determine if they are valid.
  1058  func (s *ListGroupsInput) Validate() error {
  1059  	invalidParams := request.ErrInvalidParams{Context: "ListGroupsInput"}
  1060  	if s.IdentityStoreId == nil {
  1061  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
  1062  	}
  1063  	if s.IdentityStoreId != nil && len(*s.IdentityStoreId) < 1 {
  1064  		invalidParams.Add(request.NewErrParamMinLen("IdentityStoreId", 1))
  1065  	}
  1066  	if s.MaxResults != nil && *s.MaxResults < 1 {
  1067  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  1068  	}
  1069  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  1070  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  1071  	}
  1072  	if s.Filters != nil {
  1073  		for i, v := range s.Filters {
  1074  			if v == nil {
  1075  				continue
  1076  			}
  1077  			if err := v.Validate(); err != nil {
  1078  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
  1079  			}
  1080  		}
  1081  	}
  1082  
  1083  	if invalidParams.Len() > 0 {
  1084  		return invalidParams
  1085  	}
  1086  	return nil
  1087  }
  1088  
  1089  // SetFilters sets the Filters field's value.
  1090  func (s *ListGroupsInput) SetFilters(v []*Filter) *ListGroupsInput {
  1091  	s.Filters = v
  1092  	return s
  1093  }
  1094  
  1095  // SetIdentityStoreId sets the IdentityStoreId field's value.
  1096  func (s *ListGroupsInput) SetIdentityStoreId(v string) *ListGroupsInput {
  1097  	s.IdentityStoreId = &v
  1098  	return s
  1099  }
  1100  
  1101  // SetMaxResults sets the MaxResults field's value.
  1102  func (s *ListGroupsInput) SetMaxResults(v int64) *ListGroupsInput {
  1103  	s.MaxResults = &v
  1104  	return s
  1105  }
  1106  
  1107  // SetNextToken sets the NextToken field's value.
  1108  func (s *ListGroupsInput) SetNextToken(v string) *ListGroupsInput {
  1109  	s.NextToken = &v
  1110  	return s
  1111  }
  1112  
  1113  type ListGroupsOutput struct {
  1114  	_ struct{} `type:"structure"`
  1115  
  1116  	// A list of Group objects in the identity store.
  1117  	//
  1118  	// Groups is a required field
  1119  	Groups []*Group `type:"list" required:"true"`
  1120  
  1121  	// The pagination token used for the ListUsers and ListGroups API operations.
  1122  	// This value is generated by the identity store service. It is returned in
  1123  	// the API response if the total results are more than the size of one page.
  1124  	// This token is also returned when it1 is used in the API request to search
  1125  	// for the next page.
  1126  	NextToken *string `min:"1" type:"string"`
  1127  }
  1128  
  1129  // String returns the string representation.
  1130  //
  1131  // API parameter values that are decorated as "sensitive" in the API will not
  1132  // be included in the string output. The member name will be present, but the
  1133  // value will be replaced with "sensitive".
  1134  func (s ListGroupsOutput) String() string {
  1135  	return awsutil.Prettify(s)
  1136  }
  1137  
  1138  // GoString returns the string representation.
  1139  //
  1140  // API parameter values that are decorated as "sensitive" in the API will not
  1141  // be included in the string output. The member name will be present, but the
  1142  // value will be replaced with "sensitive".
  1143  func (s ListGroupsOutput) GoString() string {
  1144  	return s.String()
  1145  }
  1146  
  1147  // SetGroups sets the Groups field's value.
  1148  func (s *ListGroupsOutput) SetGroups(v []*Group) *ListGroupsOutput {
  1149  	s.Groups = v
  1150  	return s
  1151  }
  1152  
  1153  // SetNextToken sets the NextToken field's value.
  1154  func (s *ListGroupsOutput) SetNextToken(v string) *ListGroupsOutput {
  1155  	s.NextToken = &v
  1156  	return s
  1157  }
  1158  
  1159  type ListUsersInput struct {
  1160  	_ struct{} `type:"structure"`
  1161  
  1162  	// A list of Filter objects, which is used in the ListUsers and ListGroups request.
  1163  	Filters []*Filter `type:"list"`
  1164  
  1165  	// The globally unique identifier for the identity store, such as d-1234567890.
  1166  	// In this example, d- is a fixed prefix, and 1234567890 is a randomly generated
  1167  	// string that contains number and lower case letters. This value is generated
  1168  	// at the time that a new identity store is created.
  1169  	//
  1170  	// IdentityStoreId is a required field
  1171  	IdentityStoreId *string `min:"1" type:"string" required:"true"`
  1172  
  1173  	// The maximum number of results to be returned per request. This parameter
  1174  	// is used in the ListUsers and ListGroups request to specify how many results
  1175  	// to return in one page. The length limit is 50 characters.
  1176  	MaxResults *int64 `min:"1" type:"integer"`
  1177  
  1178  	// The pagination token used for the ListUsers and ListGroups API operations.
  1179  	// This value is generated by the identity store service. It is returned in
  1180  	// the API response if the total results are more than the size of one page.
  1181  	// This token is also returned when it is used in the API request to search
  1182  	// for the next page.
  1183  	NextToken *string `min:"1" type:"string"`
  1184  }
  1185  
  1186  // String returns the string representation.
  1187  //
  1188  // API parameter values that are decorated as "sensitive" in the API will not
  1189  // be included in the string output. The member name will be present, but the
  1190  // value will be replaced with "sensitive".
  1191  func (s ListUsersInput) String() string {
  1192  	return awsutil.Prettify(s)
  1193  }
  1194  
  1195  // GoString returns the string representation.
  1196  //
  1197  // API parameter values that are decorated as "sensitive" in the API will not
  1198  // be included in the string output. The member name will be present, but the
  1199  // value will be replaced with "sensitive".
  1200  func (s ListUsersInput) GoString() string {
  1201  	return s.String()
  1202  }
  1203  
  1204  // Validate inspects the fields of the type to determine if they are valid.
  1205  func (s *ListUsersInput) Validate() error {
  1206  	invalidParams := request.ErrInvalidParams{Context: "ListUsersInput"}
  1207  	if s.IdentityStoreId == nil {
  1208  		invalidParams.Add(request.NewErrParamRequired("IdentityStoreId"))
  1209  	}
  1210  	if s.IdentityStoreId != nil && len(*s.IdentityStoreId) < 1 {
  1211  		invalidParams.Add(request.NewErrParamMinLen("IdentityStoreId", 1))
  1212  	}
  1213  	if s.MaxResults != nil && *s.MaxResults < 1 {
  1214  		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
  1215  	}
  1216  	if s.NextToken != nil && len(*s.NextToken) < 1 {
  1217  		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
  1218  	}
  1219  	if s.Filters != nil {
  1220  		for i, v := range s.Filters {
  1221  			if v == nil {
  1222  				continue
  1223  			}
  1224  			if err := v.Validate(); err != nil {
  1225  				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
  1226  			}
  1227  		}
  1228  	}
  1229  
  1230  	if invalidParams.Len() > 0 {
  1231  		return invalidParams
  1232  	}
  1233  	return nil
  1234  }
  1235  
  1236  // SetFilters sets the Filters field's value.
  1237  func (s *ListUsersInput) SetFilters(v []*Filter) *ListUsersInput {
  1238  	s.Filters = v
  1239  	return s
  1240  }
  1241  
  1242  // SetIdentityStoreId sets the IdentityStoreId field's value.
  1243  func (s *ListUsersInput) SetIdentityStoreId(v string) *ListUsersInput {
  1244  	s.IdentityStoreId = &v
  1245  	return s
  1246  }
  1247  
  1248  // SetMaxResults sets the MaxResults field's value.
  1249  func (s *ListUsersInput) SetMaxResults(v int64) *ListUsersInput {
  1250  	s.MaxResults = &v
  1251  	return s
  1252  }
  1253  
  1254  // SetNextToken sets the NextToken field's value.
  1255  func (s *ListUsersInput) SetNextToken(v string) *ListUsersInput {
  1256  	s.NextToken = &v
  1257  	return s
  1258  }
  1259  
  1260  type ListUsersOutput struct {
  1261  	_ struct{} `type:"structure"`
  1262  
  1263  	// The pagination token used for the ListUsers and ListGroups API operations.
  1264  	// This value is generated by the identity store service. It is returned in
  1265  	// the API response if the total results are more than the size of one page.
  1266  	// This token is also returned when it is used in the API request to search
  1267  	// for the next page.
  1268  	NextToken *string `min:"1" type:"string"`
  1269  
  1270  	// A list of User objects in the identity store.
  1271  	//
  1272  	// Users is a required field
  1273  	Users []*User `type:"list" required:"true"`
  1274  }
  1275  
  1276  // String returns the string representation.
  1277  //
  1278  // API parameter values that are decorated as "sensitive" in the API will not
  1279  // be included in the string output. The member name will be present, but the
  1280  // value will be replaced with "sensitive".
  1281  func (s ListUsersOutput) String() string {
  1282  	return awsutil.Prettify(s)
  1283  }
  1284  
  1285  // GoString returns the string representation.
  1286  //
  1287  // API parameter values that are decorated as "sensitive" in the API will not
  1288  // be included in the string output. The member name will be present, but the
  1289  // value will be replaced with "sensitive".
  1290  func (s ListUsersOutput) GoString() string {
  1291  	return s.String()
  1292  }
  1293  
  1294  // SetNextToken sets the NextToken field's value.
  1295  func (s *ListUsersOutput) SetNextToken(v string) *ListUsersOutput {
  1296  	s.NextToken = &v
  1297  	return s
  1298  }
  1299  
  1300  // SetUsers sets the Users field's value.
  1301  func (s *ListUsersOutput) SetUsers(v []*User) *ListUsersOutput {
  1302  	s.Users = v
  1303  	return s
  1304  }
  1305  
  1306  // Indicates that a requested resource is not found.
  1307  type ResourceNotFoundException struct {
  1308  	_            struct{}                  `type:"structure"`
  1309  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1310  
  1311  	Message_ *string `locationName:"Message" min:"1" type:"string"`
  1312  
  1313  	// The identifier for each request. This value is a globally unique ID that
  1314  	// is generated by the Identity Store service for each sent request, and is
  1315  	// then returned inside the exception if the request fails.
  1316  	RequestId *string `type:"string"`
  1317  
  1318  	// The identifier for a resource in the identity store, which can be used as
  1319  	// UserId or GroupId. The format for ResourceId is either UUID or 1234567890-UUID,
  1320  	// where UUID is a randomly generated value for each resource when it is created
  1321  	// and 1234567890 represents the IdentityStoreId string value. In the case that
  1322  	// the identity store is migrated from a legacy SSO identity store, the ResourceId
  1323  	// for that identity store will be in the format of UUID. Otherwise, it will
  1324  	// be in the 1234567890-UUID format.
  1325  	ResourceId *string `min:"1" type:"string"`
  1326  
  1327  	// The type of resource in the Identity Store service, which is an enum object.
  1328  	// Valid values include USER, GROUP, and IDENTITY_STORE.
  1329  	ResourceType *string `type:"string" enum:"ResourceType"`
  1330  }
  1331  
  1332  // String returns the string representation.
  1333  //
  1334  // API parameter values that are decorated as "sensitive" in the API will not
  1335  // be included in the string output. The member name will be present, but the
  1336  // value will be replaced with "sensitive".
  1337  func (s ResourceNotFoundException) String() string {
  1338  	return awsutil.Prettify(s)
  1339  }
  1340  
  1341  // GoString returns the string representation.
  1342  //
  1343  // API parameter values that are decorated as "sensitive" in the API will not
  1344  // be included in the string output. The member name will be present, but the
  1345  // value will be replaced with "sensitive".
  1346  func (s ResourceNotFoundException) GoString() string {
  1347  	return s.String()
  1348  }
  1349  
  1350  func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
  1351  	return &ResourceNotFoundException{
  1352  		RespMetadata: v,
  1353  	}
  1354  }
  1355  
  1356  // Code returns the exception type name.
  1357  func (s *ResourceNotFoundException) Code() string {
  1358  	return "ResourceNotFoundException"
  1359  }
  1360  
  1361  // Message returns the exception's message.
  1362  func (s *ResourceNotFoundException) Message() string {
  1363  	if s.Message_ != nil {
  1364  		return *s.Message_
  1365  	}
  1366  	return ""
  1367  }
  1368  
  1369  // OrigErr always returns nil, satisfies awserr.Error interface.
  1370  func (s *ResourceNotFoundException) OrigErr() error {
  1371  	return nil
  1372  }
  1373  
  1374  func (s *ResourceNotFoundException) Error() string {
  1375  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  1376  }
  1377  
  1378  // Status code returns the HTTP status code for the request's response error.
  1379  func (s *ResourceNotFoundException) StatusCode() int {
  1380  	return s.RespMetadata.StatusCode
  1381  }
  1382  
  1383  // RequestID returns the service's response RequestID for request.
  1384  func (s *ResourceNotFoundException) RequestID() string {
  1385  	return s.RespMetadata.RequestID
  1386  }
  1387  
  1388  // Indicates that the principal has crossed the throttling limits of the API
  1389  // operations.
  1390  type ThrottlingException struct {
  1391  	_            struct{}                  `type:"structure"`
  1392  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1393  
  1394  	Message_ *string `locationName:"Message" min:"1" type:"string"`
  1395  
  1396  	// The identifier for each request. This value is a globally unique ID that
  1397  	// is generated by the Identity Store service for each sent request, and is
  1398  	// then returned inside the exception if the request fails.
  1399  	RequestId *string `type:"string"`
  1400  }
  1401  
  1402  // String returns the string representation.
  1403  //
  1404  // API parameter values that are decorated as "sensitive" in the API will not
  1405  // be included in the string output. The member name will be present, but the
  1406  // value will be replaced with "sensitive".
  1407  func (s ThrottlingException) String() string {
  1408  	return awsutil.Prettify(s)
  1409  }
  1410  
  1411  // GoString returns the string representation.
  1412  //
  1413  // API parameter values that are decorated as "sensitive" in the API will not
  1414  // be included in the string output. The member name will be present, but the
  1415  // value will be replaced with "sensitive".
  1416  func (s ThrottlingException) GoString() string {
  1417  	return s.String()
  1418  }
  1419  
  1420  func newErrorThrottlingException(v protocol.ResponseMetadata) error {
  1421  	return &ThrottlingException{
  1422  		RespMetadata: v,
  1423  	}
  1424  }
  1425  
  1426  // Code returns the exception type name.
  1427  func (s *ThrottlingException) Code() string {
  1428  	return "ThrottlingException"
  1429  }
  1430  
  1431  // Message returns the exception's message.
  1432  func (s *ThrottlingException) Message() string {
  1433  	if s.Message_ != nil {
  1434  		return *s.Message_
  1435  	}
  1436  	return ""
  1437  }
  1438  
  1439  // OrigErr always returns nil, satisfies awserr.Error interface.
  1440  func (s *ThrottlingException) OrigErr() error {
  1441  	return nil
  1442  }
  1443  
  1444  func (s *ThrottlingException) Error() string {
  1445  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  1446  }
  1447  
  1448  // Status code returns the HTTP status code for the request's response error.
  1449  func (s *ThrottlingException) StatusCode() int {
  1450  	return s.RespMetadata.StatusCode
  1451  }
  1452  
  1453  // RequestID returns the service's response RequestID for request.
  1454  func (s *ThrottlingException) RequestID() string {
  1455  	return s.RespMetadata.RequestID
  1456  }
  1457  
  1458  // A user object, which contains a specified user’s metadata and attributes.
  1459  type User struct {
  1460  	_ struct{} `type:"structure"`
  1461  
  1462  	// The identifier for a user in the identity store.
  1463  	//
  1464  	// UserId is a required field
  1465  	UserId *string `min:"1" type:"string" required:"true"`
  1466  
  1467  	// Contains the user’s user name value. The length limit is 128 characters.
  1468  	// This value can consist of letters, accented characters, symbols, numbers,
  1469  	// and punctuation. The characters <>;:% are excluded. This value is specified
  1470  	// at the time the user is created and stored as an attribute of the user object
  1471  	// in the identity store.
  1472  	//
  1473  	// UserName is a sensitive parameter and its value will be
  1474  	// replaced with "sensitive" in string returned by User's
  1475  	// String and GoString methods.
  1476  	//
  1477  	// UserName is a required field
  1478  	UserName *string `min:"1" type:"string" required:"true" sensitive:"true"`
  1479  }
  1480  
  1481  // String returns the string representation.
  1482  //
  1483  // API parameter values that are decorated as "sensitive" in the API will not
  1484  // be included in the string output. The member name will be present, but the
  1485  // value will be replaced with "sensitive".
  1486  func (s User) String() string {
  1487  	return awsutil.Prettify(s)
  1488  }
  1489  
  1490  // GoString returns the string representation.
  1491  //
  1492  // API parameter values that are decorated as "sensitive" in the API will not
  1493  // be included in the string output. The member name will be present, but the
  1494  // value will be replaced with "sensitive".
  1495  func (s User) GoString() string {
  1496  	return s.String()
  1497  }
  1498  
  1499  // SetUserId sets the UserId field's value.
  1500  func (s *User) SetUserId(v string) *User {
  1501  	s.UserId = &v
  1502  	return s
  1503  }
  1504  
  1505  // SetUserName sets the UserName field's value.
  1506  func (s *User) SetUserName(v string) *User {
  1507  	s.UserName = &v
  1508  	return s
  1509  }
  1510  
  1511  // The request failed because it contains a syntax error.
  1512  type ValidationException struct {
  1513  	_            struct{}                  `type:"structure"`
  1514  	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
  1515  
  1516  	Message_ *string `locationName:"Message" min:"1" type:"string"`
  1517  
  1518  	// The identifier for each request. This value is a globally unique ID that
  1519  	// is generated by the Identity Store service for each sent request, and is
  1520  	// then returned inside the exception if the request fails.
  1521  	RequestId *string `type:"string"`
  1522  }
  1523  
  1524  // String returns the string representation.
  1525  //
  1526  // API parameter values that are decorated as "sensitive" in the API will not
  1527  // be included in the string output. The member name will be present, but the
  1528  // value will be replaced with "sensitive".
  1529  func (s ValidationException) String() string {
  1530  	return awsutil.Prettify(s)
  1531  }
  1532  
  1533  // GoString returns the string representation.
  1534  //
  1535  // API parameter values that are decorated as "sensitive" in the API will not
  1536  // be included in the string output. The member name will be present, but the
  1537  // value will be replaced with "sensitive".
  1538  func (s ValidationException) GoString() string {
  1539  	return s.String()
  1540  }
  1541  
  1542  func newErrorValidationException(v protocol.ResponseMetadata) error {
  1543  	return &ValidationException{
  1544  		RespMetadata: v,
  1545  	}
  1546  }
  1547  
  1548  // Code returns the exception type name.
  1549  func (s *ValidationException) Code() string {
  1550  	return "ValidationException"
  1551  }
  1552  
  1553  // Message returns the exception's message.
  1554  func (s *ValidationException) Message() string {
  1555  	if s.Message_ != nil {
  1556  		return *s.Message_
  1557  	}
  1558  	return ""
  1559  }
  1560  
  1561  // OrigErr always returns nil, satisfies awserr.Error interface.
  1562  func (s *ValidationException) OrigErr() error {
  1563  	return nil
  1564  }
  1565  
  1566  func (s *ValidationException) Error() string {
  1567  	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
  1568  }
  1569  
  1570  // Status code returns the HTTP status code for the request's response error.
  1571  func (s *ValidationException) StatusCode() int {
  1572  	return s.RespMetadata.StatusCode
  1573  }
  1574  
  1575  // RequestID returns the service's response RequestID for request.
  1576  func (s *ValidationException) RequestID() string {
  1577  	return s.RespMetadata.RequestID
  1578  }
  1579  
  1580  const (
  1581  	// ResourceTypeGroup is a ResourceType enum value
  1582  	ResourceTypeGroup = "GROUP"
  1583  
  1584  	// ResourceTypeUser is a ResourceType enum value
  1585  	ResourceTypeUser = "USER"
  1586  
  1587  	// ResourceTypeIdentityStore is a ResourceType enum value
  1588  	ResourceTypeIdentityStore = "IDENTITY_STORE"
  1589  )
  1590  
  1591  // ResourceType_Values returns all elements of the ResourceType enum
  1592  func ResourceType_Values() []string {
  1593  	return []string{
  1594  		ResourceTypeGroup,
  1595  		ResourceTypeUser,
  1596  		ResourceTypeIdentityStore,
  1597  	}
  1598  }