%global _empty_manifest_terminate_build 0
Name: python-mypy-boto3-iam
Version: 1.26.97
Release: 1
Summary: Type annotations for boto3.IAM 1.26.97 service generated with mypy-boto3-builder 7.13.0
License: MIT License
URL: https://github.com/youtype/mypy_boto3_builder
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/9c/70/e24c2ad650c9e9b96cdc147ad5e335c4122302bee08c44afef9e9b5a9edd/mypy-boto3-iam-1.26.97.tar.gz
BuildArch: noarch
Requires: python3-typing-extensions
%description
# mypy-boto3-iam
[![PyPI - mypy-boto3-iam](https://img.shields.io/pypi/v/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-iam?color=blue)](https://pypistats.org/packages/mypy-boto3-iam)
![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
Type annotations for
[boto3.IAM 1.26.97](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iam.html#IAM)
service compatible with [VSCode](https://code.visualstudio.com/),
[PyCharm](https://www.jetbrains.com/pycharm/),
[Emacs](https://www.gnu.org/software/emacs/),
[Sublime Text](https://www.sublimetext.com/),
[mypy](https://github.com/python/mypy),
[pyright](https://github.com/microsoft/pyright) and other tools.
Generated by
[mypy-boto3-builder 7.13.0](https://github.com/youtype/mypy_boto3_builder).
More information can be found on
[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
[mypy-boto3-iam docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/).
See how it helps to find and fix potential bugs:
![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
- [mypy-boto3-iam](#mypy-boto3-iam)
- [How to install](#how-to-install)
- [VSCode extension](#vscode-extension)
- [From PyPI with pip](#from-pypi-with-pip)
- [How to uninstall](#how-to-uninstall)
- [Usage](#usage)
- [VSCode](#vscode)
- [PyCharm](#pycharm)
- [Emacs](#emacs)
- [Sublime Text](#sublime-text)
- [Other IDEs](#other-ides)
- [mypy](#mypy)
- [pyright](#pyright)
- [Explicit type annotations](#explicit-type-annotations)
- [Client annotations](#client-annotations)
- [Paginators annotations](#paginators-annotations)
- [Waiters annotations](#waiters-annotations)
- [Service Resource annotations](#service-resource-annotations)
- [Other resources annotations](#other-resources-annotations)
- [Collections annotations](#collections-annotations)
- [Literals](#literals)
- [Typed dictionaries](#typed-dictionaries)
- [How it works](#how-it-works)
- [What's new](#what's-new)
- [Implemented features](#implemented-features)
- [Latest changes](#latest-changes)
- [Versioning](#versioning)
- [Thank you](#thank-you)
- [Documentation](#documentation)
- [Support and contributing](#support-and-contributing)
## How to install
### VSCode extension
Add
[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
extension to your VSCode and run `AWS boto3: Quick Start` command.
Click `Modify` and select `boto3 common` and `IAM`.
### From PyPI with pip
Install `boto3-stubs` for `IAM` service.
```bash
# install with boto3 type annotations
python -m pip install 'boto3-stubs[iam]'
# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[iam]'
# standalone installation
python -m pip install mypy-boto3-iam
```
## How to uninstall
```bash
python -m pip uninstall -y mypy-boto3-iam
```
## Usage
### VSCode
- Install
[Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
- Install
[Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
- Set `Pylance` as your Python Language Server
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Both type checking and code completion should now work. No explicit type
annotations required, write your `boto3` code as usual.
### PyCharm
Install `boto3-stubs-lite[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs-lite[iam]'`
```
Both type checking and code completion should now work. Explicit type
annotations **are required**.
Use `boto3-stubs` package instead for implicit type discovery.
### Emacs
- Install `boto3-stubs` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [use-package](https://github.com/jwiegley/use-package),
[lsp](https://github.com/emacs-lsp/lsp-mode/),
[company](https://github.com/company-mode/company-mode) and
[flycheck](https://github.com/flycheck/flycheck) packages
- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
```elisp
(use-package lsp-pyright
:ensure t
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))) ; or lsp-deferred
:init (when (executable-find "python3")
(setq lsp-pyright-python-executable-cmd "python3"))
)
```
- Make sure emacs uses the environment where you have installed `boto3-stubs`
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Sublime Text
- Install `boto3-stubs[iam]` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Other IDEs
Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
should work.
### mypy
- Install `mypy`: `python -m pip install mypy`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'`
```
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### pyright
- Install `pyright`: `npm i -g pyright`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Optionally, you can install `boto3-stubs` to `typings` folder.
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
## Explicit type annotations
### Client annotations
`IAMClient` provides annotations for `boto3.client("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
client: IAMClient = Session().client("iam")
# now client usage is checked by mypy and IDE should provide code completion
```
### Paginators annotations
`mypy_boto3_iam.paginator` module contains type annotations for all paginators.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.paginator import (
GetAccountAuthorizationDetailsPaginator,
GetGroupPaginator,
ListAccessKeysPaginator,
ListAccountAliasesPaginator,
ListAttachedGroupPoliciesPaginator,
ListAttachedRolePoliciesPaginator,
ListAttachedUserPoliciesPaginator,
ListEntitiesForPolicyPaginator,
ListGroupPoliciesPaginator,
ListGroupsPaginator,
ListGroupsForUserPaginator,
ListInstanceProfilesPaginator,
ListInstanceProfilesForRolePaginator,
ListMFADevicesPaginator,
ListPoliciesPaginator,
ListPolicyVersionsPaginator,
ListRolePoliciesPaginator,
ListRolesPaginator,
ListSSHPublicKeysPaginator,
ListServerCertificatesPaginator,
ListSigningCertificatesPaginator,
ListUserPoliciesPaginator,
ListUserTagsPaginator,
ListUsersPaginator,
ListVirtualMFADevicesPaginator,
SimulateCustomPolicyPaginator,
SimulatePrincipalPolicyPaginator,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
get_account_authorization_details_paginator: GetAccountAuthorizationDetailsPaginator = (
client.get_paginator("get_account_authorization_details")
)
get_group_paginator: GetGroupPaginator = client.get_paginator("get_group")
list_access_keys_paginator: ListAccessKeysPaginator = client.get_paginator("list_access_keys")
list_account_aliases_paginator: ListAccountAliasesPaginator = client.get_paginator(
"list_account_aliases"
)
list_attached_group_policies_paginator: ListAttachedGroupPoliciesPaginator = client.get_paginator(
"list_attached_group_policies"
)
list_attached_role_policies_paginator: ListAttachedRolePoliciesPaginator = client.get_paginator(
"list_attached_role_policies"
)
list_attached_user_policies_paginator: ListAttachedUserPoliciesPaginator = client.get_paginator(
"list_attached_user_policies"
)
list_entities_for_policy_paginator: ListEntitiesForPolicyPaginator = client.get_paginator(
"list_entities_for_policy"
)
list_group_policies_paginator: ListGroupPoliciesPaginator = client.get_paginator(
"list_group_policies"
)
list_groups_paginator: ListGroupsPaginator = client.get_paginator("list_groups")
list_groups_for_user_paginator: ListGroupsForUserPaginator = client.get_paginator(
"list_groups_for_user"
)
list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator(
"list_instance_profiles"
)
list_instance_profiles_for_role_paginator: ListInstanceProfilesForRolePaginator = (
client.get_paginator("list_instance_profiles_for_role")
)
list_mfa_devices_paginator: ListMFADevicesPaginator = client.get_paginator("list_mfa_devices")
list_policies_paginator: ListPoliciesPaginator = client.get_paginator("list_policies")
list_policy_versions_paginator: ListPolicyVersionsPaginator = client.get_paginator(
"list_policy_versions"
)
list_role_policies_paginator: ListRolePoliciesPaginator = client.get_paginator("list_role_policies")
list_roles_paginator: ListRolesPaginator = client.get_paginator("list_roles")
list_ssh_public_keys_paginator: ListSSHPublicKeysPaginator = client.get_paginator(
"list_ssh_public_keys"
)
list_server_certificates_paginator: ListServerCertificatesPaginator = client.get_paginator(
"list_server_certificates"
)
list_signing_certificates_paginator: ListSigningCertificatesPaginator = client.get_paginator(
"list_signing_certificates"
)
list_user_policies_paginator: ListUserPoliciesPaginator = client.get_paginator("list_user_policies")
list_user_tags_paginator: ListUserTagsPaginator = client.get_paginator("list_user_tags")
list_users_paginator: ListUsersPaginator = client.get_paginator("list_users")
list_virtual_mfa_devices_paginator: ListVirtualMFADevicesPaginator = client.get_paginator(
"list_virtual_mfa_devices"
)
simulate_custom_policy_paginator: SimulateCustomPolicyPaginator = client.get_paginator(
"simulate_custom_policy"
)
simulate_principal_policy_paginator: SimulatePrincipalPolicyPaginator = client.get_paginator(
"simulate_principal_policy"
)
```
### Waiters annotations
`mypy_boto3_iam.waiter` module contains type annotations for all waiters.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.waiter import (
InstanceProfileExistsWaiter,
PolicyExistsWaiter,
RoleExistsWaiter,
UserExistsWaiter,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
instance_profile_exists_waiter: InstanceProfileExistsWaiter = client.get_waiter(
"instance_profile_exists"
)
policy_exists_waiter: PolicyExistsWaiter = client.get_waiter("policy_exists")
role_exists_waiter: RoleExistsWaiter = client.get_waiter("role_exists")
user_exists_waiter: UserExistsWaiter = client.get_waiter("user_exists")
```
### Service Resource annotations
`IAMServiceResource` provides annotations for `boto3.resource("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
resource: IAMServiceResource = Session().resource("iam")
# now resource usage is checked by mypy and IDE should provide code completion
```
### Other resources annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
resources.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
AccessKey,
AccessKeyPair,
AccountPasswordPolicy,
AccountSummary,
AssumeRolePolicy,
CurrentUser,
Group,
GroupPolicy,
InstanceProfile,
LoginProfile,
MfaDevice,
Policy,
PolicyVersion,
Role,
RolePolicy,
SamlProvider,
ServerCertificate,
SigningCertificate,
User,
UserPolicy,
VirtualMfaDevice,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
my_access_key: AccessKey = resource.AccessKey(...)
my_access_key_pair: AccessKeyPair = resource.AccessKeyPair(...)
my_account_password_policy: AccountPasswordPolicy = resource.AccountPasswordPolicy(...)
my_account_summary: AccountSummary = resource.AccountSummary(...)
my_assume_role_policy: AssumeRolePolicy = resource.AssumeRolePolicy(...)
my_current_user: CurrentUser = resource.CurrentUser(...)
my_group: Group = resource.Group(...)
my_group_policy: GroupPolicy = resource.GroupPolicy(...)
my_instance_profile: InstanceProfile = resource.InstanceProfile(...)
my_login_profile: LoginProfile = resource.LoginProfile(...)
my_mfa_device: MfaDevice = resource.MfaDevice(...)
my_policy: Policy = resource.Policy(...)
my_policy_version: PolicyVersion = resource.PolicyVersion(...)
my_role: Role = resource.Role(...)
my_role_policy: RolePolicy = resource.RolePolicy(...)
my_saml_provider: SamlProvider = resource.SamlProvider(...)
my_server_certificate: ServerCertificate = resource.ServerCertificate(...)
my_signing_certificate: SigningCertificate = resource.SigningCertificate(...)
my_user: User = resource.User(...)
my_user_policy: UserPolicy = resource.UserPolicy(...)
my_virtual_mfa_device: VirtualMfaDevice = resource.VirtualMfaDevice(...)
```
### Collections annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
`IAMServiceResource` collections.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
ServiceResourceGroupsCollection,
ServiceResourceInstanceProfilesCollection,
ServiceResourcePoliciesCollection,
ServiceResourceRolesCollection,
ServiceResourceSamlProvidersCollection,
ServiceResourceServerCertificatesCollection,
ServiceResourceUsersCollection,
ServiceResourceVirtualMfaDevicesCollection,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
groups: iam_resources.ServiceResourceGroupsCollection = resource.groups
instance_profiles: iam_resources.ServiceResourceInstanceProfilesCollection = (
resource.instance_profiles
)
policies: iam_resources.ServiceResourcePoliciesCollection = resource.policies
roles: iam_resources.ServiceResourceRolesCollection = resource.roles
saml_providers: iam_resources.ServiceResourceSamlProvidersCollection = resource.saml_providers
server_certificates: iam_resources.ServiceResourceServerCertificatesCollection = (
resource.server_certificates
)
users: iam_resources.ServiceResourceUsersCollection = resource.users
virtual_mfa_devices: iam_resources.ServiceResourceVirtualMfaDevicesCollection = (
resource.virtual_mfa_devices
)
```
### Literals
`mypy_boto3_iam.literals` module contains literals extracted from shapes that
can be used in user code for type checking.
```python
from mypy_boto3_iam.literals import (
AccessAdvisorUsageGranularityTypeType,
ContextKeyTypeEnumType,
DeletionTaskStatusTypeType,
EntityTypeType,
GetAccountAuthorizationDetailsPaginatorName,
GetGroupPaginatorName,
InstanceProfileExistsWaiterName,
ListAccessKeysPaginatorName,
ListAccountAliasesPaginatorName,
ListAttachedGroupPoliciesPaginatorName,
ListAttachedRolePoliciesPaginatorName,
ListAttachedUserPoliciesPaginatorName,
ListEntitiesForPolicyPaginatorName,
ListGroupPoliciesPaginatorName,
ListGroupsForUserPaginatorName,
ListGroupsPaginatorName,
ListInstanceProfilesForRolePaginatorName,
ListInstanceProfilesPaginatorName,
ListMFADevicesPaginatorName,
ListPoliciesPaginatorName,
ListPolicyVersionsPaginatorName,
ListRolePoliciesPaginatorName,
ListRolesPaginatorName,
ListSSHPublicKeysPaginatorName,
ListServerCertificatesPaginatorName,
ListSigningCertificatesPaginatorName,
ListUserPoliciesPaginatorName,
ListUserTagsPaginatorName,
ListUsersPaginatorName,
ListVirtualMFADevicesPaginatorName,
PermissionsBoundaryAttachmentTypeType,
PolicyEvaluationDecisionTypeType,
PolicyExistsWaiterName,
PolicySourceTypeType,
PolicyUsageTypeType,
ReportFormatTypeType,
ReportStateTypeType,
RoleExistsWaiterName,
SimulateCustomPolicyPaginatorName,
SimulatePrincipalPolicyPaginatorName,
UserExistsWaiterName,
assignmentStatusTypeType,
encodingTypeType,
globalEndpointTokenVersionType,
jobStatusTypeType,
policyOwnerEntityTypeType,
policyScopeTypeType,
policyTypeType,
sortKeyTypeType,
statusTypeType,
summaryKeyTypeType,
IAMServiceName,
ServiceName,
ResourceServiceName,
PaginatorName,
WaiterName,
)
def check_value(value: AccessAdvisorUsageGranularityTypeType) -> bool:
...
```
### Typed dictionaries
`mypy_boto3_iam.type_defs` module contains structures and shapes assembled to
typed dictionaries for additional type checking.
```python
from mypy_boto3_iam.type_defs import (
AccessDetailTypeDef,
AccessKeyLastUsedTypeDef,
AccessKeyMetadataTypeDef,
AccessKeyTypeDef,
AddClientIDToOpenIDConnectProviderRequestRequestTypeDef,
AddRoleToInstanceProfileRequestInstanceProfileAddRoleTypeDef,
AddRoleToInstanceProfileRequestRequestTypeDef,
AddUserToGroupRequestGroupAddUserTypeDef,
AddUserToGroupRequestRequestTypeDef,
AddUserToGroupRequestUserAddGroupTypeDef,
AttachGroupPolicyRequestGroupAttachPolicyTypeDef,
AttachGroupPolicyRequestPolicyAttachGroupTypeDef,
AttachGroupPolicyRequestRequestTypeDef,
AttachRolePolicyRequestPolicyAttachRoleTypeDef,
AttachRolePolicyRequestRequestTypeDef,
AttachRolePolicyRequestRoleAttachPolicyTypeDef,
AttachUserPolicyRequestPolicyAttachUserTypeDef,
AttachUserPolicyRequestRequestTypeDef,
AttachUserPolicyRequestUserAttachPolicyTypeDef,
ResponseMetadataTypeDef,
AttachedPermissionsBoundaryTypeDef,
AttachedPolicyTypeDef,
ChangePasswordRequestRequestTypeDef,
ChangePasswordRequestServiceResourceChangePasswordTypeDef,
ContextEntryTypeDef,
CreateAccessKeyRequestRequestTypeDef,
CreateAccountAliasRequestRequestTypeDef,
CreateAccountAliasRequestServiceResourceCreateAccountAliasTypeDef,
CreateGroupRequestGroupCreateTypeDef,
CreateGroupRequestRequestTypeDef,
CreateGroupRequestServiceResourceCreateGroupTypeDef,
GroupTypeDef,
TagTypeDef,
CreateLoginProfileRequestLoginProfileCreateTypeDef,
CreateLoginProfileRequestRequestTypeDef,
CreateLoginProfileRequestUserCreateLoginProfileTypeDef,
LoginProfileTypeDef,
CreatePolicyVersionRequestPolicyCreateVersionTypeDef,
CreatePolicyVersionRequestRequestTypeDef,
PolicyVersionTypeDef,
CreateServiceLinkedRoleRequestRequestTypeDef,
CreateServiceSpecificCredentialRequestRequestTypeDef,
ServiceSpecificCredentialTypeDef,
DeactivateMFADeviceRequestRequestTypeDef,
DeleteAccessKeyRequestRequestTypeDef,
DeleteAccountAliasRequestRequestTypeDef,
DeleteGroupPolicyRequestRequestTypeDef,
DeleteGroupRequestRequestTypeDef,
DeleteInstanceProfileRequestRequestTypeDef,
DeleteLoginProfileRequestRequestTypeDef,
DeleteOpenIDConnectProviderRequestRequestTypeDef,
DeletePolicyRequestRequestTypeDef,
DeletePolicyVersionRequestRequestTypeDef,
DeleteRolePermissionsBoundaryRequestRequestTypeDef,
DeleteRolePolicyRequestRequestTypeDef,
DeleteRoleRequestRequestTypeDef,
DeleteSAMLProviderRequestRequestTypeDef,
DeleteSSHPublicKeyRequestRequestTypeDef,
DeleteServerCertificateRequestRequestTypeDef,
DeleteServiceLinkedRoleRequestRequestTypeDef,
DeleteServiceSpecificCredentialRequestRequestTypeDef,
DeleteSigningCertificateRequestRequestTypeDef,
DeleteUserPermissionsBoundaryRequestRequestTypeDef,
DeleteUserPolicyRequestRequestTypeDef,
DeleteUserRequestRequestTypeDef,
DeleteVirtualMFADeviceRequestRequestTypeDef,
RoleUsageTypeTypeDef,
DetachGroupPolicyRequestGroupDetachPolicyTypeDef,
DetachGroupPolicyRequestPolicyDetachGroupTypeDef,
DetachGroupPolicyRequestRequestTypeDef,
DetachRolePolicyRequestPolicyDetachRoleTypeDef,
DetachRolePolicyRequestRequestTypeDef,
DetachRolePolicyRequestRoleDetachPolicyTypeDef,
DetachUserPolicyRequestPolicyDetachUserTypeDef,
DetachUserPolicyRequestRequestTypeDef,
DetachUserPolicyRequestUserDetachPolicyTypeDef,
EnableMFADeviceRequestMfaDeviceAssociateTypeDef,
EnableMFADeviceRequestRequestTypeDef,
EnableMFADeviceRequestUserEnableMfaTypeDef,
EntityInfoTypeDef,
ErrorDetailsTypeDef,
OrganizationsDecisionDetailTypeDef,
PermissionsBoundaryDecisionDetailTypeDef,
GenerateOrganizationsAccessReportRequestRequestTypeDef,
GenerateServiceLastAccessedDetailsRequestRequestTypeDef,
GetAccessKeyLastUsedRequestRequestTypeDef,
PaginatorConfigTypeDef,
GetAccountAuthorizationDetailsRequestRequestTypeDef,
PasswordPolicyTypeDef,
GetContextKeysForCustomPolicyRequestRequestTypeDef,
GetContextKeysForPrincipalPolicyRequestRequestTypeDef,
GetGroupPolicyRequestRequestTypeDef,
GetGroupRequestRequestTypeDef,
WaiterConfigTypeDef,
GetInstanceProfileRequestRequestTypeDef,
GetLoginProfileRequestRequestTypeDef,
GetOpenIDConnectProviderRequestRequestTypeDef,
GetOrganizationsAccessReportRequestRequestTypeDef,
GetPolicyRequestRequestTypeDef,
GetPolicyVersionRequestRequestTypeDef,
GetRolePolicyRequestRequestTypeDef,
GetRoleRequestRequestTypeDef,
GetSAMLProviderRequestRequestTypeDef,
GetSSHPublicKeyRequestRequestTypeDef,
SSHPublicKeyTypeDef,
GetServerCertificateRequestRequestTypeDef,
GetServiceLastAccessedDetailsRequestRequestTypeDef,
GetServiceLastAccessedDetailsWithEntitiesRequestRequestTypeDef,
GetServiceLinkedRoleDeletionStatusRequestRequestTypeDef,
GetUserPolicyRequestRequestTypeDef,
GetUserRequestRequestTypeDef,
PolicyDetailTypeDef,
GroupPolicyRequestTypeDef,
ListAccessKeysRequestRequestTypeDef,
ListAccountAliasesRequestRequestTypeDef,
ListAttachedGroupPoliciesRequestRequestTypeDef,
ListAttachedRolePoliciesRequestRequestTypeDef,
ListAttachedUserPoliciesRequestRequestTypeDef,
ListEntitiesForPolicyRequestRequestTypeDef,
PolicyGroupTypeDef,
PolicyRoleTypeDef,
PolicyUserTypeDef,
ListGroupPoliciesRequestRequestTypeDef,
ListGroupsForUserRequestRequestTypeDef,
ListGroupsRequestRequestTypeDef,
ListInstanceProfileTagsRequestRequestTypeDef,
ListInstanceProfilesForRoleRequestRequestTypeDef,
ListInstanceProfilesRequestRequestTypeDef,
ListMFADeviceTagsRequestRequestTypeDef,
ListMFADevicesRequestRequestTypeDef,
MFADeviceTypeDef,
ListOpenIDConnectProviderTagsRequestRequestTypeDef,
OpenIDConnectProviderListEntryTypeDef,
PolicyGrantingServiceAccessTypeDef,
ListPoliciesGrantingServiceAccessRequestRequestTypeDef,
ListPoliciesRequestRequestTypeDef,
ListPolicyTagsRequestRequestTypeDef,
ListPolicyVersionsRequestRequestTypeDef,
ListRolePoliciesRequestRequestTypeDef,
ListRoleTagsRequestRequestTypeDef,
ListRolesRequestRequestTypeDef,
ListSAMLProviderTagsRequestRequestTypeDef,
SAMLProviderListEntryTypeDef,
ListSSHPublicKeysRequestRequestTypeDef,
SSHPublicKeyMetadataTypeDef,
ListServerCertificateTagsRequestRequestTypeDef,
ListServerCertificatesRequestRequestTypeDef,
ServerCertificateMetadataTypeDef,
ListServiceSpecificCredentialsRequestRequestTypeDef,
ServiceSpecificCredentialMetadataTypeDef,
ListSigningCertificatesRequestRequestTypeDef,
SigningCertificateTypeDef,
ListUserPoliciesRequestRequestTypeDef,
ListUserTagsRequestRequestTypeDef,
ListUsersRequestRequestTypeDef,
ListVirtualMFADevicesRequestRequestTypeDef,
PositionTypeDef,
PutGroupPolicyRequestGroupCreatePolicyTypeDef,
PutGroupPolicyRequestGroupPolicyPutTypeDef,
PutGroupPolicyRequestRequestTypeDef,
PutRolePermissionsBoundaryRequestRequestTypeDef,
PutRolePolicyRequestRequestTypeDef,
PutRolePolicyRequestRolePolicyPutTypeDef,
PutUserPermissionsBoundaryRequestRequestTypeDef,
PutUserPolicyRequestRequestTypeDef,
PutUserPolicyRequestUserCreatePolicyTypeDef,
PutUserPolicyRequestUserPolicyPutTypeDef,
RemoveClientIDFromOpenIDConnectProviderRequestRequestTypeDef,
RemoveRoleFromInstanceProfileRequestInstanceProfileRemoveRoleTypeDef,
RemoveRoleFromInstanceProfileRequestRequestTypeDef,
RemoveUserFromGroupRequestGroupRemoveUserTypeDef,
RemoveUserFromGroupRequestRequestTypeDef,
RemoveUserFromGroupRequestUserRemoveGroupTypeDef,
ResetServiceSpecificCredentialRequestRequestTypeDef,
ResyncMFADeviceRequestMfaDeviceResyncTypeDef,
ResyncMFADeviceRequestRequestTypeDef,
RoleLastUsedTypeDef,
RolePolicyRequestTypeDef,
TrackedActionLastAccessedTypeDef,
ServiceResourceAccessKeyPairRequestTypeDef,
ServiceResourceAccessKeyRequestTypeDef,
ServiceResourceAssumeRolePolicyRequestTypeDef,
ServiceResourceGroupPolicyRequestTypeDef,
ServiceResourceGroupRequestTypeDef,
ServiceResourceInstanceProfileRequestTypeDef,
ServiceResourceLoginProfileRequestTypeDef,
ServiceResourceMfaDeviceRequestTypeDef,
ServiceResourcePolicyRequestTypeDef,
ServiceResourcePolicyVersionRequestTypeDef,
ServiceResourceRolePolicyRequestTypeDef,
ServiceResourceRoleRequestTypeDef,
ServiceResourceSamlProviderRequestTypeDef,
ServiceResourceServerCertificateRequestTypeDef,
ServiceResourceSigningCertificateRequestTypeDef,
ServiceResourceUserPolicyRequestTypeDef,
ServiceResourceUserRequestTypeDef,
ServiceResourceVirtualMfaDeviceRequestTypeDef,
SetDefaultPolicyVersionRequestRequestTypeDef,
SetSecurityTokenServicePreferencesRequestRequestTypeDef,
UntagInstanceProfileRequestRequestTypeDef,
UntagMFADeviceRequestRequestTypeDef,
UntagOpenIDConnectProviderRequestRequestTypeDef,
UntagPolicyRequestRequestTypeDef,
UntagRoleRequestRequestTypeDef,
UntagSAMLProviderRequestRequestTypeDef,
UntagServerCertificateRequestRequestTypeDef,
UntagUserRequestRequestTypeDef,
UpdateAccessKeyRequestAccessKeyActivateTypeDef,
UpdateAccessKeyRequestAccessKeyDeactivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairActivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairDeactivateTypeDef,
UpdateAccessKeyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestAccountPasswordPolicyUpdateTypeDef,
UpdateAccountPasswordPolicyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestServiceResourceCreateAccountPasswordPolicyTypeDef,
UpdateAssumeRolePolicyRequestAssumeRolePolicyUpdateTypeDef,
UpdateAssumeRolePolicyRequestRequestTypeDef,
UpdateGroupRequestGroupUpdateTypeDef,
UpdateGroupRequestRequestTypeDef,
UpdateLoginProfileRequestLoginProfileUpdateTypeDef,
UpdateLoginProfileRequestRequestTypeDef,
UpdateOpenIDConnectProviderThumbprintRequestRequestTypeDef,
UpdateRoleDescriptionRequestRequestTypeDef,
UpdateRoleRequestRequestTypeDef,
UpdateSAMLProviderRequestRequestTypeDef,
UpdateSAMLProviderRequestSamlProviderUpdateTypeDef,
UpdateSSHPublicKeyRequestRequestTypeDef,
UpdateServerCertificateRequestRequestTypeDef,
UpdateServerCertificateRequestServerCertificateUpdateTypeDef,
UpdateServiceSpecificCredentialRequestRequestTypeDef,
UpdateSigningCertificateRequestRequestTypeDef,
UpdateSigningCertificateRequestSigningCertificateActivateTypeDef,
UpdateSigningCertificateRequestSigningCertificateDeactivateTypeDef,
UpdateUserRequestRequestTypeDef,
UpdateUserRequestUserUpdateTypeDef,
UploadSSHPublicKeyRequestRequestTypeDef,
UploadSigningCertificateRequestRequestTypeDef,
UploadSigningCertificateRequestServiceResourceCreateSigningCertificateTypeDef,
UserAccessKeyRequestTypeDef,
UserMfaDeviceRequestTypeDef,
UserPolicyRequestTypeDef,
UserSigningCertificateRequestTypeDef,
AttachedPermissionsBoundaryResponseMetadataTypeDef,
CreateAccessKeyResponseTypeDef,
DeleteServiceLinkedRoleResponseTypeDef,
EmptyResponseMetadataTypeDef,
GenerateCredentialReportResponseTypeDef,
GenerateOrganizationsAccessReportResponseTypeDef,
GenerateServiceLastAccessedDetailsResponseTypeDef,
GetAccessKeyLastUsedResponseTypeDef,
GetAccountSummaryResponseTypeDef,
GetContextKeysForPolicyResponseTypeDef,
GetCredentialReportResponseTypeDef,
GetGroupPolicyResponseTypeDef,
GetRolePolicyResponseTypeDef,
GetUserPolicyResponseTypeDef,
ListAccessKeysResponseTypeDef,
ListAccountAliasesResponseTypeDef,
ListGroupPoliciesResponseTypeDef,
ListRolePoliciesResponseTypeDef,
ListUserPoliciesResponseTypeDef,
RoleLastUsedResponseMetadataTypeDef,
ServerCertificateMetadataResponseMetadataTypeDef,
UpdateSAMLProviderResponseTypeDef,
ListAttachedGroupPoliciesResponseTypeDef,
ListAttachedRolePoliciesResponseTypeDef,
ListAttachedUserPoliciesResponseTypeDef,
SimulateCustomPolicyRequestRequestTypeDef,
SimulatePrincipalPolicyRequestRequestTypeDef,
CreateGroupResponseTypeDef,
ListGroupsForUserResponseTypeDef,
ListGroupsResponseTypeDef,
CreateInstanceProfileRequestRequestTypeDef,
CreateInstanceProfileRequestServiceResourceCreateInstanceProfileTypeDef,
CreateOpenIDConnectProviderRequestRequestTypeDef,
CreateOpenIDConnectProviderResponseTypeDef,
CreatePolicyRequestRequestTypeDef,
CreatePolicyRequestServiceResourceCreatePolicyTypeDef,
CreateRoleRequestRequestTypeDef,
CreateRoleRequestServiceResourceCreateRoleTypeDef,
CreateSAMLProviderRequestRequestTypeDef,
CreateSAMLProviderRequestServiceResourceCreateSamlProviderTypeDef,
CreateSAMLProviderResponseTypeDef,
CreateUserRequestRequestTypeDef,
CreateUserRequestServiceResourceCreateUserTypeDef,
CreateUserRequestUserCreateTypeDef,
CreateVirtualMFADeviceRequestRequestTypeDef,
CreateVirtualMFADeviceRequestServiceResourceCreateVirtualMfaDeviceTypeDef,
GetOpenIDConnectProviderResponseTypeDef,
GetSAMLProviderResponseTypeDef,
ListInstanceProfileTagsResponseTypeDef,
ListMFADeviceTagsResponseTypeDef,
ListOpenIDConnectProviderTagsResponseTypeDef,
ListPolicyTagsResponseTypeDef,
ListRoleTagsResponseTypeDef,
ListSAMLProviderTagsResponseTypeDef,
ListServerCertificateTagsResponseTypeDef,
ListUserTagsResponseTypeDef,
PolicyTypeDef,
TagInstanceProfileRequestRequestTypeDef,
TagMFADeviceRequestRequestTypeDef,
TagOpenIDConnectProviderRequestRequestTypeDef,
TagPolicyRequestRequestTypeDef,
TagRoleRequestRequestTypeDef,
TagSAMLProviderRequestRequestTypeDef,
TagServerCertificateRequestRequestTypeDef,
TagUserRequestRequestTypeDef,
UploadServerCertificateRequestRequestTypeDef,
UploadServerCertificateRequestServiceResourceCreateServerCertificateTypeDef,
UserResponseMetadataTypeDef,
UserTypeDef,
CreateLoginProfileResponseTypeDef,
GetLoginProfileResponseTypeDef,
CreatePolicyVersionResponseTypeDef,
GetPolicyVersionResponseTypeDef,
ListPolicyVersionsResponseTypeDef,
ManagedPolicyDetailTypeDef,
CreateServiceSpecificCredentialResponseTypeDef,
ResetServiceSpecificCredentialResponseTypeDef,
DeletionTaskFailureReasonTypeTypeDef,
EntityDetailsTypeDef,
GetOrganizationsAccessReportResponseTypeDef,
GetAccountAuthorizationDetailsRequestGetAccountAuthorizationDetailsPaginateTypeDef,
GetGroupRequestGetGroupPaginateTypeDef,
ListAccessKeysRequestListAccessKeysPaginateTypeDef,
ListAccountAliasesRequestListAccountAliasesPaginateTypeDef,
ListAttachedGroupPoliciesRequestListAttachedGroupPoliciesPaginateTypeDef,
ListAttachedRolePoliciesRequestListAttachedRolePoliciesPaginateTypeDef,
ListAttachedUserPoliciesRequestListAttachedUserPoliciesPaginateTypeDef,
ListEntitiesForPolicyRequestListEntitiesForPolicyPaginateTypeDef,
ListGroupPoliciesRequestListGroupPoliciesPaginateTypeDef,
ListGroupsForUserRequestListGroupsForUserPaginateTypeDef,
ListGroupsRequestListGroupsPaginateTypeDef,
ListInstanceProfilesForRoleRequestListInstanceProfilesForRolePaginateTypeDef,
ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef,
ListMFADevicesRequestListMFADevicesPaginateTypeDef,
ListPoliciesRequestListPoliciesPaginateTypeDef,
ListPolicyVersionsRequestListPolicyVersionsPaginateTypeDef,
ListRolePoliciesRequestListRolePoliciesPaginateTypeDef,
ListRolesRequestListRolesPaginateTypeDef,
ListSSHPublicKeysRequestListSSHPublicKeysPaginateTypeDef,
ListServerCertificatesRequestListServerCertificatesPaginateTypeDef,
ListSigningCertificatesRequestListSigningCertificatesPaginateTypeDef,
ListUserPoliciesRequestListUserPoliciesPaginateTypeDef,
ListUserTagsRequestListUserTagsPaginateTypeDef,
ListUsersRequestListUsersPaginateTypeDef,
ListVirtualMFADevicesRequestListVirtualMFADevicesPaginateTypeDef,
SimulateCustomPolicyRequestSimulateCustomPolicyPaginateTypeDef,
SimulatePrincipalPolicyRequestSimulatePrincipalPolicyPaginateTypeDef,
GetAccountPasswordPolicyResponseTypeDef,
GetInstanceProfileRequestInstanceProfileExistsWaitTypeDef,
GetPolicyRequestPolicyExistsWaitTypeDef,
GetRoleRequestRoleExistsWaitTypeDef,
GetUserRequestUserExistsWaitTypeDef,
GetSSHPublicKeyResponseTypeDef,
UploadSSHPublicKeyResponseTypeDef,
GroupDetailTypeDef,
UserDetailTypeDef,
ListEntitiesForPolicyResponseTypeDef,
ListMFADevicesResponseTypeDef,
ListOpenIDConnectProvidersResponseTypeDef,
ListPoliciesGrantingServiceAccessEntryTypeDef,
ListSAMLProvidersResponseTypeDef,
ListSSHPublicKeysResponseTypeDef,
ListServerCertificatesResponseTypeDef,
ServerCertificateTypeDef,
UploadServerCertificateResponseTypeDef,
ListServiceSpecificCredentialsResponseTypeDef,
ListSigningCertificatesResponseTypeDef,
UploadSigningCertificateResponseTypeDef,
StatementTypeDef,
RoleTypeDef,
ServiceLastAccessedTypeDef,
CreatePolicyResponseTypeDef,
GetPolicyResponseTypeDef,
ListPoliciesResponseTypeDef,
CreateUserResponseTypeDef,
GetGroupResponseTypeDef,
GetUserResponseTypeDef,
ListUsersResponseTypeDef,
VirtualMFADeviceTypeDef,
GetServiceLinkedRoleDeletionStatusResponseTypeDef,
GetServiceLastAccessedDetailsWithEntitiesResponseTypeDef,
ListPoliciesGrantingServiceAccessResponseTypeDef,
GetServerCertificateResponseTypeDef,
ResourceSpecificResultTypeDef,
CreateRoleResponseTypeDef,
CreateServiceLinkedRoleResponseTypeDef,
GetRoleResponseTypeDef,
InstanceProfileTypeDef,
ListRolesResponseTypeDef,
UpdateRoleDescriptionResponseTypeDef,
GetServiceLastAccessedDetailsResponseTypeDef,
CreateVirtualMFADeviceResponseTypeDef,
ListVirtualMFADevicesResponseTypeDef,
EvaluationResultTypeDef,
CreateInstanceProfileResponseTypeDef,
GetInstanceProfileResponseTypeDef,
ListInstanceProfilesForRoleResponseTypeDef,
ListInstanceProfilesResponseTypeDef,
RoleDetailTypeDef,
SimulatePolicyResponseTypeDef,
GetAccountAuthorizationDetailsResponseTypeDef,
)
def get_structure() -> AccessDetailTypeDef:
return {...}
```
## How it works
Fully automated
[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
generates type annotations for each service, patiently waiting for `boto3`
updates. It delivers a drop-in type annotations for you and makes sure that:
- All available `boto3` services are covered.
- Each public class and method of every `boto3` service gets valid type
annotations extracted from the documentation (blame `botocore` docs if types
are incorrect).
- Type annotations include up-to-date documentation.
- Link to documentation is provided for every method.
- Code is processed by [black](https://github.com/psf/black) and
[isort](https://github.com/PyCQA/isort) for readability.
## What's new
### Implemented features
- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries
- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
compatibility
- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
annotations for each service
- Generated `TypeDefs` for each service
- Generated `Literals` for each service
- Auto discovery of types for `boto3.client` and `boto3.session` calls
- Auto discovery of types for `session.client` and `session.session` calls
- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
calls
- Auto discovery of types for `ServiceResource` and `Resource` collections
- Auto discovery of types for `aiobotocore.Session.create_client` calls
### Latest changes
Builder changelog can be found in
[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
## Versioning
`mypy-boto3-iam` version is the same as related `boto3` version and follows
[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
## Thank you
- [Allie Fitter](https://github.com/alliefitter) for
[boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
this package is based on top of his work
- [black](https://github.com/psf/black) developers for an awesome formatting
tool
- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
[isort](https://github.com/PyCQA/isort) and how flexible it is
- [mypy](https://github.com/python/mypy) developers for doing all dirty work
for us
- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
Python
## Documentation
All services type annotations can be found in
[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/)
## Support and contributing
This package is auto-generated. Please reports any bugs or request new features
in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
repository.
%package -n python3-mypy-boto3-iam
Summary: Type annotations for boto3.IAM 1.26.97 service generated with mypy-boto3-builder 7.13.0
Provides: python-mypy-boto3-iam
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-mypy-boto3-iam
# mypy-boto3-iam
[![PyPI - mypy-boto3-iam](https://img.shields.io/pypi/v/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-iam?color=blue)](https://pypistats.org/packages/mypy-boto3-iam)
![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
Type annotations for
[boto3.IAM 1.26.97](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iam.html#IAM)
service compatible with [VSCode](https://code.visualstudio.com/),
[PyCharm](https://www.jetbrains.com/pycharm/),
[Emacs](https://www.gnu.org/software/emacs/),
[Sublime Text](https://www.sublimetext.com/),
[mypy](https://github.com/python/mypy),
[pyright](https://github.com/microsoft/pyright) and other tools.
Generated by
[mypy-boto3-builder 7.13.0](https://github.com/youtype/mypy_boto3_builder).
More information can be found on
[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
[mypy-boto3-iam docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/).
See how it helps to find and fix potential bugs:
![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
- [mypy-boto3-iam](#mypy-boto3-iam)
- [How to install](#how-to-install)
- [VSCode extension](#vscode-extension)
- [From PyPI with pip](#from-pypi-with-pip)
- [How to uninstall](#how-to-uninstall)
- [Usage](#usage)
- [VSCode](#vscode)
- [PyCharm](#pycharm)
- [Emacs](#emacs)
- [Sublime Text](#sublime-text)
- [Other IDEs](#other-ides)
- [mypy](#mypy)
- [pyright](#pyright)
- [Explicit type annotations](#explicit-type-annotations)
- [Client annotations](#client-annotations)
- [Paginators annotations](#paginators-annotations)
- [Waiters annotations](#waiters-annotations)
- [Service Resource annotations](#service-resource-annotations)
- [Other resources annotations](#other-resources-annotations)
- [Collections annotations](#collections-annotations)
- [Literals](#literals)
- [Typed dictionaries](#typed-dictionaries)
- [How it works](#how-it-works)
- [What's new](#what's-new)
- [Implemented features](#implemented-features)
- [Latest changes](#latest-changes)
- [Versioning](#versioning)
- [Thank you](#thank-you)
- [Documentation](#documentation)
- [Support and contributing](#support-and-contributing)
## How to install
### VSCode extension
Add
[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
extension to your VSCode and run `AWS boto3: Quick Start` command.
Click `Modify` and select `boto3 common` and `IAM`.
### From PyPI with pip
Install `boto3-stubs` for `IAM` service.
```bash
# install with boto3 type annotations
python -m pip install 'boto3-stubs[iam]'
# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[iam]'
# standalone installation
python -m pip install mypy-boto3-iam
```
## How to uninstall
```bash
python -m pip uninstall -y mypy-boto3-iam
```
## Usage
### VSCode
- Install
[Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
- Install
[Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
- Set `Pylance` as your Python Language Server
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Both type checking and code completion should now work. No explicit type
annotations required, write your `boto3` code as usual.
### PyCharm
Install `boto3-stubs-lite[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs-lite[iam]'`
```
Both type checking and code completion should now work. Explicit type
annotations **are required**.
Use `boto3-stubs` package instead for implicit type discovery.
### Emacs
- Install `boto3-stubs` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [use-package](https://github.com/jwiegley/use-package),
[lsp](https://github.com/emacs-lsp/lsp-mode/),
[company](https://github.com/company-mode/company-mode) and
[flycheck](https://github.com/flycheck/flycheck) packages
- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
```elisp
(use-package lsp-pyright
:ensure t
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))) ; or lsp-deferred
:init (when (executable-find "python3")
(setq lsp-pyright-python-executable-cmd "python3"))
)
```
- Make sure emacs uses the environment where you have installed `boto3-stubs`
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Sublime Text
- Install `boto3-stubs[iam]` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Other IDEs
Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
should work.
### mypy
- Install `mypy`: `python -m pip install mypy`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'`
```
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### pyright
- Install `pyright`: `npm i -g pyright`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Optionally, you can install `boto3-stubs` to `typings` folder.
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
## Explicit type annotations
### Client annotations
`IAMClient` provides annotations for `boto3.client("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
client: IAMClient = Session().client("iam")
# now client usage is checked by mypy and IDE should provide code completion
```
### Paginators annotations
`mypy_boto3_iam.paginator` module contains type annotations for all paginators.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.paginator import (
GetAccountAuthorizationDetailsPaginator,
GetGroupPaginator,
ListAccessKeysPaginator,
ListAccountAliasesPaginator,
ListAttachedGroupPoliciesPaginator,
ListAttachedRolePoliciesPaginator,
ListAttachedUserPoliciesPaginator,
ListEntitiesForPolicyPaginator,
ListGroupPoliciesPaginator,
ListGroupsPaginator,
ListGroupsForUserPaginator,
ListInstanceProfilesPaginator,
ListInstanceProfilesForRolePaginator,
ListMFADevicesPaginator,
ListPoliciesPaginator,
ListPolicyVersionsPaginator,
ListRolePoliciesPaginator,
ListRolesPaginator,
ListSSHPublicKeysPaginator,
ListServerCertificatesPaginator,
ListSigningCertificatesPaginator,
ListUserPoliciesPaginator,
ListUserTagsPaginator,
ListUsersPaginator,
ListVirtualMFADevicesPaginator,
SimulateCustomPolicyPaginator,
SimulatePrincipalPolicyPaginator,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
get_account_authorization_details_paginator: GetAccountAuthorizationDetailsPaginator = (
client.get_paginator("get_account_authorization_details")
)
get_group_paginator: GetGroupPaginator = client.get_paginator("get_group")
list_access_keys_paginator: ListAccessKeysPaginator = client.get_paginator("list_access_keys")
list_account_aliases_paginator: ListAccountAliasesPaginator = client.get_paginator(
"list_account_aliases"
)
list_attached_group_policies_paginator: ListAttachedGroupPoliciesPaginator = client.get_paginator(
"list_attached_group_policies"
)
list_attached_role_policies_paginator: ListAttachedRolePoliciesPaginator = client.get_paginator(
"list_attached_role_policies"
)
list_attached_user_policies_paginator: ListAttachedUserPoliciesPaginator = client.get_paginator(
"list_attached_user_policies"
)
list_entities_for_policy_paginator: ListEntitiesForPolicyPaginator = client.get_paginator(
"list_entities_for_policy"
)
list_group_policies_paginator: ListGroupPoliciesPaginator = client.get_paginator(
"list_group_policies"
)
list_groups_paginator: ListGroupsPaginator = client.get_paginator("list_groups")
list_groups_for_user_paginator: ListGroupsForUserPaginator = client.get_paginator(
"list_groups_for_user"
)
list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator(
"list_instance_profiles"
)
list_instance_profiles_for_role_paginator: ListInstanceProfilesForRolePaginator = (
client.get_paginator("list_instance_profiles_for_role")
)
list_mfa_devices_paginator: ListMFADevicesPaginator = client.get_paginator("list_mfa_devices")
list_policies_paginator: ListPoliciesPaginator = client.get_paginator("list_policies")
list_policy_versions_paginator: ListPolicyVersionsPaginator = client.get_paginator(
"list_policy_versions"
)
list_role_policies_paginator: ListRolePoliciesPaginator = client.get_paginator("list_role_policies")
list_roles_paginator: ListRolesPaginator = client.get_paginator("list_roles")
list_ssh_public_keys_paginator: ListSSHPublicKeysPaginator = client.get_paginator(
"list_ssh_public_keys"
)
list_server_certificates_paginator: ListServerCertificatesPaginator = client.get_paginator(
"list_server_certificates"
)
list_signing_certificates_paginator: ListSigningCertificatesPaginator = client.get_paginator(
"list_signing_certificates"
)
list_user_policies_paginator: ListUserPoliciesPaginator = client.get_paginator("list_user_policies")
list_user_tags_paginator: ListUserTagsPaginator = client.get_paginator("list_user_tags")
list_users_paginator: ListUsersPaginator = client.get_paginator("list_users")
list_virtual_mfa_devices_paginator: ListVirtualMFADevicesPaginator = client.get_paginator(
"list_virtual_mfa_devices"
)
simulate_custom_policy_paginator: SimulateCustomPolicyPaginator = client.get_paginator(
"simulate_custom_policy"
)
simulate_principal_policy_paginator: SimulatePrincipalPolicyPaginator = client.get_paginator(
"simulate_principal_policy"
)
```
### Waiters annotations
`mypy_boto3_iam.waiter` module contains type annotations for all waiters.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.waiter import (
InstanceProfileExistsWaiter,
PolicyExistsWaiter,
RoleExistsWaiter,
UserExistsWaiter,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
instance_profile_exists_waiter: InstanceProfileExistsWaiter = client.get_waiter(
"instance_profile_exists"
)
policy_exists_waiter: PolicyExistsWaiter = client.get_waiter("policy_exists")
role_exists_waiter: RoleExistsWaiter = client.get_waiter("role_exists")
user_exists_waiter: UserExistsWaiter = client.get_waiter("user_exists")
```
### Service Resource annotations
`IAMServiceResource` provides annotations for `boto3.resource("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
resource: IAMServiceResource = Session().resource("iam")
# now resource usage is checked by mypy and IDE should provide code completion
```
### Other resources annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
resources.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
AccessKey,
AccessKeyPair,
AccountPasswordPolicy,
AccountSummary,
AssumeRolePolicy,
CurrentUser,
Group,
GroupPolicy,
InstanceProfile,
LoginProfile,
MfaDevice,
Policy,
PolicyVersion,
Role,
RolePolicy,
SamlProvider,
ServerCertificate,
SigningCertificate,
User,
UserPolicy,
VirtualMfaDevice,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
my_access_key: AccessKey = resource.AccessKey(...)
my_access_key_pair: AccessKeyPair = resource.AccessKeyPair(...)
my_account_password_policy: AccountPasswordPolicy = resource.AccountPasswordPolicy(...)
my_account_summary: AccountSummary = resource.AccountSummary(...)
my_assume_role_policy: AssumeRolePolicy = resource.AssumeRolePolicy(...)
my_current_user: CurrentUser = resource.CurrentUser(...)
my_group: Group = resource.Group(...)
my_group_policy: GroupPolicy = resource.GroupPolicy(...)
my_instance_profile: InstanceProfile = resource.InstanceProfile(...)
my_login_profile: LoginProfile = resource.LoginProfile(...)
my_mfa_device: MfaDevice = resource.MfaDevice(...)
my_policy: Policy = resource.Policy(...)
my_policy_version: PolicyVersion = resource.PolicyVersion(...)
my_role: Role = resource.Role(...)
my_role_policy: RolePolicy = resource.RolePolicy(...)
my_saml_provider: SamlProvider = resource.SamlProvider(...)
my_server_certificate: ServerCertificate = resource.ServerCertificate(...)
my_signing_certificate: SigningCertificate = resource.SigningCertificate(...)
my_user: User = resource.User(...)
my_user_policy: UserPolicy = resource.UserPolicy(...)
my_virtual_mfa_device: VirtualMfaDevice = resource.VirtualMfaDevice(...)
```
### Collections annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
`IAMServiceResource` collections.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
ServiceResourceGroupsCollection,
ServiceResourceInstanceProfilesCollection,
ServiceResourcePoliciesCollection,
ServiceResourceRolesCollection,
ServiceResourceSamlProvidersCollection,
ServiceResourceServerCertificatesCollection,
ServiceResourceUsersCollection,
ServiceResourceVirtualMfaDevicesCollection,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
groups: iam_resources.ServiceResourceGroupsCollection = resource.groups
instance_profiles: iam_resources.ServiceResourceInstanceProfilesCollection = (
resource.instance_profiles
)
policies: iam_resources.ServiceResourcePoliciesCollection = resource.policies
roles: iam_resources.ServiceResourceRolesCollection = resource.roles
saml_providers: iam_resources.ServiceResourceSamlProvidersCollection = resource.saml_providers
server_certificates: iam_resources.ServiceResourceServerCertificatesCollection = (
resource.server_certificates
)
users: iam_resources.ServiceResourceUsersCollection = resource.users
virtual_mfa_devices: iam_resources.ServiceResourceVirtualMfaDevicesCollection = (
resource.virtual_mfa_devices
)
```
### Literals
`mypy_boto3_iam.literals` module contains literals extracted from shapes that
can be used in user code for type checking.
```python
from mypy_boto3_iam.literals import (
AccessAdvisorUsageGranularityTypeType,
ContextKeyTypeEnumType,
DeletionTaskStatusTypeType,
EntityTypeType,
GetAccountAuthorizationDetailsPaginatorName,
GetGroupPaginatorName,
InstanceProfileExistsWaiterName,
ListAccessKeysPaginatorName,
ListAccountAliasesPaginatorName,
ListAttachedGroupPoliciesPaginatorName,
ListAttachedRolePoliciesPaginatorName,
ListAttachedUserPoliciesPaginatorName,
ListEntitiesForPolicyPaginatorName,
ListGroupPoliciesPaginatorName,
ListGroupsForUserPaginatorName,
ListGroupsPaginatorName,
ListInstanceProfilesForRolePaginatorName,
ListInstanceProfilesPaginatorName,
ListMFADevicesPaginatorName,
ListPoliciesPaginatorName,
ListPolicyVersionsPaginatorName,
ListRolePoliciesPaginatorName,
ListRolesPaginatorName,
ListSSHPublicKeysPaginatorName,
ListServerCertificatesPaginatorName,
ListSigningCertificatesPaginatorName,
ListUserPoliciesPaginatorName,
ListUserTagsPaginatorName,
ListUsersPaginatorName,
ListVirtualMFADevicesPaginatorName,
PermissionsBoundaryAttachmentTypeType,
PolicyEvaluationDecisionTypeType,
PolicyExistsWaiterName,
PolicySourceTypeType,
PolicyUsageTypeType,
ReportFormatTypeType,
ReportStateTypeType,
RoleExistsWaiterName,
SimulateCustomPolicyPaginatorName,
SimulatePrincipalPolicyPaginatorName,
UserExistsWaiterName,
assignmentStatusTypeType,
encodingTypeType,
globalEndpointTokenVersionType,
jobStatusTypeType,
policyOwnerEntityTypeType,
policyScopeTypeType,
policyTypeType,
sortKeyTypeType,
statusTypeType,
summaryKeyTypeType,
IAMServiceName,
ServiceName,
ResourceServiceName,
PaginatorName,
WaiterName,
)
def check_value(value: AccessAdvisorUsageGranularityTypeType) -> bool:
...
```
### Typed dictionaries
`mypy_boto3_iam.type_defs` module contains structures and shapes assembled to
typed dictionaries for additional type checking.
```python
from mypy_boto3_iam.type_defs import (
AccessDetailTypeDef,
AccessKeyLastUsedTypeDef,
AccessKeyMetadataTypeDef,
AccessKeyTypeDef,
AddClientIDToOpenIDConnectProviderRequestRequestTypeDef,
AddRoleToInstanceProfileRequestInstanceProfileAddRoleTypeDef,
AddRoleToInstanceProfileRequestRequestTypeDef,
AddUserToGroupRequestGroupAddUserTypeDef,
AddUserToGroupRequestRequestTypeDef,
AddUserToGroupRequestUserAddGroupTypeDef,
AttachGroupPolicyRequestGroupAttachPolicyTypeDef,
AttachGroupPolicyRequestPolicyAttachGroupTypeDef,
AttachGroupPolicyRequestRequestTypeDef,
AttachRolePolicyRequestPolicyAttachRoleTypeDef,
AttachRolePolicyRequestRequestTypeDef,
AttachRolePolicyRequestRoleAttachPolicyTypeDef,
AttachUserPolicyRequestPolicyAttachUserTypeDef,
AttachUserPolicyRequestRequestTypeDef,
AttachUserPolicyRequestUserAttachPolicyTypeDef,
ResponseMetadataTypeDef,
AttachedPermissionsBoundaryTypeDef,
AttachedPolicyTypeDef,
ChangePasswordRequestRequestTypeDef,
ChangePasswordRequestServiceResourceChangePasswordTypeDef,
ContextEntryTypeDef,
CreateAccessKeyRequestRequestTypeDef,
CreateAccountAliasRequestRequestTypeDef,
CreateAccountAliasRequestServiceResourceCreateAccountAliasTypeDef,
CreateGroupRequestGroupCreateTypeDef,
CreateGroupRequestRequestTypeDef,
CreateGroupRequestServiceResourceCreateGroupTypeDef,
GroupTypeDef,
TagTypeDef,
CreateLoginProfileRequestLoginProfileCreateTypeDef,
CreateLoginProfileRequestRequestTypeDef,
CreateLoginProfileRequestUserCreateLoginProfileTypeDef,
LoginProfileTypeDef,
CreatePolicyVersionRequestPolicyCreateVersionTypeDef,
CreatePolicyVersionRequestRequestTypeDef,
PolicyVersionTypeDef,
CreateServiceLinkedRoleRequestRequestTypeDef,
CreateServiceSpecificCredentialRequestRequestTypeDef,
ServiceSpecificCredentialTypeDef,
DeactivateMFADeviceRequestRequestTypeDef,
DeleteAccessKeyRequestRequestTypeDef,
DeleteAccountAliasRequestRequestTypeDef,
DeleteGroupPolicyRequestRequestTypeDef,
DeleteGroupRequestRequestTypeDef,
DeleteInstanceProfileRequestRequestTypeDef,
DeleteLoginProfileRequestRequestTypeDef,
DeleteOpenIDConnectProviderRequestRequestTypeDef,
DeletePolicyRequestRequestTypeDef,
DeletePolicyVersionRequestRequestTypeDef,
DeleteRolePermissionsBoundaryRequestRequestTypeDef,
DeleteRolePolicyRequestRequestTypeDef,
DeleteRoleRequestRequestTypeDef,
DeleteSAMLProviderRequestRequestTypeDef,
DeleteSSHPublicKeyRequestRequestTypeDef,
DeleteServerCertificateRequestRequestTypeDef,
DeleteServiceLinkedRoleRequestRequestTypeDef,
DeleteServiceSpecificCredentialRequestRequestTypeDef,
DeleteSigningCertificateRequestRequestTypeDef,
DeleteUserPermissionsBoundaryRequestRequestTypeDef,
DeleteUserPolicyRequestRequestTypeDef,
DeleteUserRequestRequestTypeDef,
DeleteVirtualMFADeviceRequestRequestTypeDef,
RoleUsageTypeTypeDef,
DetachGroupPolicyRequestGroupDetachPolicyTypeDef,
DetachGroupPolicyRequestPolicyDetachGroupTypeDef,
DetachGroupPolicyRequestRequestTypeDef,
DetachRolePolicyRequestPolicyDetachRoleTypeDef,
DetachRolePolicyRequestRequestTypeDef,
DetachRolePolicyRequestRoleDetachPolicyTypeDef,
DetachUserPolicyRequestPolicyDetachUserTypeDef,
DetachUserPolicyRequestRequestTypeDef,
DetachUserPolicyRequestUserDetachPolicyTypeDef,
EnableMFADeviceRequestMfaDeviceAssociateTypeDef,
EnableMFADeviceRequestRequestTypeDef,
EnableMFADeviceRequestUserEnableMfaTypeDef,
EntityInfoTypeDef,
ErrorDetailsTypeDef,
OrganizationsDecisionDetailTypeDef,
PermissionsBoundaryDecisionDetailTypeDef,
GenerateOrganizationsAccessReportRequestRequestTypeDef,
GenerateServiceLastAccessedDetailsRequestRequestTypeDef,
GetAccessKeyLastUsedRequestRequestTypeDef,
PaginatorConfigTypeDef,
GetAccountAuthorizationDetailsRequestRequestTypeDef,
PasswordPolicyTypeDef,
GetContextKeysForCustomPolicyRequestRequestTypeDef,
GetContextKeysForPrincipalPolicyRequestRequestTypeDef,
GetGroupPolicyRequestRequestTypeDef,
GetGroupRequestRequestTypeDef,
WaiterConfigTypeDef,
GetInstanceProfileRequestRequestTypeDef,
GetLoginProfileRequestRequestTypeDef,
GetOpenIDConnectProviderRequestRequestTypeDef,
GetOrganizationsAccessReportRequestRequestTypeDef,
GetPolicyRequestRequestTypeDef,
GetPolicyVersionRequestRequestTypeDef,
GetRolePolicyRequestRequestTypeDef,
GetRoleRequestRequestTypeDef,
GetSAMLProviderRequestRequestTypeDef,
GetSSHPublicKeyRequestRequestTypeDef,
SSHPublicKeyTypeDef,
GetServerCertificateRequestRequestTypeDef,
GetServiceLastAccessedDetailsRequestRequestTypeDef,
GetServiceLastAccessedDetailsWithEntitiesRequestRequestTypeDef,
GetServiceLinkedRoleDeletionStatusRequestRequestTypeDef,
GetUserPolicyRequestRequestTypeDef,
GetUserRequestRequestTypeDef,
PolicyDetailTypeDef,
GroupPolicyRequestTypeDef,
ListAccessKeysRequestRequestTypeDef,
ListAccountAliasesRequestRequestTypeDef,
ListAttachedGroupPoliciesRequestRequestTypeDef,
ListAttachedRolePoliciesRequestRequestTypeDef,
ListAttachedUserPoliciesRequestRequestTypeDef,
ListEntitiesForPolicyRequestRequestTypeDef,
PolicyGroupTypeDef,
PolicyRoleTypeDef,
PolicyUserTypeDef,
ListGroupPoliciesRequestRequestTypeDef,
ListGroupsForUserRequestRequestTypeDef,
ListGroupsRequestRequestTypeDef,
ListInstanceProfileTagsRequestRequestTypeDef,
ListInstanceProfilesForRoleRequestRequestTypeDef,
ListInstanceProfilesRequestRequestTypeDef,
ListMFADeviceTagsRequestRequestTypeDef,
ListMFADevicesRequestRequestTypeDef,
MFADeviceTypeDef,
ListOpenIDConnectProviderTagsRequestRequestTypeDef,
OpenIDConnectProviderListEntryTypeDef,
PolicyGrantingServiceAccessTypeDef,
ListPoliciesGrantingServiceAccessRequestRequestTypeDef,
ListPoliciesRequestRequestTypeDef,
ListPolicyTagsRequestRequestTypeDef,
ListPolicyVersionsRequestRequestTypeDef,
ListRolePoliciesRequestRequestTypeDef,
ListRoleTagsRequestRequestTypeDef,
ListRolesRequestRequestTypeDef,
ListSAMLProviderTagsRequestRequestTypeDef,
SAMLProviderListEntryTypeDef,
ListSSHPublicKeysRequestRequestTypeDef,
SSHPublicKeyMetadataTypeDef,
ListServerCertificateTagsRequestRequestTypeDef,
ListServerCertificatesRequestRequestTypeDef,
ServerCertificateMetadataTypeDef,
ListServiceSpecificCredentialsRequestRequestTypeDef,
ServiceSpecificCredentialMetadataTypeDef,
ListSigningCertificatesRequestRequestTypeDef,
SigningCertificateTypeDef,
ListUserPoliciesRequestRequestTypeDef,
ListUserTagsRequestRequestTypeDef,
ListUsersRequestRequestTypeDef,
ListVirtualMFADevicesRequestRequestTypeDef,
PositionTypeDef,
PutGroupPolicyRequestGroupCreatePolicyTypeDef,
PutGroupPolicyRequestGroupPolicyPutTypeDef,
PutGroupPolicyRequestRequestTypeDef,
PutRolePermissionsBoundaryRequestRequestTypeDef,
PutRolePolicyRequestRequestTypeDef,
PutRolePolicyRequestRolePolicyPutTypeDef,
PutUserPermissionsBoundaryRequestRequestTypeDef,
PutUserPolicyRequestRequestTypeDef,
PutUserPolicyRequestUserCreatePolicyTypeDef,
PutUserPolicyRequestUserPolicyPutTypeDef,
RemoveClientIDFromOpenIDConnectProviderRequestRequestTypeDef,
RemoveRoleFromInstanceProfileRequestInstanceProfileRemoveRoleTypeDef,
RemoveRoleFromInstanceProfileRequestRequestTypeDef,
RemoveUserFromGroupRequestGroupRemoveUserTypeDef,
RemoveUserFromGroupRequestRequestTypeDef,
RemoveUserFromGroupRequestUserRemoveGroupTypeDef,
ResetServiceSpecificCredentialRequestRequestTypeDef,
ResyncMFADeviceRequestMfaDeviceResyncTypeDef,
ResyncMFADeviceRequestRequestTypeDef,
RoleLastUsedTypeDef,
RolePolicyRequestTypeDef,
TrackedActionLastAccessedTypeDef,
ServiceResourceAccessKeyPairRequestTypeDef,
ServiceResourceAccessKeyRequestTypeDef,
ServiceResourceAssumeRolePolicyRequestTypeDef,
ServiceResourceGroupPolicyRequestTypeDef,
ServiceResourceGroupRequestTypeDef,
ServiceResourceInstanceProfileRequestTypeDef,
ServiceResourceLoginProfileRequestTypeDef,
ServiceResourceMfaDeviceRequestTypeDef,
ServiceResourcePolicyRequestTypeDef,
ServiceResourcePolicyVersionRequestTypeDef,
ServiceResourceRolePolicyRequestTypeDef,
ServiceResourceRoleRequestTypeDef,
ServiceResourceSamlProviderRequestTypeDef,
ServiceResourceServerCertificateRequestTypeDef,
ServiceResourceSigningCertificateRequestTypeDef,
ServiceResourceUserPolicyRequestTypeDef,
ServiceResourceUserRequestTypeDef,
ServiceResourceVirtualMfaDeviceRequestTypeDef,
SetDefaultPolicyVersionRequestRequestTypeDef,
SetSecurityTokenServicePreferencesRequestRequestTypeDef,
UntagInstanceProfileRequestRequestTypeDef,
UntagMFADeviceRequestRequestTypeDef,
UntagOpenIDConnectProviderRequestRequestTypeDef,
UntagPolicyRequestRequestTypeDef,
UntagRoleRequestRequestTypeDef,
UntagSAMLProviderRequestRequestTypeDef,
UntagServerCertificateRequestRequestTypeDef,
UntagUserRequestRequestTypeDef,
UpdateAccessKeyRequestAccessKeyActivateTypeDef,
UpdateAccessKeyRequestAccessKeyDeactivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairActivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairDeactivateTypeDef,
UpdateAccessKeyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestAccountPasswordPolicyUpdateTypeDef,
UpdateAccountPasswordPolicyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestServiceResourceCreateAccountPasswordPolicyTypeDef,
UpdateAssumeRolePolicyRequestAssumeRolePolicyUpdateTypeDef,
UpdateAssumeRolePolicyRequestRequestTypeDef,
UpdateGroupRequestGroupUpdateTypeDef,
UpdateGroupRequestRequestTypeDef,
UpdateLoginProfileRequestLoginProfileUpdateTypeDef,
UpdateLoginProfileRequestRequestTypeDef,
UpdateOpenIDConnectProviderThumbprintRequestRequestTypeDef,
UpdateRoleDescriptionRequestRequestTypeDef,
UpdateRoleRequestRequestTypeDef,
UpdateSAMLProviderRequestRequestTypeDef,
UpdateSAMLProviderRequestSamlProviderUpdateTypeDef,
UpdateSSHPublicKeyRequestRequestTypeDef,
UpdateServerCertificateRequestRequestTypeDef,
UpdateServerCertificateRequestServerCertificateUpdateTypeDef,
UpdateServiceSpecificCredentialRequestRequestTypeDef,
UpdateSigningCertificateRequestRequestTypeDef,
UpdateSigningCertificateRequestSigningCertificateActivateTypeDef,
UpdateSigningCertificateRequestSigningCertificateDeactivateTypeDef,
UpdateUserRequestRequestTypeDef,
UpdateUserRequestUserUpdateTypeDef,
UploadSSHPublicKeyRequestRequestTypeDef,
UploadSigningCertificateRequestRequestTypeDef,
UploadSigningCertificateRequestServiceResourceCreateSigningCertificateTypeDef,
UserAccessKeyRequestTypeDef,
UserMfaDeviceRequestTypeDef,
UserPolicyRequestTypeDef,
UserSigningCertificateRequestTypeDef,
AttachedPermissionsBoundaryResponseMetadataTypeDef,
CreateAccessKeyResponseTypeDef,
DeleteServiceLinkedRoleResponseTypeDef,
EmptyResponseMetadataTypeDef,
GenerateCredentialReportResponseTypeDef,
GenerateOrganizationsAccessReportResponseTypeDef,
GenerateServiceLastAccessedDetailsResponseTypeDef,
GetAccessKeyLastUsedResponseTypeDef,
GetAccountSummaryResponseTypeDef,
GetContextKeysForPolicyResponseTypeDef,
GetCredentialReportResponseTypeDef,
GetGroupPolicyResponseTypeDef,
GetRolePolicyResponseTypeDef,
GetUserPolicyResponseTypeDef,
ListAccessKeysResponseTypeDef,
ListAccountAliasesResponseTypeDef,
ListGroupPoliciesResponseTypeDef,
ListRolePoliciesResponseTypeDef,
ListUserPoliciesResponseTypeDef,
RoleLastUsedResponseMetadataTypeDef,
ServerCertificateMetadataResponseMetadataTypeDef,
UpdateSAMLProviderResponseTypeDef,
ListAttachedGroupPoliciesResponseTypeDef,
ListAttachedRolePoliciesResponseTypeDef,
ListAttachedUserPoliciesResponseTypeDef,
SimulateCustomPolicyRequestRequestTypeDef,
SimulatePrincipalPolicyRequestRequestTypeDef,
CreateGroupResponseTypeDef,
ListGroupsForUserResponseTypeDef,
ListGroupsResponseTypeDef,
CreateInstanceProfileRequestRequestTypeDef,
CreateInstanceProfileRequestServiceResourceCreateInstanceProfileTypeDef,
CreateOpenIDConnectProviderRequestRequestTypeDef,
CreateOpenIDConnectProviderResponseTypeDef,
CreatePolicyRequestRequestTypeDef,
CreatePolicyRequestServiceResourceCreatePolicyTypeDef,
CreateRoleRequestRequestTypeDef,
CreateRoleRequestServiceResourceCreateRoleTypeDef,
CreateSAMLProviderRequestRequestTypeDef,
CreateSAMLProviderRequestServiceResourceCreateSamlProviderTypeDef,
CreateSAMLProviderResponseTypeDef,
CreateUserRequestRequestTypeDef,
CreateUserRequestServiceResourceCreateUserTypeDef,
CreateUserRequestUserCreateTypeDef,
CreateVirtualMFADeviceRequestRequestTypeDef,
CreateVirtualMFADeviceRequestServiceResourceCreateVirtualMfaDeviceTypeDef,
GetOpenIDConnectProviderResponseTypeDef,
GetSAMLProviderResponseTypeDef,
ListInstanceProfileTagsResponseTypeDef,
ListMFADeviceTagsResponseTypeDef,
ListOpenIDConnectProviderTagsResponseTypeDef,
ListPolicyTagsResponseTypeDef,
ListRoleTagsResponseTypeDef,
ListSAMLProviderTagsResponseTypeDef,
ListServerCertificateTagsResponseTypeDef,
ListUserTagsResponseTypeDef,
PolicyTypeDef,
TagInstanceProfileRequestRequestTypeDef,
TagMFADeviceRequestRequestTypeDef,
TagOpenIDConnectProviderRequestRequestTypeDef,
TagPolicyRequestRequestTypeDef,
TagRoleRequestRequestTypeDef,
TagSAMLProviderRequestRequestTypeDef,
TagServerCertificateRequestRequestTypeDef,
TagUserRequestRequestTypeDef,
UploadServerCertificateRequestRequestTypeDef,
UploadServerCertificateRequestServiceResourceCreateServerCertificateTypeDef,
UserResponseMetadataTypeDef,
UserTypeDef,
CreateLoginProfileResponseTypeDef,
GetLoginProfileResponseTypeDef,
CreatePolicyVersionResponseTypeDef,
GetPolicyVersionResponseTypeDef,
ListPolicyVersionsResponseTypeDef,
ManagedPolicyDetailTypeDef,
CreateServiceSpecificCredentialResponseTypeDef,
ResetServiceSpecificCredentialResponseTypeDef,
DeletionTaskFailureReasonTypeTypeDef,
EntityDetailsTypeDef,
GetOrganizationsAccessReportResponseTypeDef,
GetAccountAuthorizationDetailsRequestGetAccountAuthorizationDetailsPaginateTypeDef,
GetGroupRequestGetGroupPaginateTypeDef,
ListAccessKeysRequestListAccessKeysPaginateTypeDef,
ListAccountAliasesRequestListAccountAliasesPaginateTypeDef,
ListAttachedGroupPoliciesRequestListAttachedGroupPoliciesPaginateTypeDef,
ListAttachedRolePoliciesRequestListAttachedRolePoliciesPaginateTypeDef,
ListAttachedUserPoliciesRequestListAttachedUserPoliciesPaginateTypeDef,
ListEntitiesForPolicyRequestListEntitiesForPolicyPaginateTypeDef,
ListGroupPoliciesRequestListGroupPoliciesPaginateTypeDef,
ListGroupsForUserRequestListGroupsForUserPaginateTypeDef,
ListGroupsRequestListGroupsPaginateTypeDef,
ListInstanceProfilesForRoleRequestListInstanceProfilesForRolePaginateTypeDef,
ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef,
ListMFADevicesRequestListMFADevicesPaginateTypeDef,
ListPoliciesRequestListPoliciesPaginateTypeDef,
ListPolicyVersionsRequestListPolicyVersionsPaginateTypeDef,
ListRolePoliciesRequestListRolePoliciesPaginateTypeDef,
ListRolesRequestListRolesPaginateTypeDef,
ListSSHPublicKeysRequestListSSHPublicKeysPaginateTypeDef,
ListServerCertificatesRequestListServerCertificatesPaginateTypeDef,
ListSigningCertificatesRequestListSigningCertificatesPaginateTypeDef,
ListUserPoliciesRequestListUserPoliciesPaginateTypeDef,
ListUserTagsRequestListUserTagsPaginateTypeDef,
ListUsersRequestListUsersPaginateTypeDef,
ListVirtualMFADevicesRequestListVirtualMFADevicesPaginateTypeDef,
SimulateCustomPolicyRequestSimulateCustomPolicyPaginateTypeDef,
SimulatePrincipalPolicyRequestSimulatePrincipalPolicyPaginateTypeDef,
GetAccountPasswordPolicyResponseTypeDef,
GetInstanceProfileRequestInstanceProfileExistsWaitTypeDef,
GetPolicyRequestPolicyExistsWaitTypeDef,
GetRoleRequestRoleExistsWaitTypeDef,
GetUserRequestUserExistsWaitTypeDef,
GetSSHPublicKeyResponseTypeDef,
UploadSSHPublicKeyResponseTypeDef,
GroupDetailTypeDef,
UserDetailTypeDef,
ListEntitiesForPolicyResponseTypeDef,
ListMFADevicesResponseTypeDef,
ListOpenIDConnectProvidersResponseTypeDef,
ListPoliciesGrantingServiceAccessEntryTypeDef,
ListSAMLProvidersResponseTypeDef,
ListSSHPublicKeysResponseTypeDef,
ListServerCertificatesResponseTypeDef,
ServerCertificateTypeDef,
UploadServerCertificateResponseTypeDef,
ListServiceSpecificCredentialsResponseTypeDef,
ListSigningCertificatesResponseTypeDef,
UploadSigningCertificateResponseTypeDef,
StatementTypeDef,
RoleTypeDef,
ServiceLastAccessedTypeDef,
CreatePolicyResponseTypeDef,
GetPolicyResponseTypeDef,
ListPoliciesResponseTypeDef,
CreateUserResponseTypeDef,
GetGroupResponseTypeDef,
GetUserResponseTypeDef,
ListUsersResponseTypeDef,
VirtualMFADeviceTypeDef,
GetServiceLinkedRoleDeletionStatusResponseTypeDef,
GetServiceLastAccessedDetailsWithEntitiesResponseTypeDef,
ListPoliciesGrantingServiceAccessResponseTypeDef,
GetServerCertificateResponseTypeDef,
ResourceSpecificResultTypeDef,
CreateRoleResponseTypeDef,
CreateServiceLinkedRoleResponseTypeDef,
GetRoleResponseTypeDef,
InstanceProfileTypeDef,
ListRolesResponseTypeDef,
UpdateRoleDescriptionResponseTypeDef,
GetServiceLastAccessedDetailsResponseTypeDef,
CreateVirtualMFADeviceResponseTypeDef,
ListVirtualMFADevicesResponseTypeDef,
EvaluationResultTypeDef,
CreateInstanceProfileResponseTypeDef,
GetInstanceProfileResponseTypeDef,
ListInstanceProfilesForRoleResponseTypeDef,
ListInstanceProfilesResponseTypeDef,
RoleDetailTypeDef,
SimulatePolicyResponseTypeDef,
GetAccountAuthorizationDetailsResponseTypeDef,
)
def get_structure() -> AccessDetailTypeDef:
return {...}
```
## How it works
Fully automated
[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
generates type annotations for each service, patiently waiting for `boto3`
updates. It delivers a drop-in type annotations for you and makes sure that:
- All available `boto3` services are covered.
- Each public class and method of every `boto3` service gets valid type
annotations extracted from the documentation (blame `botocore` docs if types
are incorrect).
- Type annotations include up-to-date documentation.
- Link to documentation is provided for every method.
- Code is processed by [black](https://github.com/psf/black) and
[isort](https://github.com/PyCQA/isort) for readability.
## What's new
### Implemented features
- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries
- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
compatibility
- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
annotations for each service
- Generated `TypeDefs` for each service
- Generated `Literals` for each service
- Auto discovery of types for `boto3.client` and `boto3.session` calls
- Auto discovery of types for `session.client` and `session.session` calls
- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
calls
- Auto discovery of types for `ServiceResource` and `Resource` collections
- Auto discovery of types for `aiobotocore.Session.create_client` calls
### Latest changes
Builder changelog can be found in
[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
## Versioning
`mypy-boto3-iam` version is the same as related `boto3` version and follows
[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
## Thank you
- [Allie Fitter](https://github.com/alliefitter) for
[boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
this package is based on top of his work
- [black](https://github.com/psf/black) developers for an awesome formatting
tool
- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
[isort](https://github.com/PyCQA/isort) and how flexible it is
- [mypy](https://github.com/python/mypy) developers for doing all dirty work
for us
- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
Python
## Documentation
All services type annotations can be found in
[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/)
## Support and contributing
This package is auto-generated. Please reports any bugs or request new features
in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
repository.
%package help
Summary: Development documents and examples for mypy-boto3-iam
Provides: python3-mypy-boto3-iam-doc
%description help
# mypy-boto3-iam
[![PyPI - mypy-boto3-iam](https://img.shields.io/pypi/v/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mypy-boto3-iam.svg?color=blue)](https://pypi.org/project/mypy-boto3-iam)
[![Docs](https://img.shields.io/readthedocs/mypy-boto3-builder.svg?color=blue)](https://mypy-boto3-builder.readthedocs.io/)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/mypy-boto3-iam?color=blue)](https://pypistats.org/packages/mypy-boto3-iam)
![boto3.typed](https://github.com/youtype/mypy_boto3_builder/raw/main/logo.png)
Type annotations for
[boto3.IAM 1.26.97](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/iam.html#IAM)
service compatible with [VSCode](https://code.visualstudio.com/),
[PyCharm](https://www.jetbrains.com/pycharm/),
[Emacs](https://www.gnu.org/software/emacs/),
[Sublime Text](https://www.sublimetext.com/),
[mypy](https://github.com/python/mypy),
[pyright](https://github.com/microsoft/pyright) and other tools.
Generated by
[mypy-boto3-builder 7.13.0](https://github.com/youtype/mypy_boto3_builder).
More information can be found on
[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
[mypy-boto3-iam docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/).
See how it helps to find and fix potential bugs:
![boto3-stubs demo](https://github.com/youtype/mypy_boto3_builder/raw/main/demo.gif)
- [mypy-boto3-iam](#mypy-boto3-iam)
- [How to install](#how-to-install)
- [VSCode extension](#vscode-extension)
- [From PyPI with pip](#from-pypi-with-pip)
- [How to uninstall](#how-to-uninstall)
- [Usage](#usage)
- [VSCode](#vscode)
- [PyCharm](#pycharm)
- [Emacs](#emacs)
- [Sublime Text](#sublime-text)
- [Other IDEs](#other-ides)
- [mypy](#mypy)
- [pyright](#pyright)
- [Explicit type annotations](#explicit-type-annotations)
- [Client annotations](#client-annotations)
- [Paginators annotations](#paginators-annotations)
- [Waiters annotations](#waiters-annotations)
- [Service Resource annotations](#service-resource-annotations)
- [Other resources annotations](#other-resources-annotations)
- [Collections annotations](#collections-annotations)
- [Literals](#literals)
- [Typed dictionaries](#typed-dictionaries)
- [How it works](#how-it-works)
- [What's new](#what's-new)
- [Implemented features](#implemented-features)
- [Latest changes](#latest-changes)
- [Versioning](#versioning)
- [Thank you](#thank-you)
- [Documentation](#documentation)
- [Support and contributing](#support-and-contributing)
## How to install
### VSCode extension
Add
[AWS Boto3](https://marketplace.visualstudio.com/items?itemName=Boto3typed.boto3-ide)
extension to your VSCode and run `AWS boto3: Quick Start` command.
Click `Modify` and select `boto3 common` and `IAM`.
### From PyPI with pip
Install `boto3-stubs` for `IAM` service.
```bash
# install with boto3 type annotations
python -m pip install 'boto3-stubs[iam]'
# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[iam]'
# standalone installation
python -m pip install mypy-boto3-iam
```
## How to uninstall
```bash
python -m pip uninstall -y mypy-boto3-iam
```
## Usage
### VSCode
- Install
[Python extension](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
- Install
[Pylance extension](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance)
- Set `Pylance` as your Python Language Server
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Both type checking and code completion should now work. No explicit type
annotations required, write your `boto3` code as usual.
### PyCharm
Install `boto3-stubs-lite[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs-lite[iam]'`
```
Both type checking and code completion should now work. Explicit type
annotations **are required**.
Use `boto3-stubs` package instead for implicit type discovery.
### Emacs
- Install `boto3-stubs` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [use-package](https://github.com/jwiegley/use-package),
[lsp](https://github.com/emacs-lsp/lsp-mode/),
[company](https://github.com/company-mode/company-mode) and
[flycheck](https://github.com/flycheck/flycheck) packages
- Install [lsp-pyright](https://github.com/emacs-lsp/lsp-pyright) package
```elisp
(use-package lsp-pyright
:ensure t
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))) ; or lsp-deferred
:init (when (executable-find "python3")
(setq lsp-pyright-python-executable-cmd "python3"))
)
```
- Make sure emacs uses the environment where you have installed `boto3-stubs`
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Sublime Text
- Install `boto3-stubs[iam]` with services you use in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
- Install [LSP-pyright](https://github.com/sublimelsp/LSP-pyright) package
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### Other IDEs
Not tested, but as long as your IDE supports `mypy` or `pyright`, everything
should work.
### mypy
- Install `mypy`: `python -m pip install mypy`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'`
```
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
### pyright
- Install `pyright`: `npm i -g pyright`
- Install `boto3-stubs[iam]` in your environment:
```bash
python -m pip install 'boto3-stubs[iam]'
```
Optionally, you can install `boto3-stubs` to `typings` folder.
Type checking should now work. No explicit type annotations required, write
your `boto3` code as usual.
## Explicit type annotations
### Client annotations
`IAMClient` provides annotations for `boto3.client("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
client: IAMClient = Session().client("iam")
# now client usage is checked by mypy and IDE should provide code completion
```
### Paginators annotations
`mypy_boto3_iam.paginator` module contains type annotations for all paginators.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.paginator import (
GetAccountAuthorizationDetailsPaginator,
GetGroupPaginator,
ListAccessKeysPaginator,
ListAccountAliasesPaginator,
ListAttachedGroupPoliciesPaginator,
ListAttachedRolePoliciesPaginator,
ListAttachedUserPoliciesPaginator,
ListEntitiesForPolicyPaginator,
ListGroupPoliciesPaginator,
ListGroupsPaginator,
ListGroupsForUserPaginator,
ListInstanceProfilesPaginator,
ListInstanceProfilesForRolePaginator,
ListMFADevicesPaginator,
ListPoliciesPaginator,
ListPolicyVersionsPaginator,
ListRolePoliciesPaginator,
ListRolesPaginator,
ListSSHPublicKeysPaginator,
ListServerCertificatesPaginator,
ListSigningCertificatesPaginator,
ListUserPoliciesPaginator,
ListUserTagsPaginator,
ListUsersPaginator,
ListVirtualMFADevicesPaginator,
SimulateCustomPolicyPaginator,
SimulatePrincipalPolicyPaginator,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
get_account_authorization_details_paginator: GetAccountAuthorizationDetailsPaginator = (
client.get_paginator("get_account_authorization_details")
)
get_group_paginator: GetGroupPaginator = client.get_paginator("get_group")
list_access_keys_paginator: ListAccessKeysPaginator = client.get_paginator("list_access_keys")
list_account_aliases_paginator: ListAccountAliasesPaginator = client.get_paginator(
"list_account_aliases"
)
list_attached_group_policies_paginator: ListAttachedGroupPoliciesPaginator = client.get_paginator(
"list_attached_group_policies"
)
list_attached_role_policies_paginator: ListAttachedRolePoliciesPaginator = client.get_paginator(
"list_attached_role_policies"
)
list_attached_user_policies_paginator: ListAttachedUserPoliciesPaginator = client.get_paginator(
"list_attached_user_policies"
)
list_entities_for_policy_paginator: ListEntitiesForPolicyPaginator = client.get_paginator(
"list_entities_for_policy"
)
list_group_policies_paginator: ListGroupPoliciesPaginator = client.get_paginator(
"list_group_policies"
)
list_groups_paginator: ListGroupsPaginator = client.get_paginator("list_groups")
list_groups_for_user_paginator: ListGroupsForUserPaginator = client.get_paginator(
"list_groups_for_user"
)
list_instance_profiles_paginator: ListInstanceProfilesPaginator = client.get_paginator(
"list_instance_profiles"
)
list_instance_profiles_for_role_paginator: ListInstanceProfilesForRolePaginator = (
client.get_paginator("list_instance_profiles_for_role")
)
list_mfa_devices_paginator: ListMFADevicesPaginator = client.get_paginator("list_mfa_devices")
list_policies_paginator: ListPoliciesPaginator = client.get_paginator("list_policies")
list_policy_versions_paginator: ListPolicyVersionsPaginator = client.get_paginator(
"list_policy_versions"
)
list_role_policies_paginator: ListRolePoliciesPaginator = client.get_paginator("list_role_policies")
list_roles_paginator: ListRolesPaginator = client.get_paginator("list_roles")
list_ssh_public_keys_paginator: ListSSHPublicKeysPaginator = client.get_paginator(
"list_ssh_public_keys"
)
list_server_certificates_paginator: ListServerCertificatesPaginator = client.get_paginator(
"list_server_certificates"
)
list_signing_certificates_paginator: ListSigningCertificatesPaginator = client.get_paginator(
"list_signing_certificates"
)
list_user_policies_paginator: ListUserPoliciesPaginator = client.get_paginator("list_user_policies")
list_user_tags_paginator: ListUserTagsPaginator = client.get_paginator("list_user_tags")
list_users_paginator: ListUsersPaginator = client.get_paginator("list_users")
list_virtual_mfa_devices_paginator: ListVirtualMFADevicesPaginator = client.get_paginator(
"list_virtual_mfa_devices"
)
simulate_custom_policy_paginator: SimulateCustomPolicyPaginator = client.get_paginator(
"simulate_custom_policy"
)
simulate_principal_policy_paginator: SimulatePrincipalPolicyPaginator = client.get_paginator(
"simulate_principal_policy"
)
```
### Waiters annotations
`mypy_boto3_iam.waiter` module contains type annotations for all waiters.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMClient
from mypy_boto3_iam.waiter import (
InstanceProfileExistsWaiter,
PolicyExistsWaiter,
RoleExistsWaiter,
UserExistsWaiter,
)
client: IAMClient = Session().client("iam")
# Explicit type annotations are optional here
# Types should be correctly discovered by mypy and IDEs
instance_profile_exists_waiter: InstanceProfileExistsWaiter = client.get_waiter(
"instance_profile_exists"
)
policy_exists_waiter: PolicyExistsWaiter = client.get_waiter("policy_exists")
role_exists_waiter: RoleExistsWaiter = client.get_waiter("role_exists")
user_exists_waiter: UserExistsWaiter = client.get_waiter("user_exists")
```
### Service Resource annotations
`IAMServiceResource` provides annotations for `boto3.resource("iam")`.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
resource: IAMServiceResource = Session().resource("iam")
# now resource usage is checked by mypy and IDE should provide code completion
```
### Other resources annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
resources.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
AccessKey,
AccessKeyPair,
AccountPasswordPolicy,
AccountSummary,
AssumeRolePolicy,
CurrentUser,
Group,
GroupPolicy,
InstanceProfile,
LoginProfile,
MfaDevice,
Policy,
PolicyVersion,
Role,
RolePolicy,
SamlProvider,
ServerCertificate,
SigningCertificate,
User,
UserPolicy,
VirtualMfaDevice,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
my_access_key: AccessKey = resource.AccessKey(...)
my_access_key_pair: AccessKeyPair = resource.AccessKeyPair(...)
my_account_password_policy: AccountPasswordPolicy = resource.AccountPasswordPolicy(...)
my_account_summary: AccountSummary = resource.AccountSummary(...)
my_assume_role_policy: AssumeRolePolicy = resource.AssumeRolePolicy(...)
my_current_user: CurrentUser = resource.CurrentUser(...)
my_group: Group = resource.Group(...)
my_group_policy: GroupPolicy = resource.GroupPolicy(...)
my_instance_profile: InstanceProfile = resource.InstanceProfile(...)
my_login_profile: LoginProfile = resource.LoginProfile(...)
my_mfa_device: MfaDevice = resource.MfaDevice(...)
my_policy: Policy = resource.Policy(...)
my_policy_version: PolicyVersion = resource.PolicyVersion(...)
my_role: Role = resource.Role(...)
my_role_policy: RolePolicy = resource.RolePolicy(...)
my_saml_provider: SamlProvider = resource.SamlProvider(...)
my_server_certificate: ServerCertificate = resource.ServerCertificate(...)
my_signing_certificate: SigningCertificate = resource.SigningCertificate(...)
my_user: User = resource.User(...)
my_user_policy: UserPolicy = resource.UserPolicy(...)
my_virtual_mfa_device: VirtualMfaDevice = resource.VirtualMfaDevice(...)
```
### Collections annotations
`mypy_boto3_iam.service_resource` module contains type annotations for all
`IAMServiceResource` collections.
```python
from boto3.session import Session
from mypy_boto3_iam import IAMServiceResource
from mypy_boto3_iam.service_resource import (
ServiceResourceGroupsCollection,
ServiceResourceInstanceProfilesCollection,
ServiceResourcePoliciesCollection,
ServiceResourceRolesCollection,
ServiceResourceSamlProvidersCollection,
ServiceResourceServerCertificatesCollection,
ServiceResourceUsersCollection,
ServiceResourceVirtualMfaDevicesCollection,
)
resource: IAMServiceResource = Session().resource("iam")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
groups: iam_resources.ServiceResourceGroupsCollection = resource.groups
instance_profiles: iam_resources.ServiceResourceInstanceProfilesCollection = (
resource.instance_profiles
)
policies: iam_resources.ServiceResourcePoliciesCollection = resource.policies
roles: iam_resources.ServiceResourceRolesCollection = resource.roles
saml_providers: iam_resources.ServiceResourceSamlProvidersCollection = resource.saml_providers
server_certificates: iam_resources.ServiceResourceServerCertificatesCollection = (
resource.server_certificates
)
users: iam_resources.ServiceResourceUsersCollection = resource.users
virtual_mfa_devices: iam_resources.ServiceResourceVirtualMfaDevicesCollection = (
resource.virtual_mfa_devices
)
```
### Literals
`mypy_boto3_iam.literals` module contains literals extracted from shapes that
can be used in user code for type checking.
```python
from mypy_boto3_iam.literals import (
AccessAdvisorUsageGranularityTypeType,
ContextKeyTypeEnumType,
DeletionTaskStatusTypeType,
EntityTypeType,
GetAccountAuthorizationDetailsPaginatorName,
GetGroupPaginatorName,
InstanceProfileExistsWaiterName,
ListAccessKeysPaginatorName,
ListAccountAliasesPaginatorName,
ListAttachedGroupPoliciesPaginatorName,
ListAttachedRolePoliciesPaginatorName,
ListAttachedUserPoliciesPaginatorName,
ListEntitiesForPolicyPaginatorName,
ListGroupPoliciesPaginatorName,
ListGroupsForUserPaginatorName,
ListGroupsPaginatorName,
ListInstanceProfilesForRolePaginatorName,
ListInstanceProfilesPaginatorName,
ListMFADevicesPaginatorName,
ListPoliciesPaginatorName,
ListPolicyVersionsPaginatorName,
ListRolePoliciesPaginatorName,
ListRolesPaginatorName,
ListSSHPublicKeysPaginatorName,
ListServerCertificatesPaginatorName,
ListSigningCertificatesPaginatorName,
ListUserPoliciesPaginatorName,
ListUserTagsPaginatorName,
ListUsersPaginatorName,
ListVirtualMFADevicesPaginatorName,
PermissionsBoundaryAttachmentTypeType,
PolicyEvaluationDecisionTypeType,
PolicyExistsWaiterName,
PolicySourceTypeType,
PolicyUsageTypeType,
ReportFormatTypeType,
ReportStateTypeType,
RoleExistsWaiterName,
SimulateCustomPolicyPaginatorName,
SimulatePrincipalPolicyPaginatorName,
UserExistsWaiterName,
assignmentStatusTypeType,
encodingTypeType,
globalEndpointTokenVersionType,
jobStatusTypeType,
policyOwnerEntityTypeType,
policyScopeTypeType,
policyTypeType,
sortKeyTypeType,
statusTypeType,
summaryKeyTypeType,
IAMServiceName,
ServiceName,
ResourceServiceName,
PaginatorName,
WaiterName,
)
def check_value(value: AccessAdvisorUsageGranularityTypeType) -> bool:
...
```
### Typed dictionaries
`mypy_boto3_iam.type_defs` module contains structures and shapes assembled to
typed dictionaries for additional type checking.
```python
from mypy_boto3_iam.type_defs import (
AccessDetailTypeDef,
AccessKeyLastUsedTypeDef,
AccessKeyMetadataTypeDef,
AccessKeyTypeDef,
AddClientIDToOpenIDConnectProviderRequestRequestTypeDef,
AddRoleToInstanceProfileRequestInstanceProfileAddRoleTypeDef,
AddRoleToInstanceProfileRequestRequestTypeDef,
AddUserToGroupRequestGroupAddUserTypeDef,
AddUserToGroupRequestRequestTypeDef,
AddUserToGroupRequestUserAddGroupTypeDef,
AttachGroupPolicyRequestGroupAttachPolicyTypeDef,
AttachGroupPolicyRequestPolicyAttachGroupTypeDef,
AttachGroupPolicyRequestRequestTypeDef,
AttachRolePolicyRequestPolicyAttachRoleTypeDef,
AttachRolePolicyRequestRequestTypeDef,
AttachRolePolicyRequestRoleAttachPolicyTypeDef,
AttachUserPolicyRequestPolicyAttachUserTypeDef,
AttachUserPolicyRequestRequestTypeDef,
AttachUserPolicyRequestUserAttachPolicyTypeDef,
ResponseMetadataTypeDef,
AttachedPermissionsBoundaryTypeDef,
AttachedPolicyTypeDef,
ChangePasswordRequestRequestTypeDef,
ChangePasswordRequestServiceResourceChangePasswordTypeDef,
ContextEntryTypeDef,
CreateAccessKeyRequestRequestTypeDef,
CreateAccountAliasRequestRequestTypeDef,
CreateAccountAliasRequestServiceResourceCreateAccountAliasTypeDef,
CreateGroupRequestGroupCreateTypeDef,
CreateGroupRequestRequestTypeDef,
CreateGroupRequestServiceResourceCreateGroupTypeDef,
GroupTypeDef,
TagTypeDef,
CreateLoginProfileRequestLoginProfileCreateTypeDef,
CreateLoginProfileRequestRequestTypeDef,
CreateLoginProfileRequestUserCreateLoginProfileTypeDef,
LoginProfileTypeDef,
CreatePolicyVersionRequestPolicyCreateVersionTypeDef,
CreatePolicyVersionRequestRequestTypeDef,
PolicyVersionTypeDef,
CreateServiceLinkedRoleRequestRequestTypeDef,
CreateServiceSpecificCredentialRequestRequestTypeDef,
ServiceSpecificCredentialTypeDef,
DeactivateMFADeviceRequestRequestTypeDef,
DeleteAccessKeyRequestRequestTypeDef,
DeleteAccountAliasRequestRequestTypeDef,
DeleteGroupPolicyRequestRequestTypeDef,
DeleteGroupRequestRequestTypeDef,
DeleteInstanceProfileRequestRequestTypeDef,
DeleteLoginProfileRequestRequestTypeDef,
DeleteOpenIDConnectProviderRequestRequestTypeDef,
DeletePolicyRequestRequestTypeDef,
DeletePolicyVersionRequestRequestTypeDef,
DeleteRolePermissionsBoundaryRequestRequestTypeDef,
DeleteRolePolicyRequestRequestTypeDef,
DeleteRoleRequestRequestTypeDef,
DeleteSAMLProviderRequestRequestTypeDef,
DeleteSSHPublicKeyRequestRequestTypeDef,
DeleteServerCertificateRequestRequestTypeDef,
DeleteServiceLinkedRoleRequestRequestTypeDef,
DeleteServiceSpecificCredentialRequestRequestTypeDef,
DeleteSigningCertificateRequestRequestTypeDef,
DeleteUserPermissionsBoundaryRequestRequestTypeDef,
DeleteUserPolicyRequestRequestTypeDef,
DeleteUserRequestRequestTypeDef,
DeleteVirtualMFADeviceRequestRequestTypeDef,
RoleUsageTypeTypeDef,
DetachGroupPolicyRequestGroupDetachPolicyTypeDef,
DetachGroupPolicyRequestPolicyDetachGroupTypeDef,
DetachGroupPolicyRequestRequestTypeDef,
DetachRolePolicyRequestPolicyDetachRoleTypeDef,
DetachRolePolicyRequestRequestTypeDef,
DetachRolePolicyRequestRoleDetachPolicyTypeDef,
DetachUserPolicyRequestPolicyDetachUserTypeDef,
DetachUserPolicyRequestRequestTypeDef,
DetachUserPolicyRequestUserDetachPolicyTypeDef,
EnableMFADeviceRequestMfaDeviceAssociateTypeDef,
EnableMFADeviceRequestRequestTypeDef,
EnableMFADeviceRequestUserEnableMfaTypeDef,
EntityInfoTypeDef,
ErrorDetailsTypeDef,
OrganizationsDecisionDetailTypeDef,
PermissionsBoundaryDecisionDetailTypeDef,
GenerateOrganizationsAccessReportRequestRequestTypeDef,
GenerateServiceLastAccessedDetailsRequestRequestTypeDef,
GetAccessKeyLastUsedRequestRequestTypeDef,
PaginatorConfigTypeDef,
GetAccountAuthorizationDetailsRequestRequestTypeDef,
PasswordPolicyTypeDef,
GetContextKeysForCustomPolicyRequestRequestTypeDef,
GetContextKeysForPrincipalPolicyRequestRequestTypeDef,
GetGroupPolicyRequestRequestTypeDef,
GetGroupRequestRequestTypeDef,
WaiterConfigTypeDef,
GetInstanceProfileRequestRequestTypeDef,
GetLoginProfileRequestRequestTypeDef,
GetOpenIDConnectProviderRequestRequestTypeDef,
GetOrganizationsAccessReportRequestRequestTypeDef,
GetPolicyRequestRequestTypeDef,
GetPolicyVersionRequestRequestTypeDef,
GetRolePolicyRequestRequestTypeDef,
GetRoleRequestRequestTypeDef,
GetSAMLProviderRequestRequestTypeDef,
GetSSHPublicKeyRequestRequestTypeDef,
SSHPublicKeyTypeDef,
GetServerCertificateRequestRequestTypeDef,
GetServiceLastAccessedDetailsRequestRequestTypeDef,
GetServiceLastAccessedDetailsWithEntitiesRequestRequestTypeDef,
GetServiceLinkedRoleDeletionStatusRequestRequestTypeDef,
GetUserPolicyRequestRequestTypeDef,
GetUserRequestRequestTypeDef,
PolicyDetailTypeDef,
GroupPolicyRequestTypeDef,
ListAccessKeysRequestRequestTypeDef,
ListAccountAliasesRequestRequestTypeDef,
ListAttachedGroupPoliciesRequestRequestTypeDef,
ListAttachedRolePoliciesRequestRequestTypeDef,
ListAttachedUserPoliciesRequestRequestTypeDef,
ListEntitiesForPolicyRequestRequestTypeDef,
PolicyGroupTypeDef,
PolicyRoleTypeDef,
PolicyUserTypeDef,
ListGroupPoliciesRequestRequestTypeDef,
ListGroupsForUserRequestRequestTypeDef,
ListGroupsRequestRequestTypeDef,
ListInstanceProfileTagsRequestRequestTypeDef,
ListInstanceProfilesForRoleRequestRequestTypeDef,
ListInstanceProfilesRequestRequestTypeDef,
ListMFADeviceTagsRequestRequestTypeDef,
ListMFADevicesRequestRequestTypeDef,
MFADeviceTypeDef,
ListOpenIDConnectProviderTagsRequestRequestTypeDef,
OpenIDConnectProviderListEntryTypeDef,
PolicyGrantingServiceAccessTypeDef,
ListPoliciesGrantingServiceAccessRequestRequestTypeDef,
ListPoliciesRequestRequestTypeDef,
ListPolicyTagsRequestRequestTypeDef,
ListPolicyVersionsRequestRequestTypeDef,
ListRolePoliciesRequestRequestTypeDef,
ListRoleTagsRequestRequestTypeDef,
ListRolesRequestRequestTypeDef,
ListSAMLProviderTagsRequestRequestTypeDef,
SAMLProviderListEntryTypeDef,
ListSSHPublicKeysRequestRequestTypeDef,
SSHPublicKeyMetadataTypeDef,
ListServerCertificateTagsRequestRequestTypeDef,
ListServerCertificatesRequestRequestTypeDef,
ServerCertificateMetadataTypeDef,
ListServiceSpecificCredentialsRequestRequestTypeDef,
ServiceSpecificCredentialMetadataTypeDef,
ListSigningCertificatesRequestRequestTypeDef,
SigningCertificateTypeDef,
ListUserPoliciesRequestRequestTypeDef,
ListUserTagsRequestRequestTypeDef,
ListUsersRequestRequestTypeDef,
ListVirtualMFADevicesRequestRequestTypeDef,
PositionTypeDef,
PutGroupPolicyRequestGroupCreatePolicyTypeDef,
PutGroupPolicyRequestGroupPolicyPutTypeDef,
PutGroupPolicyRequestRequestTypeDef,
PutRolePermissionsBoundaryRequestRequestTypeDef,
PutRolePolicyRequestRequestTypeDef,
PutRolePolicyRequestRolePolicyPutTypeDef,
PutUserPermissionsBoundaryRequestRequestTypeDef,
PutUserPolicyRequestRequestTypeDef,
PutUserPolicyRequestUserCreatePolicyTypeDef,
PutUserPolicyRequestUserPolicyPutTypeDef,
RemoveClientIDFromOpenIDConnectProviderRequestRequestTypeDef,
RemoveRoleFromInstanceProfileRequestInstanceProfileRemoveRoleTypeDef,
RemoveRoleFromInstanceProfileRequestRequestTypeDef,
RemoveUserFromGroupRequestGroupRemoveUserTypeDef,
RemoveUserFromGroupRequestRequestTypeDef,
RemoveUserFromGroupRequestUserRemoveGroupTypeDef,
ResetServiceSpecificCredentialRequestRequestTypeDef,
ResyncMFADeviceRequestMfaDeviceResyncTypeDef,
ResyncMFADeviceRequestRequestTypeDef,
RoleLastUsedTypeDef,
RolePolicyRequestTypeDef,
TrackedActionLastAccessedTypeDef,
ServiceResourceAccessKeyPairRequestTypeDef,
ServiceResourceAccessKeyRequestTypeDef,
ServiceResourceAssumeRolePolicyRequestTypeDef,
ServiceResourceGroupPolicyRequestTypeDef,
ServiceResourceGroupRequestTypeDef,
ServiceResourceInstanceProfileRequestTypeDef,
ServiceResourceLoginProfileRequestTypeDef,
ServiceResourceMfaDeviceRequestTypeDef,
ServiceResourcePolicyRequestTypeDef,
ServiceResourcePolicyVersionRequestTypeDef,
ServiceResourceRolePolicyRequestTypeDef,
ServiceResourceRoleRequestTypeDef,
ServiceResourceSamlProviderRequestTypeDef,
ServiceResourceServerCertificateRequestTypeDef,
ServiceResourceSigningCertificateRequestTypeDef,
ServiceResourceUserPolicyRequestTypeDef,
ServiceResourceUserRequestTypeDef,
ServiceResourceVirtualMfaDeviceRequestTypeDef,
SetDefaultPolicyVersionRequestRequestTypeDef,
SetSecurityTokenServicePreferencesRequestRequestTypeDef,
UntagInstanceProfileRequestRequestTypeDef,
UntagMFADeviceRequestRequestTypeDef,
UntagOpenIDConnectProviderRequestRequestTypeDef,
UntagPolicyRequestRequestTypeDef,
UntagRoleRequestRequestTypeDef,
UntagSAMLProviderRequestRequestTypeDef,
UntagServerCertificateRequestRequestTypeDef,
UntagUserRequestRequestTypeDef,
UpdateAccessKeyRequestAccessKeyActivateTypeDef,
UpdateAccessKeyRequestAccessKeyDeactivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairActivateTypeDef,
UpdateAccessKeyRequestAccessKeyPairDeactivateTypeDef,
UpdateAccessKeyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestAccountPasswordPolicyUpdateTypeDef,
UpdateAccountPasswordPolicyRequestRequestTypeDef,
UpdateAccountPasswordPolicyRequestServiceResourceCreateAccountPasswordPolicyTypeDef,
UpdateAssumeRolePolicyRequestAssumeRolePolicyUpdateTypeDef,
UpdateAssumeRolePolicyRequestRequestTypeDef,
UpdateGroupRequestGroupUpdateTypeDef,
UpdateGroupRequestRequestTypeDef,
UpdateLoginProfileRequestLoginProfileUpdateTypeDef,
UpdateLoginProfileRequestRequestTypeDef,
UpdateOpenIDConnectProviderThumbprintRequestRequestTypeDef,
UpdateRoleDescriptionRequestRequestTypeDef,
UpdateRoleRequestRequestTypeDef,
UpdateSAMLProviderRequestRequestTypeDef,
UpdateSAMLProviderRequestSamlProviderUpdateTypeDef,
UpdateSSHPublicKeyRequestRequestTypeDef,
UpdateServerCertificateRequestRequestTypeDef,
UpdateServerCertificateRequestServerCertificateUpdateTypeDef,
UpdateServiceSpecificCredentialRequestRequestTypeDef,
UpdateSigningCertificateRequestRequestTypeDef,
UpdateSigningCertificateRequestSigningCertificateActivateTypeDef,
UpdateSigningCertificateRequestSigningCertificateDeactivateTypeDef,
UpdateUserRequestRequestTypeDef,
UpdateUserRequestUserUpdateTypeDef,
UploadSSHPublicKeyRequestRequestTypeDef,
UploadSigningCertificateRequestRequestTypeDef,
UploadSigningCertificateRequestServiceResourceCreateSigningCertificateTypeDef,
UserAccessKeyRequestTypeDef,
UserMfaDeviceRequestTypeDef,
UserPolicyRequestTypeDef,
UserSigningCertificateRequestTypeDef,
AttachedPermissionsBoundaryResponseMetadataTypeDef,
CreateAccessKeyResponseTypeDef,
DeleteServiceLinkedRoleResponseTypeDef,
EmptyResponseMetadataTypeDef,
GenerateCredentialReportResponseTypeDef,
GenerateOrganizationsAccessReportResponseTypeDef,
GenerateServiceLastAccessedDetailsResponseTypeDef,
GetAccessKeyLastUsedResponseTypeDef,
GetAccountSummaryResponseTypeDef,
GetContextKeysForPolicyResponseTypeDef,
GetCredentialReportResponseTypeDef,
GetGroupPolicyResponseTypeDef,
GetRolePolicyResponseTypeDef,
GetUserPolicyResponseTypeDef,
ListAccessKeysResponseTypeDef,
ListAccountAliasesResponseTypeDef,
ListGroupPoliciesResponseTypeDef,
ListRolePoliciesResponseTypeDef,
ListUserPoliciesResponseTypeDef,
RoleLastUsedResponseMetadataTypeDef,
ServerCertificateMetadataResponseMetadataTypeDef,
UpdateSAMLProviderResponseTypeDef,
ListAttachedGroupPoliciesResponseTypeDef,
ListAttachedRolePoliciesResponseTypeDef,
ListAttachedUserPoliciesResponseTypeDef,
SimulateCustomPolicyRequestRequestTypeDef,
SimulatePrincipalPolicyRequestRequestTypeDef,
CreateGroupResponseTypeDef,
ListGroupsForUserResponseTypeDef,
ListGroupsResponseTypeDef,
CreateInstanceProfileRequestRequestTypeDef,
CreateInstanceProfileRequestServiceResourceCreateInstanceProfileTypeDef,
CreateOpenIDConnectProviderRequestRequestTypeDef,
CreateOpenIDConnectProviderResponseTypeDef,
CreatePolicyRequestRequestTypeDef,
CreatePolicyRequestServiceResourceCreatePolicyTypeDef,
CreateRoleRequestRequestTypeDef,
CreateRoleRequestServiceResourceCreateRoleTypeDef,
CreateSAMLProviderRequestRequestTypeDef,
CreateSAMLProviderRequestServiceResourceCreateSamlProviderTypeDef,
CreateSAMLProviderResponseTypeDef,
CreateUserRequestRequestTypeDef,
CreateUserRequestServiceResourceCreateUserTypeDef,
CreateUserRequestUserCreateTypeDef,
CreateVirtualMFADeviceRequestRequestTypeDef,
CreateVirtualMFADeviceRequestServiceResourceCreateVirtualMfaDeviceTypeDef,
GetOpenIDConnectProviderResponseTypeDef,
GetSAMLProviderResponseTypeDef,
ListInstanceProfileTagsResponseTypeDef,
ListMFADeviceTagsResponseTypeDef,
ListOpenIDConnectProviderTagsResponseTypeDef,
ListPolicyTagsResponseTypeDef,
ListRoleTagsResponseTypeDef,
ListSAMLProviderTagsResponseTypeDef,
ListServerCertificateTagsResponseTypeDef,
ListUserTagsResponseTypeDef,
PolicyTypeDef,
TagInstanceProfileRequestRequestTypeDef,
TagMFADeviceRequestRequestTypeDef,
TagOpenIDConnectProviderRequestRequestTypeDef,
TagPolicyRequestRequestTypeDef,
TagRoleRequestRequestTypeDef,
TagSAMLProviderRequestRequestTypeDef,
TagServerCertificateRequestRequestTypeDef,
TagUserRequestRequestTypeDef,
UploadServerCertificateRequestRequestTypeDef,
UploadServerCertificateRequestServiceResourceCreateServerCertificateTypeDef,
UserResponseMetadataTypeDef,
UserTypeDef,
CreateLoginProfileResponseTypeDef,
GetLoginProfileResponseTypeDef,
CreatePolicyVersionResponseTypeDef,
GetPolicyVersionResponseTypeDef,
ListPolicyVersionsResponseTypeDef,
ManagedPolicyDetailTypeDef,
CreateServiceSpecificCredentialResponseTypeDef,
ResetServiceSpecificCredentialResponseTypeDef,
DeletionTaskFailureReasonTypeTypeDef,
EntityDetailsTypeDef,
GetOrganizationsAccessReportResponseTypeDef,
GetAccountAuthorizationDetailsRequestGetAccountAuthorizationDetailsPaginateTypeDef,
GetGroupRequestGetGroupPaginateTypeDef,
ListAccessKeysRequestListAccessKeysPaginateTypeDef,
ListAccountAliasesRequestListAccountAliasesPaginateTypeDef,
ListAttachedGroupPoliciesRequestListAttachedGroupPoliciesPaginateTypeDef,
ListAttachedRolePoliciesRequestListAttachedRolePoliciesPaginateTypeDef,
ListAttachedUserPoliciesRequestListAttachedUserPoliciesPaginateTypeDef,
ListEntitiesForPolicyRequestListEntitiesForPolicyPaginateTypeDef,
ListGroupPoliciesRequestListGroupPoliciesPaginateTypeDef,
ListGroupsForUserRequestListGroupsForUserPaginateTypeDef,
ListGroupsRequestListGroupsPaginateTypeDef,
ListInstanceProfilesForRoleRequestListInstanceProfilesForRolePaginateTypeDef,
ListInstanceProfilesRequestListInstanceProfilesPaginateTypeDef,
ListMFADevicesRequestListMFADevicesPaginateTypeDef,
ListPoliciesRequestListPoliciesPaginateTypeDef,
ListPolicyVersionsRequestListPolicyVersionsPaginateTypeDef,
ListRolePoliciesRequestListRolePoliciesPaginateTypeDef,
ListRolesRequestListRolesPaginateTypeDef,
ListSSHPublicKeysRequestListSSHPublicKeysPaginateTypeDef,
ListServerCertificatesRequestListServerCertificatesPaginateTypeDef,
ListSigningCertificatesRequestListSigningCertificatesPaginateTypeDef,
ListUserPoliciesRequestListUserPoliciesPaginateTypeDef,
ListUserTagsRequestListUserTagsPaginateTypeDef,
ListUsersRequestListUsersPaginateTypeDef,
ListVirtualMFADevicesRequestListVirtualMFADevicesPaginateTypeDef,
SimulateCustomPolicyRequestSimulateCustomPolicyPaginateTypeDef,
SimulatePrincipalPolicyRequestSimulatePrincipalPolicyPaginateTypeDef,
GetAccountPasswordPolicyResponseTypeDef,
GetInstanceProfileRequestInstanceProfileExistsWaitTypeDef,
GetPolicyRequestPolicyExistsWaitTypeDef,
GetRoleRequestRoleExistsWaitTypeDef,
GetUserRequestUserExistsWaitTypeDef,
GetSSHPublicKeyResponseTypeDef,
UploadSSHPublicKeyResponseTypeDef,
GroupDetailTypeDef,
UserDetailTypeDef,
ListEntitiesForPolicyResponseTypeDef,
ListMFADevicesResponseTypeDef,
ListOpenIDConnectProvidersResponseTypeDef,
ListPoliciesGrantingServiceAccessEntryTypeDef,
ListSAMLProvidersResponseTypeDef,
ListSSHPublicKeysResponseTypeDef,
ListServerCertificatesResponseTypeDef,
ServerCertificateTypeDef,
UploadServerCertificateResponseTypeDef,
ListServiceSpecificCredentialsResponseTypeDef,
ListSigningCertificatesResponseTypeDef,
UploadSigningCertificateResponseTypeDef,
StatementTypeDef,
RoleTypeDef,
ServiceLastAccessedTypeDef,
CreatePolicyResponseTypeDef,
GetPolicyResponseTypeDef,
ListPoliciesResponseTypeDef,
CreateUserResponseTypeDef,
GetGroupResponseTypeDef,
GetUserResponseTypeDef,
ListUsersResponseTypeDef,
VirtualMFADeviceTypeDef,
GetServiceLinkedRoleDeletionStatusResponseTypeDef,
GetServiceLastAccessedDetailsWithEntitiesResponseTypeDef,
ListPoliciesGrantingServiceAccessResponseTypeDef,
GetServerCertificateResponseTypeDef,
ResourceSpecificResultTypeDef,
CreateRoleResponseTypeDef,
CreateServiceLinkedRoleResponseTypeDef,
GetRoleResponseTypeDef,
InstanceProfileTypeDef,
ListRolesResponseTypeDef,
UpdateRoleDescriptionResponseTypeDef,
GetServiceLastAccessedDetailsResponseTypeDef,
CreateVirtualMFADeviceResponseTypeDef,
ListVirtualMFADevicesResponseTypeDef,
EvaluationResultTypeDef,
CreateInstanceProfileResponseTypeDef,
GetInstanceProfileResponseTypeDef,
ListInstanceProfilesForRoleResponseTypeDef,
ListInstanceProfilesResponseTypeDef,
RoleDetailTypeDef,
SimulatePolicyResponseTypeDef,
GetAccountAuthorizationDetailsResponseTypeDef,
)
def get_structure() -> AccessDetailTypeDef:
return {...}
```
## How it works
Fully automated
[mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder) carefully
generates type annotations for each service, patiently waiting for `boto3`
updates. It delivers a drop-in type annotations for you and makes sure that:
- All available `boto3` services are covered.
- Each public class and method of every `boto3` service gets valid type
annotations extracted from the documentation (blame `botocore` docs if types
are incorrect).
- Type annotations include up-to-date documentation.
- Link to documentation is provided for every method.
- Code is processed by [black](https://github.com/psf/black) and
[isort](https://github.com/PyCQA/isort) for readability.
## What's new
### Implemented features
- Fully type annotated `boto3`, `botocore` and `aiobotocore` libraries
- `mypy`, `pyright`, `VSCode`, `PyCharm`, `Sublime Text` and `Emacs`
compatibility
- `Client`, `ServiceResource`, `Resource`, `Waiter` `Paginator` type
annotations for each service
- Generated `TypeDefs` for each service
- Generated `Literals` for each service
- Auto discovery of types for `boto3.client` and `boto3.session` calls
- Auto discovery of types for `session.client` and `session.session` calls
- Auto discovery of types for `client.get_waiter` and `client.get_paginator`
calls
- Auto discovery of types for `ServiceResource` and `Resource` collections
- Auto discovery of types for `aiobotocore.Session.create_client` calls
### Latest changes
Builder changelog can be found in
[Releases](https://github.com/youtype/mypy_boto3_builder/releases).
## Versioning
`mypy-boto3-iam` version is the same as related `boto3` version and follows
[PEP 440](https://www.python.org/dev/peps/pep-0440/) format.
## Thank you
- [Allie Fitter](https://github.com/alliefitter) for
[boto3-type-annotations](https://pypi.org/project/boto3-type-annotations/),
this package is based on top of his work
- [black](https://github.com/psf/black) developers for an awesome formatting
tool
- [Timothy Edmund Crosley](https://github.com/timothycrosley) for
[isort](https://github.com/PyCQA/isort) and how flexible it is
- [mypy](https://github.com/python/mypy) developers for doing all dirty work
for us
- [pyright](https://github.com/microsoft/pyright) team for the new era of typed
Python
## Documentation
All services type annotations can be found in
[boto3 docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_iam/)
## Support and contributing
This package is auto-generated. Please reports any bugs or request new features
in [mypy-boto3-builder](https://github.com/youtype/mypy_boto3_builder/issues/)
repository.
%prep
%autosetup -n mypy-boto3-iam-1.26.97
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-mypy-boto3-iam -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Sun Apr 23 2023 Python_Bot - 1.26.97-1
- Package Spec generated