:doc:`EC2 <../../ec2>` / Client / modify_transit_gateway_vpc_attachment

*************************************
modify_transit_gateway_vpc_attachment
*************************************



.. py:method:: EC2.Client.modify_transit_gateway_vpc_attachment(**kwargs)

  

  Modifies the specified VPC attachment.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayVpcAttachment>`_  


  **Request Syntax**
  ::

    response = client.modify_transit_gateway_vpc_attachment(
        TransitGatewayAttachmentId='string',
        AddSubnetIds=[
            'string',
        ],
        RemoveSubnetIds=[
            'string',
        ],
        Options={
            'DnsSupport': 'enable'|'disable',
            'SecurityGroupReferencingSupport': 'enable'|'disable',
            'Ipv6Support': 'enable'|'disable',
            'ApplianceModeSupport': 'enable'|'disable'
        },
        DryRun=True|False
    )
    
  :type TransitGatewayAttachmentId: string
  :param TransitGatewayAttachmentId: **[REQUIRED]** 

    The ID of the attachment.

    

  
  :type AddSubnetIds: list
  :param AddSubnetIds: 

    The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.

    

  
    - *(string) --* 

    

  :type RemoveSubnetIds: list
  :param RemoveSubnetIds: 

    The IDs of one or more subnets to remove.

    

  
    - *(string) --* 

    

  :type Options: dict
  :param Options: 

    The new VPC attachment options.

    

  
    - **DnsSupport** *(string) --* 

      Enable or disable DNS support. The default is ``enable``.

      

    
    - **SecurityGroupReferencingSupport** *(string) --* 

      Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.

       

      This option is disabled by default.

       

      For more information about security group referencing, see `Security group referencing <https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security>`__ in the *Amazon Web Services Transit Gateways Guide*.

      

    
    - **Ipv6Support** *(string) --* 

      Enable or disable IPv6 support. The default is ``enable``.

      

    
    - **ApplianceModeSupport** *(string) --* 

      Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is ``disable``.

      

    
  
  :type DryRun: boolean
  :param DryRun: 

    Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is ``DryRunOperation``. Otherwise, it is ``UnauthorizedOperation``.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'TransitGatewayVpcAttachment': {
              'TransitGatewayAttachmentId': 'string',
              'TransitGatewayId': 'string',
              'VpcId': 'string',
              'VpcOwnerId': 'string',
              'State': 'initiating'|'initiatingRequest'|'pendingAcceptance'|'rollingBack'|'pending'|'available'|'modifying'|'deleting'|'deleted'|'failed'|'rejected'|'rejecting'|'failing',
              'SubnetIds': [
                  'string',
              ],
              'CreationTime': datetime(2015, 1, 1),
              'Options': {
                  'DnsSupport': 'enable'|'disable',
                  'SecurityGroupReferencingSupport': 'enable'|'disable',
                  'Ipv6Support': 'enable'|'disable',
                  'ApplianceModeSupport': 'enable'|'disable'
              },
              'Tags': [
                  {
                      'Key': 'string',
                      'Value': 'string'
                  },
              ]
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **TransitGatewayVpcAttachment** *(dict) --* 

        Information about the modified attachment.

        
        

        - **TransitGatewayAttachmentId** *(string) --* 

          The ID of the attachment.

          
        

        - **TransitGatewayId** *(string) --* 

          The ID of the transit gateway.

          
        

        - **VpcId** *(string) --* 

          The ID of the VPC.

          
        

        - **VpcOwnerId** *(string) --* 

          The ID of the Amazon Web Services account that owns the VPC.

          
        

        - **State** *(string) --* 

          The state of the VPC attachment. Note that the ``initiating`` state has been deprecated.

          
        

        - **SubnetIds** *(list) --* 

          The IDs of the subnets.

          
          

          - *(string) --* 
      
        

        - **CreationTime** *(datetime) --* 

          The creation time.

          
        

        - **Options** *(dict) --* 

          The VPC attachment options.

          
          

          - **DnsSupport** *(string) --* 

            Indicates whether DNS support is enabled.

            
          

          - **SecurityGroupReferencingSupport** *(string) --* 

            Enables you to reference a security group across VPCs attached to a transit gateway to simplify security group management.

             

            This option is enabled by default.

             

            For more information about security group referencing, see `Security group referencing <https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security>`__ in the *Amazon Web Services Transit Gateways Guide*.

            
          

          - **Ipv6Support** *(string) --* 

            Indicates whether IPv6 support is disabled.

            
          

          - **ApplianceModeSupport** *(string) --* 

            Indicates whether appliance mode support is enabled.

            
      
        

        - **Tags** *(list) --* 

          The tags for the VPC attachment.

          
          

          - *(dict) --* 

            Describes a tag.

            
            

            - **Key** *(string) --* 

              The key of the tag.

               

              Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with ``aws:``.

              
            

            - **Value** *(string) --* 

              The value of the tag.

               

              Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

              
        
      
    
  