← Files Zuora Coding AgentARCHIVED FILE

references/meter-operators/SCRIPT_AGGREGATOR.json

2.17 KB · Oct 2, 2026 · 00:30 UTC

↓ Download file

{
  "key": "SCRIPT_AGGREGATOR",
  "nodeType": "PROCESSOR",
  "operatorType": "SCRIPT_AGGREGATOR",
  "metadata": {
    "triggerType": "Timeout",
    "timeoutType": "EventTime",
    "timeoutDuration": "1 hour",
    "eventTimeField": null,
    "eventTimeFormat": null,
    "groupFields": [],
    "language": "JS",
    "source": null,
    "schemaId": null
  },
  "label": "Script Aggregator",
  "assumptions": [
    {
      "path": "triggerType",
      "value": "Timeout",
      "reason": "Time-based windowing is the most common aggregation trigger.",
      "confidence": 0.9
    },
    {
      "path": "timeoutType",
      "value": "EventTime",
      "reason": "Event time produces accurate billing windows regardless of processing delays.",
      "confidence": 0.9
    },
    {
      "path": "timeoutDuration",
      "value": "1 hour",
      "reason": "Hourly aggregation is the platform default window.",
      "confidence": 0.8
    },
    {
      "path": "language",
      "value": "JS",
      "reason": "JS is the default scripting language; PYTHON is also supported.",
      "confidence": 0.85
    }
  ],
  "generatable_fields": {
    "source": "Generate this from the user's business logic description. See references/meter-operator-codegen.md for the SCRIPT_AGGREGATOR signature and examples. Ask the user: what aggregation logic should run (SUM/COUNT/custom), what are the input fields, and what should the output event look like?"
  },
  "blockers": [
    {
      "path": "language",
      "message": "SCRIPT_AGGREGATOR language: 'JS' or 'PYTHON'? Default: JS."
    },
    {
      "path": "groupFields",
      "message": "SCRIPT_AGGREGATOR groupFields is required. Which fields define the aggregation groups? (e.g. [\"accountNumber\"])"
    },
    {
      "path": "eventTimeField",
      "when": {
        "path": "timeoutType",
        "equals": "EventTime"
      },
      "message": "SCRIPT_AGGREGATOR eventTimeField is required when timeoutType is EventTime. Which event field contains the timestamp?"
    },
    {
      "path": "schemaId",
      "message": "SCRIPT_AGGREGATOR schemaId is required. Which output schema should the aggregated events conform to? (get the ID from the Schema Registry)"
    }
  ]
}

SHA-256: c215d71cd356766a2b690f23d52043d628eba4716add09380dd95001ac4df30c