Skip to content

iter_get_usage async

iter_get_usage(
    usage_plan_id: String,
    start_date: String,
    end_date: String,
    *,
    config_overrides: Optional[AsyncAPIGatewayClientConfig] = None,
    key_id: Optional[String] = None,
    position: Optional[String] = None,
    limit: Optional[NullableInteger] = None,
) -> AsyncIterator[tuple[String, ListOfUsage]]
Source code in docs_src/capo_api_gateway/_services/async_api_gateway.py
async def iter_get_usage(
    self,
    usage_plan_id: "capo_api_gateway.types.string.String",
    start_date: "capo_api_gateway.types.string.String",
    end_date: "capo_api_gateway.types.string.String",
    *,
    config_overrides: Optional[AsyncAPIGatewayClientConfig] = None,
    key_id: Optional["capo_api_gateway.types.string.String"] = None,
    position: Optional["capo_api_gateway.types.string.String"] = None,
    limit: Optional[
        "capo_api_gateway.types.nullable_integer.NullableInteger"
    ] = None,
) -> "AsyncIterator[tuple[capo_api_gateway.types.string.String, capo_api_gateway.types.list_of_usage.ListOfUsage]]":
    _token = position
    while True:
        _response = await self.get_usage(
            usage_plan_id,
            start_date,
            end_date,
            config_overrides=config_overrides,
            key_id=key_id,
            position=_token,
            limit=limit,
        )
        _page = _resolve_path(_response, ("items",))
        for _k, _v in (_page or {}).items():
            yield (_k, _v)
        _token = _resolve_path(_response, ("position",))
        if not _token:
            break