Class CreateGovCloudAccountRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateGovCloudAccountRequest.Builder,CreateGovCloudAccountRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateGovCloudAccountRequest extends OrganizationsRequest implements ToCopyableBuilder<CreateGovCloudAccountRequest.Builder,CreateGovCloudAccountRequest>
  • Method Details

    • email

      public final String email()

      Specifies the email address of the owner to assign to the new member account in the commercial Region. This email address must not already be associated with another Amazon Web Services account. You must use a valid email address to complete account creation.

      The rules for a valid email address:

      • The address must be a minimum of 6 and a maximum of 64 characters long.

      • All characters must be 7-bit ASCII characters.

      • There must be one and only one @ symbol, which separates the local name from the domain name.

      • The local name can't contain any of the following characters:

        whitespace, " ' ( ) < > [ ] : ; , \ | % &

      • The local name can't begin with a dot (.)

      • The domain name can consist of only the characters [a-z],[A-Z],[0-9], hyphen (-), or dot (.)

      • The domain name can't begin or end with a hyphen (-) or dot (.)

      • The domain name must contain at least one dot

      You can't access the root user of the account or remove an account that was created with an invalid email address. Like all request parameters for CreateGovCloudAccount, the request for the email address for the Amazon Web Services GovCloud (US) account originates from the commercial Region, not from the Amazon Web Services GovCloud (US) Region.

      Returns:
      Specifies the email address of the owner to assign to the new member account in the commercial Region. This email address must not already be associated with another Amazon Web Services account. You must use a valid email address to complete account creation.

      The rules for a valid email address:

      • The address must be a minimum of 6 and a maximum of 64 characters long.

      • All characters must be 7-bit ASCII characters.

      • There must be one and only one @ symbol, which separates the local name from the domain name.

      • The local name can't contain any of the following characters:

        whitespace, " ' ( ) < > [ ] : ; , \ | % &

      • The local name can't begin with a dot (.)

      • The domain name can consist of only the characters [a-z],[A-Z],[0-9], hyphen (-), or dot (.)

      • The domain name can't begin or end with a hyphen (-) or dot (.)

      • The domain name must contain at least one dot

      You can't access the root user of the account or remove an account that was created with an invalid email address. Like all request parameters for CreateGovCloudAccount, the request for the email address for the Amazon Web Services GovCloud (US) account originates from the commercial Region, not from the Amazon Web Services GovCloud (US) Region.

    • accountName

      public final String accountName()

      The friendly name of the member account.

      The account name can consist of only the characters [a-z],[A-Z],[0-9], hyphen (-), or dot (.) You can't separate characters with a dash (–).

      Returns:
      The friendly name of the member account.

      The account name can consist of only the characters [a-z],[A-Z],[0-9], hyphen (-), or dot (.) You can't separate characters with a dash (–).

    • roleName

      public final String roleName()

      (Optional)

      The name of an IAM role that Organizations automatically preconfigures in the new member accounts in both the Amazon Web Services GovCloud (US) Region and in the commercial Region. This role trusts the management account, allowing users in the management account to assume the role, as permitted by the management account administrator. The role has administrator permissions in the new member account.

      If you don't specify this parameter, the role name defaults to OrganizationAccountAccessRole.

      For more information about how to use this role to access the member account, see the following links:

      The regex pattern that is used to validate this parameter. The pattern can include uppercase letters, lowercase letters, digits with no spaces, and any of the following characters: =,.@-

      Returns:
      (Optional)

      The name of an IAM role that Organizations automatically preconfigures in the new member accounts in both the Amazon Web Services GovCloud (US) Region and in the commercial Region. This role trusts the management account, allowing users in the management account to assume the role, as permitted by the management account administrator. The role has administrator permissions in the new member account.

      If you don't specify this parameter, the role name defaults to OrganizationAccountAccessRole .

      For more information about how to use this role to access the member account, see the following links:

      The regex pattern that is used to validate this parameter. The pattern can include uppercase letters, lowercase letters, digits with no spaces, and any of the following characters: =,.@-

    • iamUserAccessToBilling

      public final IAMUserAccessToBilling iamUserAccessToBilling()

      If set to ALLOW, the new linked account in the commercial Region enables IAM users to access account billing information if they have the required permissions. If set to DENY, only the root user of the new account can access account billing information. For more information, see About IAM access to the Billing and Cost Management console in the Amazon Web Services Billing and Cost Management User Guide.

      If you don't specify this parameter, the value defaults to ALLOW, and IAM users and roles with the required permissions can access billing information for the new account.

      If the service returns an enum value that is not available in the current SDK version, iamUserAccessToBilling will return IAMUserAccessToBilling.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from iamUserAccessToBillingAsString().

      Returns:
      If set to ALLOW, the new linked account in the commercial Region enables IAM users to access account billing information if they have the required permissions. If set to DENY, only the root user of the new account can access account billing information. For more information, see About IAM access to the Billing and Cost Management console in the Amazon Web Services Billing and Cost Management User Guide.

      If you don't specify this parameter, the value defaults to ALLOW, and IAM users and roles with the required permissions can access billing information for the new account.

      See Also:
    • iamUserAccessToBillingAsString

      public final String iamUserAccessToBillingAsString()

      If set to ALLOW, the new linked account in the commercial Region enables IAM users to access account billing information if they have the required permissions. If set to DENY, only the root user of the new account can access account billing information. For more information, see About IAM access to the Billing and Cost Management console in the Amazon Web Services Billing and Cost Management User Guide.

      If you don't specify this parameter, the value defaults to ALLOW, and IAM users and roles with the required permissions can access billing information for the new account.

      If the service returns an enum value that is not available in the current SDK version, iamUserAccessToBilling will return IAMUserAccessToBilling.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from iamUserAccessToBillingAsString().

      Returns:
      If set to ALLOW, the new linked account in the commercial Region enables IAM users to access account billing information if they have the required permissions. If set to DENY, only the root user of the new account can access account billing information. For more information, see About IAM access to the Billing and Cost Management console in the Amazon Web Services Billing and Cost Management User Guide.

      If you don't specify this parameter, the value defaults to ALLOW, and IAM users and roles with the required permissions can access billing information for the new account.

      See Also:
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()

      A list of tags that you want to attach to the newly created account. These tags are attached to the commercial account associated with the GovCloud account, and not to the GovCloud account itself. To add tags to the actual GovCloud account, call the TagResource operation in the GovCloud region after the new GovCloud account exists.

      For each tag in the list, you must specify both a tag key and a value. You can set the value to an empty string, but you can't set it to null. For more information about tagging, see Tagging Organizations resources in the Organizations User Guide.

      If any one of the tags is not valid or if you exceed the maximum allowed number of tags for an account, then the entire request fails and the account is not created.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      A list of tags that you want to attach to the newly created account. These tags are attached to the commercial account associated with the GovCloud account, and not to the GovCloud account itself. To add tags to the actual GovCloud account, call the TagResource operation in the GovCloud region after the new GovCloud account exists.

      For each tag in the list, you must specify both a tag key and a value. You can set the value to an empty string, but you can't set it to null. For more information about tagging, see Tagging Organizations resources in the Organizations User Guide.

      If any one of the tags is not valid or if you exceed the maximum allowed number of tags for an account, then the entire request fails and the account is not created.

    • toBuilder

      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateGovCloudAccountRequest.Builder,CreateGovCloudAccountRequest>
      Specified by:
      toBuilder in class OrganizationsRequest
      Returns:
      a builder for type T
    • builder

      public static CreateGovCloudAccountRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CreateGovCloudAccountRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.
    • sdkFieldNameToField

      public final Map<String,SdkField<?>> sdkFieldNameToField()
      Specified by:
      sdkFieldNameToField in interface SdkPojo
      Returns:
      The mapping between the field name and its corresponding field.