Skip to content

describe_instance_profiles async

describe_instance_profiles(
    *,
    config_overrides: Optional[AsyncDatabaseMigrationServiceClientConfig] = None,
    filters: Optional[FilterList] = None,
    max_records: Optional[IntegerOptional] = None,
    marker: Optional[String] = None,
) -> DescribeInstanceProfilesResponse

Returns a paginated list of instance profiles for your account in the current region.

Required permissions: dms:ListInstanceProfiles. For more information, see Actions, resources, and condition keys for Database Migration Service.

Parameters:

  • filters (Optional[FilterList], default: None ) –

    The filters to apply to the instance profiles.

    The following filter names are supported:

    • instance-profile-identifier – The instance profile name or ARN.

  • max_records (Optional[IntegerOptional], default: None ) –

    The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, DMS includes a pagination token in the response so that you can retrieve the remaining results.

  • marker (Optional[String], default: None ) –

    Specifies the unique pagination token that makes it possible to display the next page of results. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

    If Marker is returned by a previous response, there are more results available. The value of Marker is a unique pagination token for each page. To retrieve the next page, make the call again using the returned token and keeping all other arguments unchanged.

Raises:

Examples:

Describe instance profiles with a filter The following example retrieves the details of an instance profile identified by its ARN.

>>> await client.describe_instance_profiles(filters=[{'Name': 'instance-profile-identifier', 'Values': ['arn:aws:dms:us-east-1:111122223333:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRS']}])
Source code in docs_src/capo_database_migration_service/_services/async_database_migration_service.py
async def describe_instance_profiles(
    self,
    *,
    config_overrides: Optional[AsyncDatabaseMigrationServiceClientConfig] = None,
    filters: Optional[
        "capo_database_migration_service.types.filter_list.FilterList"
    ] = None,
    max_records: Optional[
        "capo_database_migration_service.types.integer_optional.IntegerOptional"
    ] = None,
    marker: Optional["capo_database_migration_service.types.string.String"] = None,
) -> "capo_database_migration_service.types.describe_instance_profiles_response.DescribeInstanceProfilesResponse":
    """<p>Returns a paginated list of instance profiles for your account in the current region.</p> <p> <b>Required permissions:</b> <code>dms:ListInstanceProfiles</code>. For more information, see <a href="https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsdatabasemigrationservice.html">Actions, resources, and condition keys for Database Migration Service</a>.</p>

    Args:
        filters: <p>The filters to apply to the instance profiles.</p> <p>The following filter names are supported:</p> <ul> <li> <p> <code>instance-profile-identifier</code> – The instance profile name or ARN.</p> </li> </ul>
        max_records: <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, DMS includes a pagination token in the response so that you can retrieve the remaining results.</p>
        marker: <p>Specifies the unique pagination token that makes it possible to display the next page of results. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p> <p>If <code>Marker</code> is returned by a previous response, there are more results available. The value of <code>Marker</code> is a unique pagination token for each page. To retrieve the next page, make the call again using the returned token and keeping all other arguments unchanged.</p>

    Raises:
        capo_database_migration_service.errors.access_denied_fault.AccessDeniedFault: <p>DMS was denied access to the endpoint. Check that the role is correctly configured.</p>
        capo_database_migration_service.errors.failed_dependency_fault.FailedDependencyFault: <p>A dependency threw an exception.</p>
        capo_database_migration_service.errors.resource_not_found_fault.ResourceNotFoundFault: <p>The resource could not be found.</p>
        capo_database_migration_service.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        Describe instance profiles with a filter
        The following example retrieves the details of an instance profile identified by its ARN.

        >>> await client.describe_instance_profiles(filters=[{'Name': 'instance-profile-identifier', 'Values': ['arn:aws:dms:us-east-1:111122223333:instance-profile:EXAMPLEABCDEFGHIJKLMNOPQRS']}])
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_database_migration_service.types.describe_instance_profiles_message.DescribeInstanceProfilesMessage]",
    ) -> AsyncOperationResponse[
        "capo_database_migration_service.types.describe_instance_profiles_response.DescribeInstanceProfilesResponse"
    ]:
        import capo_database_migration_service._operations.amazon_dm_sv20160101.describe_instance_profiles

        (
            output,
            http_response,
        ) = await capo_database_migration_service._operations.amazon_dm_sv20160101.describe_instance_profiles.async_describe_instance_profiles(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DescribeInstanceProfiles")
    )
    input_: capo_database_migration_service.types.describe_instance_profiles_message.DescribeInstanceProfilesMessage = {}
    if filters is not None:
        input_["filters"] = filters
    if max_records is not None:
        input_["max_records"] = max_records
    if marker is not None:
        input_["marker"] = marker

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output