// This file is autogenerated, DO NOT EDIT
// Use `node scripts/generate-docs-examples.mjs` to generate the docs examples

[source, js]
----
const response = await client.index({
  index: "exams",
  refresh: "true",
  document: {
    grade: 100,
    weight: [2, 3],
  },
});
console.log(response);

const response1 = await client.index({
  index: "exams",
  refresh: "true",
  document: {
    grade: 80,
    weight: 3,
  },
});
console.log(response1);

const response2 = await client.search({
  index: "exams",
  filter_path: "aggregations",
  size: 0,
  runtime_mappings: {
    "weight.combined": {
      type: "double",
      script:
        "\n        double s = 0;\n        for (double w : doc['weight']) {\n          s += w;\n        }\n        emit(s);\n      ",
    },
  },
  aggs: {
    weighted_grade: {
      weighted_avg: {
        value: {
          script: "doc.grade.value + 1",
        },
        weight: {
          field: "weight.combined",
        },
      },
    },
  },
});
console.log(response2);
----
