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

*************
disable_image
*************



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

  

  Sets the AMI state to ``disabled`` and removes all launch permissions from the AMI. A disabled AMI can't be used for instance launches.

   

  A disabled AMI can't be shared. If an AMI was public or previously shared, it is made private. If an AMI was shared with an Amazon Web Services account, organization, or Organizational Unit, they lose access to the disabled AMI.

   

  A disabled AMI does not appear in `DescribeImages <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html>`__ API calls by default.

   

  Only the AMI owner can disable an AMI.

   

  You can re-enable a disabled AMI using `EnableImage <https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_EnableImage.html>`__.

   

  For more information, see `Disable an AMI <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/disable-an-ami.html>`__ in the *Amazon EC2 User Guide*.

  

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


  **Request Syntax**
  ::

    response = client.disable_image(
        ImageId='string',
        DryRun=True|False
    )
    
  :type ImageId: string
  :param ImageId: **[REQUIRED]** 

    The ID of the AMI.

    

  
  :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**

    
    ::

      {
          'Return': True|False
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Return** *(boolean) --* 

        Returns ``true`` if the request succeeds; otherwise, it returns an error.

        
  