Metadata-Version: 2.4
Name: rboto-guardduty
Version: 0.1.0
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Framework :: AsyncIO
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: 3.15
Classifier: Programming Language :: Rust
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Dist: rboto==0.1.0
License-File: LICENSE
Summary: rboto: async-only, typed Python client for Amazon GuardDuty, powered by Rust. Alpha preview.
Keywords: rboto,aws,guardduty,asyncio,typing,rust
Home-Page: https://github.com/ferrumio/rboto
Author-email: Leandro Cavalcante Damascena <leandro.damascena@gmail.com>
License-Expression: Apache-2.0
Requires-Python: >=3.12
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Changelog, https://github.com/ferrumio/rboto/releases
Project-URL: Documentation, https://ferrumio.github.io/rboto/clients/
Project-URL: Homepage, https://ferrumio.github.io/rboto/
Project-URL: Issues, https://github.com/ferrumio/rboto/issues
Project-URL: Repository, https://github.com/ferrumio/rboto

<!-- Generated by rboto-codegen. Edit the descriptor, template, or example source. -->
# rboto-guardduty

rboto is an independent project maintained by [Ferrumio](https://github.com/ferrumio).
It is not affiliated with, sponsored by, or endorsed by Amazon Web Services (AWS).

**Preview (Alpha).** rboto is under active development. APIs may change between releases.

rboto provides an **async-only, typed Python client for Amazon GuardDuty**,
powered by Rust. This package contains `GuardDutyClient` and
**102 operations**.

## Installation

Requires Python 3.12 or newer and a native wheel for your Python version and platform.

```bash
python -m pip install "rboto[guardduty]"
```

You can also install `rboto-guardduty` directly; it installs the matching
`rboto` package. Only the selected service is installed.

These are the package names to use when a release is available on your package index.
If your index has no release yet, follow the
[source installation instructions](https://ferrumio.github.io/rboto/getting-started/).

## Usage

Configure credentials through your environment, shared profile, or workload role.
The example uses `us-east-1`; select a region where your service and resources are available.
Resource names, identifiers, input files, and model IDs in the example are placeholders
to replace with your own.

```python
import asyncio

from rboto import GuardDutyClient


async def main() -> None:
    client = GuardDutyClient(region="us-east-1")
    response = await client.list_detectors(max_results=10)
    print(response.detector_ids)


if __name__ == "__main__":
    asyncio.run(main())
```

In an application with an event loop, call `await main()` instead of `asyncio.run(main())`.
Reuse the client across calls. Constructing a client does not send a request.

## API conventions

- Import the client with `from rboto import GuardDutyClient`.
- Every operation is asynchronous: use `await client.method(...)`.
- Operation arguments are keyword-only and use the Python names listed below.
- Structured inputs use typed dictionaries and tagged unions from `rboto_guardduty.types`.
- Regular responses expose typed attributes; `response.to_dict()` converts them to a dictionary.
- Event-stream responses may be typed dictionaries containing async iterators. Follow the
  declared return type; consume event streams with `async for`.
- Byte streams are consumed asynchronously. `await stream.read()` buffers the complete body;
  iterate the stream when processing a large response.
- Direct operation calls return one page.
- Use `async for page in client.paginators.method(...)` for supported paginated operations.
  Paginators accept the same typed arguments as the corresponding client method.

- Catch modeled exceptions from `rboto_guardduty.exceptions`. Their `error_code`,
  `message`, and `operation_name` identify service failures.

Clients also accept `profile`, `endpoint_url`, or shared `Session` settings.
See [configuration](https://ferrumio.github.io/rboto/guides/configuration/),
[errors](https://ferrumio.github.io/rboto/guides/errors/), and
[streaming](https://ferrumio.github.io/rboto/guides/streaming/).

## Operations

This is the complete operation catalog for this generated package. “Required arguments”
lists arguments without defaults in the Python signature. Service-side conditions may
require additional arguments. Each method links to its complete signature, including
optional arguments. Nested input definitions are in `rboto_guardduty.types`;
native response definitions are in the package's `_native.pyi`.

| Method | Required arguments | Return type |
|---|---|---|
| [`accept_administrator_invitation`](#accept_administrator_invitation) | <code>detector_id: str</code>, <code>administrator_id: str</code>, <code>invitation_id: str</code> | <code>AcceptAdministratorInvitationOutput</code> |
| [`accept_invitation`](#accept_invitation) | <code>detector_id: str</code>, <code>master_id: str</code>, <code>invitation_id: str</code> | <code>AcceptInvitationOutput</code> |
| [`archive_findings`](#archive_findings) | <code>detector_id: str</code>, <code>finding_ids: _Sequence[str]</code> | <code>ArchiveFindingsOutput</code> |
| [`create_custom_detection_rule_association`](#create_custom_detection_rule_association) | <code>rule_id: str</code>, <code>mode: AssociationMode</code> | <code>CreateCustomDetectionRuleAssociationOutput</code> |
| [`create_custom_detection_rule_org_configuration`](#create_custom_detection_rule_org_configuration) | <code>rule_id: str</code>, <code>mode: AssociationMode</code> | <code>CreateCustomDetectionRuleOrgConfigurationOutput</code> |
| [`create_detector`](#create_detector) | <code>enable: bool</code> | <code>CreateDetectorOutput</code> |
| [`create_filter`](#create_filter) | <code>detector_id: str</code>, <code>name: str</code>, <code>finding_criteria: FindingCriteria</code> | <code>CreateFilterOutput</code> |
| [`create_investigation`](#create_investigation) | <code>detector_id: str</code>, <code>trigger_prompt: str</code> | <code>CreateInvestigationOutput</code> |
| [`create_ip_set`](#create_ip_set) | <code>detector_id: str</code>, <code>name: str</code>, <code>format: IpSetFormat</code>, <code>location: str</code>, <code>activate: bool</code> | <code>CreateIPSetOutput</code> |
| [`create_malware_protection_plan`](#create_malware_protection_plan) | <code>role: str</code>, <code>protected_resource: CreateProtectedResource</code> | <code>CreateMalwareProtectionPlanOutput</code> |
| [`create_members`](#create_members) | <code>detector_id: str</code>, <code>account_details: _Sequence[AccountDetail]</code> | <code>CreateMembersOutput</code> |
| [`create_publishing_destination`](#create_publishing_destination) | <code>detector_id: str</code>, <code>destination_type: DestinationType</code>, <code>destination_properties: DestinationProperties</code> | <code>CreatePublishingDestinationOutput</code> |
| [`create_sample_findings`](#create_sample_findings) | <code>detector_id: str</code> | <code>CreateSampleFindingsOutput</code> |
| [`create_threat_entity_set`](#create_threat_entity_set) | <code>detector_id: str</code>, <code>name: str</code>, <code>format: ThreatEntitySetFormat</code>, <code>location: str</code>, <code>activate: bool</code> | <code>CreateThreatEntitySetOutput</code> |
| [`create_threat_intel_set`](#create_threat_intel_set) | <code>detector_id: str</code>, <code>name: str</code>, <code>format: ThreatIntelSetFormat</code>, <code>location: str</code>, <code>activate: bool</code> | <code>CreateThreatIntelSetOutput</code> |
| [`create_trusted_entity_set`](#create_trusted_entity_set) | <code>detector_id: str</code>, <code>name: str</code>, <code>format: TrustedEntitySetFormat</code>, <code>location: str</code>, <code>activate: bool</code> | <code>CreateTrustedEntitySetOutput</code> |
| [`decline_invitations`](#decline_invitations) | <code>account_ids: _Sequence[str]</code> | <code>DeclineInvitationsOutput</code> |
| [`delete_custom_detection_rule_association`](#delete_custom_detection_rule_association) | <code>rule_id: str</code>, <code>association_id: str</code> | <code>DeleteCustomDetectionRuleAssociationOutput</code> |
| [`delete_custom_detection_rule_org_configuration`](#delete_custom_detection_rule_org_configuration) | <code>rule_id: str</code>, <code>mode: AssociationMode</code> | <code>DeleteCustomDetectionRuleOrgConfigurationOutput</code> |
| [`delete_detector`](#delete_detector) | <code>detector_id: str</code> | <code>DeleteDetectorOutput</code> |
| [`delete_filter`](#delete_filter) | <code>detector_id: str</code>, <code>filter_name: str</code> | <code>DeleteFilterOutput</code> |
| [`delete_invitations`](#delete_invitations) | <code>account_ids: _Sequence[str]</code> | <code>DeleteInvitationsOutput</code> |
| [`delete_ip_set`](#delete_ip_set) | <code>detector_id: str</code>, <code>ip_set_id: str</code> | <code>DeleteIPSetOutput</code> |
| [`delete_malware_protection_plan`](#delete_malware_protection_plan) | <code>malware_protection_plan_id: str</code> | <code>None</code> |
| [`delete_members`](#delete_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>DeleteMembersOutput</code> |
| [`delete_publishing_destination`](#delete_publishing_destination) | <code>detector_id: str</code>, <code>destination_id: str</code> | <code>DeletePublishingDestinationOutput</code> |
| [`delete_threat_entity_set`](#delete_threat_entity_set) | <code>detector_id: str</code>, <code>threat_entity_set_id: str</code> | <code>DeleteThreatEntitySetOutput</code> |
| [`delete_threat_intel_set`](#delete_threat_intel_set) | <code>detector_id: str</code>, <code>threat_intel_set_id: str</code> | <code>DeleteThreatIntelSetOutput</code> |
| [`delete_trusted_entity_set`](#delete_trusted_entity_set) | <code>detector_id: str</code>, <code>trusted_entity_set_id: str</code> | <code>DeleteTrustedEntitySetOutput</code> |
| [`describe_malware_scans`](#describe_malware_scans) | <code>detector_id: str</code> | <code>DescribeMalwareScansOutput</code> |
| [`describe_organization_configuration`](#describe_organization_configuration) | <code>detector_id: str</code> | <code>DescribeOrganizationConfigurationOutput</code> |
| [`describe_publishing_destination`](#describe_publishing_destination) | <code>detector_id: str</code>, <code>destination_id: str</code> | <code>DescribePublishingDestinationOutput</code> |
| [`disable_organization_admin_account`](#disable_organization_admin_account) | <code>admin_account_id: str</code> | <code>DisableOrganizationAdminAccountOutput</code> |
| [`disassociate_from_administrator_account`](#disassociate_from_administrator_account) | <code>detector_id: str</code> | <code>DisassociateFromAdministratorAccountOutput</code> |
| [`disassociate_from_master_account`](#disassociate_from_master_account) | <code>detector_id: str</code> | <code>DisassociateFromMasterAccountOutput</code> |
| [`disassociate_members`](#disassociate_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>DisassociateMembersOutput</code> |
| [`enable_organization_admin_account`](#enable_organization_admin_account) | <code>admin_account_id: str</code> | <code>EnableOrganizationAdminAccountOutput</code> |
| [`get_administrator_account`](#get_administrator_account) | <code>detector_id: str</code> | <code>GetAdministratorAccountOutput</code> |
| [`get_coverage_statistics`](#get_coverage_statistics) | <code>detector_id: str</code>, <code>statistics_type: _Sequence[CoverageStatisticsType]</code> | <code>GetCoverageStatisticsOutput</code> |
| [`get_custom_detection_rule`](#get_custom_detection_rule) | <code>rule_id: str</code> | <code>GetCustomDetectionRuleOutput</code> |
| [`get_custom_detection_rule_association`](#get_custom_detection_rule_association) | <code>rule_id: str</code>, <code>association_id: str</code> | <code>GetCustomDetectionRuleAssociationOutput</code> |
| [`get_custom_detection_rule_org_configuration`](#get_custom_detection_rule_org_configuration) | <code>rule_id: str</code>, <code>mode: AssociationMode</code> | <code>GetCustomDetectionRuleOrgConfigurationOutput</code> |
| [`get_detector`](#get_detector) | <code>detector_id: str</code> | <code>GetDetectorOutput</code> |
| [`get_filter`](#get_filter) | <code>detector_id: str</code>, <code>filter_name: str</code> | <code>GetFilterOutput</code> |
| [`get_findings`](#get_findings) | <code>detector_id: str</code>, <code>finding_ids: _Sequence[str]</code> | <code>GetFindingsOutput</code> |
| [`get_findings_statistics`](#get_findings_statistics) | <code>detector_id: str</code> | <code>GetFindingsStatisticsOutput</code> |
| [`get_investigation`](#get_investigation) | <code>detector_id: str</code>, <code>investigation_id: str</code> | <code>GetInvestigationOutput</code> |
| [`get_invitations_count`](#get_invitations_count) | None | <code>GetInvitationsCountOutput</code> |
| [`get_ip_set`](#get_ip_set) | <code>detector_id: str</code>, <code>ip_set_id: str</code> | <code>GetIPSetOutput</code> |
| [`get_malware_protection_plan`](#get_malware_protection_plan) | <code>malware_protection_plan_id: str</code> | <code>GetMalwareProtectionPlanOutput</code> |
| [`get_malware_scan`](#get_malware_scan) | <code>scan_id: str</code> | <code>GetMalwareScanOutput</code> |
| [`get_malware_scan_settings`](#get_malware_scan_settings) | <code>detector_id: str</code> | <code>GetMalwareScanSettingsOutput</code> |
| [`get_master_account`](#get_master_account) | <code>detector_id: str</code> | <code>GetMasterAccountOutput</code> |
| [`get_member_detectors`](#get_member_detectors) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>GetMemberDetectorsOutput</code> |
| [`get_members`](#get_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>GetMembersOutput</code> |
| [`get_organization_statistics`](#get_organization_statistics) | None | <code>GetOrganizationStatisticsOutput</code> |
| [`get_remaining_free_trial_days`](#get_remaining_free_trial_days) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>GetRemainingFreeTrialDaysOutput</code> |
| [`get_threat_entity_set`](#get_threat_entity_set) | <code>detector_id: str</code>, <code>threat_entity_set_id: str</code> | <code>GetThreatEntitySetOutput</code> |
| [`get_threat_intel_set`](#get_threat_intel_set) | <code>detector_id: str</code>, <code>threat_intel_set_id: str</code> | <code>GetThreatIntelSetOutput</code> |
| [`get_trusted_entity_set`](#get_trusted_entity_set) | <code>detector_id: str</code>, <code>trusted_entity_set_id: str</code> | <code>GetTrustedEntitySetOutput</code> |
| [`get_usage_statistics`](#get_usage_statistics) | <code>detector_id: str</code>, <code>usage_statistic_type: UsageStatisticType</code>, <code>usage_criteria: UsageCriteria</code> | <code>GetUsageStatisticsOutput</code> |
| [`invite_members`](#invite_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>InviteMembersOutput</code> |
| [`list_coverage`](#list_coverage) | <code>detector_id: str</code> | <code>ListCoverageOutput</code> |
| [`list_custom_detection_rule_associations`](#list_custom_detection_rule_associations) | None | <code>ListCustomDetectionRuleAssociationsOutput</code> |
| [`list_custom_detection_rule_org_configurations`](#list_custom_detection_rule_org_configurations) | None | <code>ListCustomDetectionRuleOrgConfigurationsOutput</code> |
| [`list_custom_detection_rules`](#list_custom_detection_rules) | None | <code>ListCustomDetectionRulesOutput</code> |
| [`list_detectors`](#list_detectors) | None | <code>ListDetectorsOutput</code> |
| [`list_filters`](#list_filters) | <code>detector_id: str</code> | <code>ListFiltersOutput</code> |
| [`list_findings`](#list_findings) | <code>detector_id: str</code> | <code>ListFindingsOutput</code> |
| [`list_investigations`](#list_investigations) | <code>detector_id: str</code> | <code>ListInvestigationsOutput</code> |
| [`list_invitations`](#list_invitations) | None | <code>ListInvitationsOutput</code> |
| [`list_ip_sets`](#list_ip_sets) | <code>detector_id: str</code> | <code>ListIPSetsOutput</code> |
| [`list_malware_protection_plans`](#list_malware_protection_plans) | None | <code>ListMalwareProtectionPlansOutput</code> |
| [`list_malware_scans`](#list_malware_scans) | None | <code>ListMalwareScansOutput</code> |
| [`list_members`](#list_members) | <code>detector_id: str</code> | <code>ListMembersOutput</code> |
| [`list_organization_admin_accounts`](#list_organization_admin_accounts) | None | <code>ListOrganizationAdminAccountsOutput</code> |
| [`list_publishing_destinations`](#list_publishing_destinations) | <code>detector_id: str</code> | <code>ListPublishingDestinationsOutput</code> |
| [`list_tags_for_resource`](#list_tags_for_resource) | <code>resource_arn: str</code> | <code>ListTagsForResourceOutput</code> |
| [`list_threat_entity_sets`](#list_threat_entity_sets) | <code>detector_id: str</code> | <code>ListThreatEntitySetsOutput</code> |
| [`list_threat_intel_sets`](#list_threat_intel_sets) | <code>detector_id: str</code> | <code>ListThreatIntelSetsOutput</code> |
| [`list_trusted_entity_sets`](#list_trusted_entity_sets) | <code>detector_id: str</code> | <code>ListTrustedEntitySetsOutput</code> |
| [`send_object_malware_scan`](#send_object_malware_scan) | None | <code>SendObjectMalwareScanOutput</code> |
| [`start_malware_scan`](#start_malware_scan) | <code>resource_arn: str</code> | <code>StartMalwareScanOutput</code> |
| [`start_monitoring_members`](#start_monitoring_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>StartMonitoringMembersOutput</code> |
| [`stop_monitoring_members`](#stop_monitoring_members) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>StopMonitoringMembersOutput</code> |
| [`tag_resource`](#tag_resource) | <code>resource_arn: str</code>, <code>tags: dict[str, str]</code> | <code>TagResourceOutput</code> |
| [`unarchive_findings`](#unarchive_findings) | <code>detector_id: str</code>, <code>finding_ids: _Sequence[str]</code> | <code>UnarchiveFindingsOutput</code> |
| [`untag_resource`](#untag_resource) | <code>resource_arn: str</code>, <code>tag_keys: _Sequence[str]</code> | <code>UntagResourceOutput</code> |
| [`update_custom_detection_rule_association`](#update_custom_detection_rule_association) | <code>rule_id: str</code>, <code>association_id: str</code>, <code>mode: AssociationMode</code> | <code>UpdateCustomDetectionRuleAssociationOutput</code> |
| [`update_custom_detection_rule_org_configuration`](#update_custom_detection_rule_org_configuration) | <code>rule_id: str</code>, <code>mode: AssociationMode</code> | <code>UpdateCustomDetectionRuleOrgConfigurationOutput</code> |
| [`update_detector`](#update_detector) | <code>detector_id: str</code> | <code>UpdateDetectorOutput</code> |
| [`update_filter`](#update_filter) | <code>detector_id: str</code>, <code>filter_name: str</code> | <code>UpdateFilterOutput</code> |
| [`update_findings_feedback`](#update_findings_feedback) | <code>detector_id: str</code>, <code>finding_ids: _Sequence[str]</code>, <code>feedback: Feedback</code> | <code>UpdateFindingsFeedbackOutput</code> |
| [`update_ip_set`](#update_ip_set) | <code>detector_id: str</code>, <code>ip_set_id: str</code> | <code>UpdateIPSetOutput</code> |
| [`update_malware_protection_plan`](#update_malware_protection_plan) | <code>malware_protection_plan_id: str</code> | <code>None</code> |
| [`update_malware_scan_settings`](#update_malware_scan_settings) | <code>detector_id: str</code> | <code>UpdateMalwareScanSettingsOutput</code> |
| [`update_member_detectors`](#update_member_detectors) | <code>detector_id: str</code>, <code>account_ids: _Sequence[str]</code> | <code>UpdateMemberDetectorsOutput</code> |
| [`update_organization_configuration`](#update_organization_configuration) | <code>detector_id: str</code> | <code>UpdateOrganizationConfigurationOutput</code> |
| [`update_publishing_destination`](#update_publishing_destination) | <code>detector_id: str</code>, <code>destination_id: str</code> | <code>UpdatePublishingDestinationOutput</code> |
| [`update_threat_entity_set`](#update_threat_entity_set) | <code>detector_id: str</code>, <code>threat_entity_set_id: str</code> | <code>UpdateThreatEntitySetOutput</code> |
| [`update_threat_intel_set`](#update_threat_intel_set) | <code>detector_id: str</code>, <code>threat_intel_set_id: str</code> | <code>UpdateThreatIntelSetOutput</code> |
| [`update_trusted_entity_set`](#update_trusted_entity_set) | <code>detector_id: str</code>, <code>trusted_entity_set_id: str</code> | <code>UpdateTrustedEntitySetOutput</code> |

## Complete signatures

### accept_administrator_invitation

```python
async def accept_administrator_invitation(
    *,
    detector_id: str,
    administrator_id: str,
    invitation_id: str,
) -> AcceptAdministratorInvitationOutput: ...
```


### accept_invitation

```python
async def accept_invitation(
    *,
    detector_id: str,
    master_id: str,
    invitation_id: str,
) -> AcceptInvitationOutput: ...
```


### archive_findings

```python
async def archive_findings(
    *,
    detector_id: str,
    finding_ids: _Sequence[str],
) -> ArchiveFindingsOutput: ...
```


### create_custom_detection_rule_association

```python
async def create_custom_detection_rule_association(
    *,
    rule_id: str,
    mode: AssociationMode,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
) -> CreateCustomDetectionRuleAssociationOutput: ...
```


### create_custom_detection_rule_org_configuration

```python
async def create_custom_detection_rule_org_configuration(
    *,
    rule_id: str,
    mode: AssociationMode,
    include_account_ids: _Sequence[str] | None = None,
    exclude_account_ids: _Sequence[str] | None = None,
    client_token: str | None = None,
) -> CreateCustomDetectionRuleOrgConfigurationOutput: ...
```


### create_detector

```python
async def create_detector(
    *,
    enable: bool,
    client_token: str | None = None,
    finding_publishing_frequency: FindingPublishingFrequency | None = None,
    data_sources: DataSourceConfigurations | None = None,
    tags: dict[str, str] | None = None,
    features: _Sequence[DetectorFeatureConfiguration] | None = None,
) -> CreateDetectorOutput: ...
```


### create_filter

```python
async def create_filter(
    *,
    detector_id: str,
    name: str,
    finding_criteria: FindingCriteria,
    description: str | None = None,
    action: FilterAction | None = None,
    rank: int | None = None,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
) -> CreateFilterOutput: ...
```


### create_investigation

```python
async def create_investigation(
    *,
    detector_id: str,
    trigger_prompt: str,
    client_token: str | None = None,
) -> CreateInvestigationOutput: ...
```


### create_ip_set

```python
async def create_ip_set(
    *,
    detector_id: str,
    name: str,
    format: IpSetFormat,
    location: str,
    activate: bool,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
    expected_bucket_owner: str | None = None,
) -> CreateIPSetOutput: ...
```


### create_malware_protection_plan

```python
async def create_malware_protection_plan(
    *,
    role: str,
    protected_resource: CreateProtectedResource,
    client_token: str | None = None,
    actions: MalwareProtectionPlanActions | None = None,
    tags: dict[str, str] | None = None,
) -> CreateMalwareProtectionPlanOutput: ...
```


### create_members

```python
async def create_members(
    *,
    detector_id: str,
    account_details: _Sequence[AccountDetail],
) -> CreateMembersOutput: ...
```


### create_publishing_destination

```python
async def create_publishing_destination(
    *,
    detector_id: str,
    destination_type: DestinationType,
    destination_properties: DestinationProperties,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
) -> CreatePublishingDestinationOutput: ...
```


### create_sample_findings

```python
async def create_sample_findings(
    *,
    detector_id: str,
    finding_types: _Sequence[str] | None = None,
) -> CreateSampleFindingsOutput: ...
```


### create_threat_entity_set

```python
async def create_threat_entity_set(
    *,
    detector_id: str,
    name: str,
    format: ThreatEntitySetFormat,
    location: str,
    activate: bool,
    expected_bucket_owner: str | None = None,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
) -> CreateThreatEntitySetOutput: ...
```


### create_threat_intel_set

```python
async def create_threat_intel_set(
    *,
    detector_id: str,
    name: str,
    format: ThreatIntelSetFormat,
    location: str,
    activate: bool,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
    expected_bucket_owner: str | None = None,
) -> CreateThreatIntelSetOutput: ...
```


### create_trusted_entity_set

```python
async def create_trusted_entity_set(
    *,
    detector_id: str,
    name: str,
    format: TrustedEntitySetFormat,
    location: str,
    activate: bool,
    expected_bucket_owner: str | None = None,
    client_token: str | None = None,
    tags: dict[str, str] | None = None,
) -> CreateTrustedEntitySetOutput: ...
```


### decline_invitations

```python
async def decline_invitations(
    *,
    account_ids: _Sequence[str],
) -> DeclineInvitationsOutput: ...
```


### delete_custom_detection_rule_association

```python
async def delete_custom_detection_rule_association(
    *,
    rule_id: str,
    association_id: str,
) -> DeleteCustomDetectionRuleAssociationOutput: ...
```


### delete_custom_detection_rule_org_configuration

```python
async def delete_custom_detection_rule_org_configuration(
    *,
    rule_id: str,
    mode: AssociationMode,
) -> DeleteCustomDetectionRuleOrgConfigurationOutput: ...
```


### delete_detector

```python
async def delete_detector(
    *,
    detector_id: str,
) -> DeleteDetectorOutput: ...
```


### delete_filter

```python
async def delete_filter(
    *,
    detector_id: str,
    filter_name: str,
) -> DeleteFilterOutput: ...
```


### delete_invitations

```python
async def delete_invitations(
    *,
    account_ids: _Sequence[str],
) -> DeleteInvitationsOutput: ...
```


### delete_ip_set

```python
async def delete_ip_set(
    *,
    detector_id: str,
    ip_set_id: str,
) -> DeleteIPSetOutput: ...
```


### delete_malware_protection_plan

```python
async def delete_malware_protection_plan(
    *,
    malware_protection_plan_id: str,
) -> None: ...
```


### delete_members

```python
async def delete_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> DeleteMembersOutput: ...
```


### delete_publishing_destination

```python
async def delete_publishing_destination(
    *,
    detector_id: str,
    destination_id: str,
) -> DeletePublishingDestinationOutput: ...
```


### delete_threat_entity_set

```python
async def delete_threat_entity_set(
    *,
    detector_id: str,
    threat_entity_set_id: str,
) -> DeleteThreatEntitySetOutput: ...
```


### delete_threat_intel_set

```python
async def delete_threat_intel_set(
    *,
    detector_id: str,
    threat_intel_set_id: str,
) -> DeleteThreatIntelSetOutput: ...
```


### delete_trusted_entity_set

```python
async def delete_trusted_entity_set(
    *,
    detector_id: str,
    trusted_entity_set_id: str,
) -> DeleteTrustedEntitySetOutput: ...
```


### describe_malware_scans

```python
async def describe_malware_scans(
    *,
    detector_id: str,
    next_token: str | None = None,
    max_results: int | None = None,
    filter_criteria: FilterCriteria | None = None,
    sort_criteria: SortCriteria | None = None,
) -> DescribeMalwareScansOutput: ...
```

Also available as `client.paginators.describe_malware_scans(...)`, returning an
async iterator of the response type above.


### describe_organization_configuration

```python
async def describe_organization_configuration(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> DescribeOrganizationConfigurationOutput: ...
```

Also available as `client.paginators.describe_organization_configuration(...)`, returning an
async iterator of the response type above.


### describe_publishing_destination

```python
async def describe_publishing_destination(
    *,
    detector_id: str,
    destination_id: str,
) -> DescribePublishingDestinationOutput: ...
```


### disable_organization_admin_account

```python
async def disable_organization_admin_account(
    *,
    admin_account_id: str,
) -> DisableOrganizationAdminAccountOutput: ...
```


### disassociate_from_administrator_account

```python
async def disassociate_from_administrator_account(
    *,
    detector_id: str,
) -> DisassociateFromAdministratorAccountOutput: ...
```


### disassociate_from_master_account

```python
async def disassociate_from_master_account(
    *,
    detector_id: str,
) -> DisassociateFromMasterAccountOutput: ...
```


### disassociate_members

```python
async def disassociate_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> DisassociateMembersOutput: ...
```


### enable_organization_admin_account

```python
async def enable_organization_admin_account(
    *,
    admin_account_id: str,
) -> EnableOrganizationAdminAccountOutput: ...
```


### get_administrator_account

```python
async def get_administrator_account(
    *,
    detector_id: str,
) -> GetAdministratorAccountOutput: ...
```


### get_coverage_statistics

```python
async def get_coverage_statistics(
    *,
    detector_id: str,
    statistics_type: _Sequence[CoverageStatisticsType],
    filter_criteria: CoverageFilterCriteria | None = None,
) -> GetCoverageStatisticsOutput: ...
```


### get_custom_detection_rule

```python
async def get_custom_detection_rule(
    *,
    rule_id: str,
) -> GetCustomDetectionRuleOutput: ...
```


### get_custom_detection_rule_association

```python
async def get_custom_detection_rule_association(
    *,
    rule_id: str,
    association_id: str,
) -> GetCustomDetectionRuleAssociationOutput: ...
```


### get_custom_detection_rule_org_configuration

```python
async def get_custom_detection_rule_org_configuration(
    *,
    rule_id: str,
    mode: AssociationMode,
) -> GetCustomDetectionRuleOrgConfigurationOutput: ...
```


### get_detector

```python
async def get_detector(
    *,
    detector_id: str,
) -> GetDetectorOutput: ...
```


### get_filter

```python
async def get_filter(
    *,
    detector_id: str,
    filter_name: str,
) -> GetFilterOutput: ...
```


### get_findings

```python
async def get_findings(
    *,
    detector_id: str,
    finding_ids: _Sequence[str],
    sort_criteria: SortCriteria | None = None,
) -> GetFindingsOutput: ...
```


### get_findings_statistics

```python
async def get_findings_statistics(
    *,
    detector_id: str,
    finding_statistic_types: _Sequence[FindingStatisticType] | None = None,
    finding_criteria: FindingCriteria | None = None,
    group_by: GroupByType | None = None,
    order_by: OrderBy | None = None,
    max_results: int | None = None,
) -> GetFindingsStatisticsOutput: ...
```


### get_investigation

```python
async def get_investigation(
    *,
    detector_id: str,
    investigation_id: str,
) -> GetInvestigationOutput: ...
```


### get_invitations_count

```python
async def get_invitations_count() -> GetInvitationsCountOutput: ...
```


### get_ip_set

```python
async def get_ip_set(
    *,
    detector_id: str,
    ip_set_id: str,
) -> GetIPSetOutput: ...
```


### get_malware_protection_plan

```python
async def get_malware_protection_plan(
    *,
    malware_protection_plan_id: str,
) -> GetMalwareProtectionPlanOutput: ...
```


### get_malware_scan

```python
async def get_malware_scan(
    *,
    scan_id: str,
) -> GetMalwareScanOutput: ...
```


### get_malware_scan_settings

```python
async def get_malware_scan_settings(
    *,
    detector_id: str,
) -> GetMalwareScanSettingsOutput: ...
```


### get_master_account

```python
async def get_master_account(
    *,
    detector_id: str,
) -> GetMasterAccountOutput: ...
```


### get_member_detectors

```python
async def get_member_detectors(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> GetMemberDetectorsOutput: ...
```


### get_members

```python
async def get_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> GetMembersOutput: ...
```


### get_organization_statistics

```python
async def get_organization_statistics() -> GetOrganizationStatisticsOutput: ...
```


### get_remaining_free_trial_days

```python
async def get_remaining_free_trial_days(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> GetRemainingFreeTrialDaysOutput: ...
```


### get_threat_entity_set

```python
async def get_threat_entity_set(
    *,
    detector_id: str,
    threat_entity_set_id: str,
) -> GetThreatEntitySetOutput: ...
```


### get_threat_intel_set

```python
async def get_threat_intel_set(
    *,
    detector_id: str,
    threat_intel_set_id: str,
) -> GetThreatIntelSetOutput: ...
```


### get_trusted_entity_set

```python
async def get_trusted_entity_set(
    *,
    detector_id: str,
    trusted_entity_set_id: str,
) -> GetTrustedEntitySetOutput: ...
```


### get_usage_statistics

```python
async def get_usage_statistics(
    *,
    detector_id: str,
    usage_statistic_type: UsageStatisticType,
    usage_criteria: UsageCriteria,
    unit: str | None = None,
    max_results: int | None = None,
    next_token: str | None = None,
) -> GetUsageStatisticsOutput: ...
```

Also available as `client.paginators.get_usage_statistics(...)`, returning an
async iterator of the response type above.


### invite_members

```python
async def invite_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
    disable_email_notification: bool | None = None,
    message: str | None = None,
) -> InviteMembersOutput: ...
```


### list_coverage

```python
async def list_coverage(
    *,
    detector_id: str,
    next_token: str | None = None,
    max_results: int | None = None,
    filter_criteria: CoverageFilterCriteria | None = None,
    sort_criteria: CoverageSortCriteria | None = None,
) -> ListCoverageOutput: ...
```

Also available as `client.paginators.list_coverage(...)`, returning an
async iterator of the response type above.


### list_custom_detection_rule_associations

```python
async def list_custom_detection_rule_associations(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
    rule_id: str | None = None,
    mode: AssociationMode | None = None,
) -> ListCustomDetectionRuleAssociationsOutput: ...
```

Also available as `client.paginators.list_custom_detection_rule_associations(...)`, returning an
async iterator of the response type above.


### list_custom_detection_rule_org_configurations

```python
async def list_custom_detection_rule_org_configurations(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
    status: DetectionRuleConfigurationStatus | None = None,
) -> ListCustomDetectionRuleOrgConfigurationsOutput: ...
```

Also available as `client.paginators.list_custom_detection_rule_org_configurations(...)`, returning an
async iterator of the response type above.


### list_custom_detection_rules

```python
async def list_custom_detection_rules(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
    filters: _Sequence[DetectionRuleFilter] | None = None,
) -> ListCustomDetectionRulesOutput: ...
```

Also available as `client.paginators.list_custom_detection_rules(...)`, returning an
async iterator of the response type above.


### list_detectors

```python
async def list_detectors(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListDetectorsOutput: ...
```

Also available as `client.paginators.list_detectors(...)`, returning an
async iterator of the response type above.


### list_filters

```python
async def list_filters(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListFiltersOutput: ...
```

Also available as `client.paginators.list_filters(...)`, returning an
async iterator of the response type above.


### list_findings

```python
async def list_findings(
    *,
    detector_id: str,
    finding_criteria: FindingCriteria | None = None,
    sort_criteria: SortCriteria | None = None,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListFindingsOutput: ...
```

Also available as `client.paginators.list_findings(...)`, returning an
async iterator of the response type above.


### list_investigations

```python
async def list_investigations(
    *,
    detector_id: str,
    sort_criteria: InvestigationSortCriteria | None = None,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListInvestigationsOutput: ...
```

Also available as `client.paginators.list_investigations(...)`, returning an
async iterator of the response type above.


### list_invitations

```python
async def list_invitations(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListInvitationsOutput: ...
```

Also available as `client.paginators.list_invitations(...)`, returning an
async iterator of the response type above.


### list_ip_sets

```python
async def list_ip_sets(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListIPSetsOutput: ...
```

Also available as `client.paginators.list_ip_sets(...)`, returning an
async iterator of the response type above.


### list_malware_protection_plans

```python
async def list_malware_protection_plans(
    *,
    next_token: str | None = None,
) -> ListMalwareProtectionPlansOutput: ...
```


### list_malware_scans

```python
async def list_malware_scans(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
    filter_criteria: ListMalwareScansFilterCriteria | None = None,
    sort_criteria: SortCriteria | None = None,
) -> ListMalwareScansOutput: ...
```

Also available as `client.paginators.list_malware_scans(...)`, returning an
async iterator of the response type above.


### list_members

```python
async def list_members(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
    only_associated: str | None = None,
) -> ListMembersOutput: ...
```

Also available as `client.paginators.list_members(...)`, returning an
async iterator of the response type above.


### list_organization_admin_accounts

```python
async def list_organization_admin_accounts(
    *,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListOrganizationAdminAccountsOutput: ...
```

Also available as `client.paginators.list_organization_admin_accounts(...)`, returning an
async iterator of the response type above.


### list_publishing_destinations

```python
async def list_publishing_destinations(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListPublishingDestinationsOutput: ...
```

Also available as `client.paginators.list_publishing_destinations(...)`, returning an
async iterator of the response type above.


### list_tags_for_resource

```python
async def list_tags_for_resource(
    *,
    resource_arn: str,
) -> ListTagsForResourceOutput: ...
```


### list_threat_entity_sets

```python
async def list_threat_entity_sets(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListThreatEntitySetsOutput: ...
```

Also available as `client.paginators.list_threat_entity_sets(...)`, returning an
async iterator of the response type above.


### list_threat_intel_sets

```python
async def list_threat_intel_sets(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListThreatIntelSetsOutput: ...
```

Also available as `client.paginators.list_threat_intel_sets(...)`, returning an
async iterator of the response type above.


### list_trusted_entity_sets

```python
async def list_trusted_entity_sets(
    *,
    detector_id: str,
    max_results: int | None = None,
    next_token: str | None = None,
) -> ListTrustedEntitySetsOutput: ...
```

Also available as `client.paginators.list_trusted_entity_sets(...)`, returning an
async iterator of the response type above.


### send_object_malware_scan

```python
async def send_object_malware_scan(
    *,
    s3_object: S3ObjectForSendObjectMalwareScan | None = None,
) -> SendObjectMalwareScanOutput: ...
```


### start_malware_scan

```python
async def start_malware_scan(
    *,
    resource_arn: str,
    client_token: str | None = None,
    scan_configuration: StartMalwareScanConfiguration | None = None,
) -> StartMalwareScanOutput: ...
```


### start_monitoring_members

```python
async def start_monitoring_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> StartMonitoringMembersOutput: ...
```


### stop_monitoring_members

```python
async def stop_monitoring_members(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
) -> StopMonitoringMembersOutput: ...
```


### tag_resource

```python
async def tag_resource(
    *,
    resource_arn: str,
    tags: dict[str, str],
) -> TagResourceOutput: ...
```


### unarchive_findings

```python
async def unarchive_findings(
    *,
    detector_id: str,
    finding_ids: _Sequence[str],
) -> UnarchiveFindingsOutput: ...
```


### untag_resource

```python
async def untag_resource(
    *,
    resource_arn: str,
    tag_keys: _Sequence[str],
) -> UntagResourceOutput: ...
```


### update_custom_detection_rule_association

```python
async def update_custom_detection_rule_association(
    *,
    rule_id: str,
    association_id: str,
    mode: AssociationMode,
) -> UpdateCustomDetectionRuleAssociationOutput: ...
```


### update_custom_detection_rule_org_configuration

```python
async def update_custom_detection_rule_org_configuration(
    *,
    rule_id: str,
    mode: AssociationMode,
    include_account_ids: _Sequence[str] | None = None,
    exclude_account_ids: _Sequence[str] | None = None,
) -> UpdateCustomDetectionRuleOrgConfigurationOutput: ...
```


### update_detector

```python
async def update_detector(
    *,
    detector_id: str,
    enable: bool | None = None,
    finding_publishing_frequency: FindingPublishingFrequency | None = None,
    data_sources: DataSourceConfigurations | None = None,
    features: _Sequence[DetectorFeatureConfiguration] | None = None,
) -> UpdateDetectorOutput: ...
```


### update_filter

```python
async def update_filter(
    *,
    detector_id: str,
    filter_name: str,
    description: str | None = None,
    action: FilterAction | None = None,
    rank: int | None = None,
    finding_criteria: FindingCriteria | None = None,
) -> UpdateFilterOutput: ...
```


### update_findings_feedback

```python
async def update_findings_feedback(
    *,
    detector_id: str,
    finding_ids: _Sequence[str],
    feedback: Feedback,
    comments: str | None = None,
) -> UpdateFindingsFeedbackOutput: ...
```


### update_ip_set

```python
async def update_ip_set(
    *,
    detector_id: str,
    ip_set_id: str,
    name: str | None = None,
    location: str | None = None,
    activate: bool | None = None,
    expected_bucket_owner: str | None = None,
) -> UpdateIPSetOutput: ...
```


### update_malware_protection_plan

```python
async def update_malware_protection_plan(
    *,
    malware_protection_plan_id: str,
    role: str | None = None,
    actions: MalwareProtectionPlanActions | None = None,
    protected_resource: UpdateProtectedResource | None = None,
) -> None: ...
```


### update_malware_scan_settings

```python
async def update_malware_scan_settings(
    *,
    detector_id: str,
    scan_resource_criteria: ScanResourceCriteria | None = None,
    ebs_snapshot_preservation: EbsSnapshotPreservation | None = None,
) -> UpdateMalwareScanSettingsOutput: ...
```


### update_member_detectors

```python
async def update_member_detectors(
    *,
    detector_id: str,
    account_ids: _Sequence[str],
    data_sources: DataSourceConfigurations | None = None,
    features: _Sequence[MemberFeaturesConfiguration] | None = None,
) -> UpdateMemberDetectorsOutput: ...
```


### update_organization_configuration

```python
async def update_organization_configuration(
    *,
    detector_id: str,
    auto_enable: bool | None = None,
    data_sources: OrganizationDataSourceConfigurations | None = None,
    features: _Sequence[OrganizationFeatureConfiguration] | None = None,
    auto_enable_organization_members: AutoEnableMembers | None = None,
) -> UpdateOrganizationConfigurationOutput: ...
```


### update_publishing_destination

```python
async def update_publishing_destination(
    *,
    detector_id: str,
    destination_id: str,
    destination_properties: DestinationProperties | None = None,
) -> UpdatePublishingDestinationOutput: ...
```


### update_threat_entity_set

```python
async def update_threat_entity_set(
    *,
    detector_id: str,
    threat_entity_set_id: str,
    name: str | None = None,
    location: str | None = None,
    expected_bucket_owner: str | None = None,
    activate: bool | None = None,
) -> UpdateThreatEntitySetOutput: ...
```


### update_threat_intel_set

```python
async def update_threat_intel_set(
    *,
    detector_id: str,
    threat_intel_set_id: str,
    name: str | None = None,
    location: str | None = None,
    activate: bool | None = None,
    expected_bucket_owner: str | None = None,
) -> UpdateThreatIntelSetOutput: ...
```


### update_trusted_entity_set

```python
async def update_trusted_entity_set(
    *,
    detector_id: str,
    trusted_entity_set_id: str,
    name: str | None = None,
    location: str | None = None,
    expected_bucket_owner: str | None = None,
    activate: bool | None = None,
) -> UpdateTrustedEntitySetOutput: ...
```


## Links

- [Service guide](https://ferrumio.github.io/rboto/clients/)
- [Repository](https://github.com/ferrumio/rboto)
- [Issues](https://github.com/ferrumio/rboto/issues)
- [Releases](https://github.com/ferrumio/rboto/releases)

Licensed under Apache-2.0.

