def describe_instance_attribute(DryRun=None, InstanceId=None, Attribute=None):
    """
    Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport
    See also: AWS API Documentation
    
    Examples
    This example describes the instance type of the specified instance.
    Expected Output:
    This example describes the disableApiTermination attribute of the specified instance.
    Expected Output:
    This example describes the blockDeviceMapping attribute of the specified instance.
    Expected Output:
    
    :example: response = client.describe_instance_attribute(
        DryRun=True|False,
        InstanceId='string',
        Attribute='instanceType'|'kernel'|'ramdisk'|'userData'|'disableApiTermination'|'instanceInitiatedShutdownBehavior'|'rootDeviceName'|'blockDeviceMapping'|'productCodes'|'sourceDestCheck'|'groupSet'|'ebsOptimized'|'sriovNetSupport'|'enaSupport'
    )
    
    
    :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 .

    :type InstanceId: string
    :param InstanceId: [REQUIRED]
            The ID of the instance.
            

    :type Attribute: string
    :param Attribute: [REQUIRED]
            The instance attribute.
            Note: The enaSupport attribute is not supported at this time.
            

    :rtype: dict
    :return: {
        'InstanceId': 'string',
        'InstanceType': {
            'Value': 'string'
        },
        'KernelId': {
            'Value': 'string'
        },
        'RamdiskId': {
            'Value': 'string'
        },
        'UserData': {
            'Value': 'string'
        },
        'DisableApiTermination': {
            'Value': True|False
        },
        'InstanceInitiatedShutdownBehavior': {
            'Value': 'string'
        },
        'RootDeviceName': {
            'Value': 'string'
        },
        'BlockDeviceMappings': [
            {
                'DeviceName': 'string',
                'Ebs': {
                    'VolumeId': 'string',
                    'Status': 'attaching'|'attached'|'detaching'|'detached',
                    'AttachTime': datetime(2015, 1, 1),
                    'DeleteOnTermination': True|False
                }
            },
        ],
        'ProductCodes': [
            {
                'ProductCodeId': 'string',
                'ProductCodeType': 'devpay'|'marketplace'
            },
        ],
        'EbsOptimized': {
            'Value': True|False
        },
        'SriovNetSupport': {
            'Value': 'string'
        },
        'EnaSupport': {
            'Value': True|False
        },
        'SourceDestCheck': {
            'Value': True|False
        },
        'Groups': [
            {
                'GroupName': 'string',
                'GroupId': 'string'
            },
        ]
    }
    
    
    """
    pass
