IAM / Client / delete_role

delete_role#

IAM.Client.delete_role(**kwargs)#

Deletes the specified role. Unlike the Amazon Web Services Management Console, when you delete a role programmatically, you must delete the items attached to the role manually, or the deletion fails. For more information, see Deleting an IAM role. Before attempting to delete a role, remove the following attached items:

  • Inline policies ( DeleteRolePolicy)

  • Attached managed policies ( DetachRolePolicy)

  • Instance profile ( RemoveRoleFromInstanceProfile)

  • Optional – Delete instance profile after detaching from role for resource clean up ( DeleteInstanceProfile)

Warning

Make sure that you do not have any Amazon EC2 instances running with the role you are about to delete. Deleting a role or instance profile that is associated with a running instance will break any applications running on the instance.

See also: AWS API Documentation

Request Syntax

response = client.delete_role(
    RoleName='string'
)
Parameters:

RoleName (string) –

[REQUIRED]

The name of the role to delete.

This parameter allows (through its regex pattern) a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-

Returns:

None

Exceptions

  • IAM.Client.exceptions.NoSuchEntityException

  • IAM.Client.exceptions.DeleteConflictException

  • IAM.Client.exceptions.LimitExceededException

  • IAM.Client.exceptions.UnmodifiableEntityException

  • IAM.Client.exceptions.ConcurrentModificationException

  • IAM.Client.exceptions.ServiceFailureException

Examples

The following command removes the role named Test-Role.

response = client.delete_role(
    RoleName='Test-Role',
)

print(response)

Expected Output:

{
    'ResponseMetadata': {
        '...': '...',
    },
}