Skip to content

list_distributions_by_key_group async

list_distributions_by_key_group(
    key_group_id: string,
    *,
    config_overrides: Optional[AsyncCloudFrontClientConfig] = None,
    marker: Optional[string] = None,
    max_items: Optional[integer] = None,
) -> ListDistributionsByKeyGroupResult

Gets a list of distribution IDs for distributions that have a cache behavior that references the specified key group.

You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the NextMarker value from the current response as the Marker value in the subsequent request.

Parameters:

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

    Use this field when paginating results to indicate where to begin in your list of distribution IDs. The response includes distribution IDs in the list that occur after the marker. To get the next page of the list, set this field's value to the value of NextMarker from the current page's response.

  • max_items (Optional[integer], default: None ) –

    The maximum number of distribution IDs that you want in the response.

  • key_group_id (string) –

    The ID of the key group whose associated distribution IDs you are listing.

Raises:

Source code in docs_src/capo_cloudfront/_services/async_cloud_front.py
async def list_distributions_by_key_group(
    self,
    key_group_id: "capo_cloudfront.types.string.string",
    *,
    config_overrides: Optional[AsyncCloudFrontClientConfig] = None,
    marker: Optional["capo_cloudfront.types.string.string"] = None,
    max_items: Optional["capo_cloudfront.types.integer.integer"] = None,
) -> "capo_cloudfront.types.list_distributions_by_key_group_result.ListDistributionsByKeyGroupResult":
    """<p>Gets a list of distribution IDs for distributions that have a cache behavior that references the specified key group.</p> <p>You can optionally specify the maximum number of items to receive in the response. If the total number of items in the list exceeds the maximum that you specify, or the default maximum, the response is paginated. To get the next page of items, send a subsequent request that specifies the <code>NextMarker</code> value from the current response as the <code>Marker</code> value in the subsequent request.</p>

    Args:
        marker: <p>Use this field when paginating results to indicate where to begin in your list of distribution IDs. The response includes distribution IDs in the list that occur after the marker. To get the next page of the list, set this field's value to the value of <code>NextMarker</code> from the current page's response.</p>
        max_items: <p>The maximum number of distribution IDs that you want in the response.</p>
        key_group_id: <p>The ID of the key group whose associated distribution IDs you are listing.</p>

    Raises:
        capo_cloudfront.errors.invalid_argument.InvalidArgument: <p>An argument is invalid.</p>
        capo_cloudfront.errors.no_such_resource.NoSuchResource: <p>A resource that was specified is not valid.</p>
        capo_cloudfront.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_cloudfront.types.list_distributions_by_key_group_request.ListDistributionsByKeyGroupRequest]",
    ) -> AsyncOperationResponse[
        "capo_cloudfront.types.list_distributions_by_key_group_result.ListDistributionsByKeyGroupResult"
    ]:
        import capo_cloudfront._operations.cloudfront2020_05_31.list_distributions_by_key_group

        (
            output,
            http_response,
        ) = await capo_cloudfront._operations.cloudfront2020_05_31.list_distributions_by_key_group.async_list_distributions_by_key_group(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("ListDistributionsByKeyGroup")
    )
    input_: capo_cloudfront.types.list_distributions_by_key_group_request.ListDistributionsByKeyGroupRequest = {
        "key_group_id": key_group_id
    }
    if marker is not None:
        input_["marker"] = marker
    if max_items is not None:
        input_["max_items"] = max_items

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