/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the detective-2018-10-26.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.Detective.Model
{
///
/// Container for the parameters to the CreateMembers operation.
/// CreateMembers
is used to send invitations to accounts. For the organization
/// behavior graph, the Detective administrator account uses CreateMembers
/// to enable organization accounts as member accounts.
///
///
///
/// For invited accounts, CreateMembers
sends a request to invite the specified
/// Amazon Web Services accounts to be member accounts in the behavior graph. This operation
/// can only be called by the administrator account for a behavior graph.
///
///
///
/// CreateMembers
verifies the accounts and then invites the verified accounts.
/// The administrator can optionally specify to not send invitation emails to the member
/// accounts. This would be used when the administrator manages their member accounts
/// centrally.
///
///
///
/// For organization accounts in the organization behavior graph, CreateMembers
/// attempts to enable the accounts. The organization accounts do not receive invitations.
///
///
///
/// The request provides the behavior graph ARN and the list of accounts to invite or
/// to enable.
///
///
///
/// The response separates the requested accounts into two lists:
///
/// -
///
/// The accounts that
CreateMembers
was able to process. For invited accounts,
/// includes member accounts that are being verified, that have passed verification and
/// are to be invited, and that have failed verification. For organization accounts in
/// the organization behavior graph, includes accounts that can be enabled and that cannot
/// be enabled.
///
/// -
///
/// The accounts that
CreateMembers
was unable to process. This list includes
/// accounts that were already invited to be member accounts in the behavior graph.
///
///
///
public partial class CreateMembersRequest : AmazonDetectiveRequest
{
private List _accounts = new List();
private bool? _disableEmailNotification;
private string _graphArn;
private string _message;
///
/// Gets and sets the property Accounts.
///
/// The list of Amazon Web Services accounts to invite or to enable. You can invite or
/// enable up to 50 accounts at a time. For each invited account, the account list contains
/// the account identifier and the Amazon Web Services account root user email address.
/// For organization accounts in the organization behavior graph, the email address is
/// not required.
///
///
[AWSProperty(Required=true, Min=1, Max=50)]
public List Accounts
{
get { return this._accounts; }
set { this._accounts = value; }
}
// Check to see if Accounts property is set
internal bool IsSetAccounts()
{
return this._accounts != null && this._accounts.Count > 0;
}
///
/// Gets and sets the property DisableEmailNotification.
///
/// if set to true
, then the invited accounts do not receive email notifications.
/// By default, this is set to false
, and the invited accounts receive email
/// notifications.
///
///
///
/// Organization accounts in the organization behavior graph do not receive email notifications.
///
///
public bool DisableEmailNotification
{
get { return this._disableEmailNotification.GetValueOrDefault(); }
set { this._disableEmailNotification = value; }
}
// Check to see if DisableEmailNotification property is set
internal bool IsSetDisableEmailNotification()
{
return this._disableEmailNotification.HasValue;
}
///
/// Gets and sets the property GraphArn.
///
/// The ARN of the behavior graph.
///
///
[AWSProperty(Required=true)]
public string GraphArn
{
get { return this._graphArn; }
set { this._graphArn = value; }
}
// Check to see if GraphArn property is set
internal bool IsSetGraphArn()
{
return this._graphArn != null;
}
///
/// Gets and sets the property Message.
///
/// Customized message text to include in the invitation email message to the invited
/// member accounts.
///
///
[AWSProperty(Min=1, Max=1000)]
public string Message
{
get { return this._message; }
set { this._message = value; }
}
// Check to see if Message property is set
internal bool IsSetMessage()
{
return this._message != null;
}
}
}