def METHOD_NAME(request):
    payload = jsgz_load(request.body)
    items = []
    for dps_query in payload["items"]:
        if "start" in dps_query and "end" in dps_query:
            start, end = dps_query["start"], dps_query["end"]
        else:
            start, end = payload["start"], payload["end"]
        limit = 10000
        if "limit" in dps_query:
            limit = dps_query["limit"]
        elif "limit" in payload:
            limit = payload["limit"]
        dps = generate_datapoints(start, end)
        dps = dps[:limit]
        items.append({"isString": False, "datapoints": dps})
    response = {"items": items}
    return 200, {}, json.dumps(response)