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': {
        '...': '...',
    },
}