def detach_policy(PolicyId=None, TargetId=None):
    """
    Detaches a policy from a target root, organizational unit, or account. If the policy being detached is a service control policy (SCP), the changes to permissions for IAM users and roles in affected accounts are immediate.
    This operation can be called only from the organization's master account.
    See also: AWS API Documentation
    
    
    :example: response = client.detach_policy(
        PolicyId='string',
        TargetId='string'
    )
    
    
    :type PolicyId: string
    :param PolicyId: [REQUIRED]
            The unique identifier (ID) of the policy you want to detach. You can get the ID from the ListPolicies or ListPoliciesForTarget operations.
            The regex pattern for a policy ID string requires 'p-' followed by from 8 to 128 lower-case letters or digits.
            

    :type TargetId: string
    :param TargetId: [REQUIRED]
            The unique identifier (ID) of the root, OU, or account from which you want to detach the policy. You can get the ID from the ListRoots , ListOrganizationalUnitsForParent , or ListAccounts operations.
            The regex pattern for a target ID string requires one of the following:
            Root: a string that begins with 'r-' followed by from 4 to 32 lower-case letters or digits.
            Account: a string that consists of exactly 12 digits.
            Organizational unit (OU): a string that begins with 'ou-' followed by from 4 to 32 lower-case letters or digits (the ID of the root that the OU is in) followed by a second '-' dash and from 8 to 32 additional lower-case letters or digits.
            

    """
    pass
