diff --git a/src/test/cord-api/Tests/WorkflowValidations/ATT_Workflow.robot b/src/test/cord-api/Tests/WorkflowValidations/ATT_Workflow.robot
index fd9ffd0..53e464d 100644
--- a/src/test/cord-api/Tests/WorkflowValidations/ATT_Workflow.robot
+++ b/src/test/cord-api/Tests/WorkflowValidations/ATT_Workflow.robot
@@ -59,17 +59,17 @@
 
 Activate Non-Whitelisted ONU
     [Documentation]    Validate that activating an ONU not in whitelist sets onu device to DISABLED
-    Send Kafka Event    onu.events    {'status': 'activated','serial_number': '${onu_invalid_sn}','uni_port_id': ${uniportno}, 'of_dpid': '${deviceId}'}
+    Send Kafka Event    onu.events    {'status': 'activated','serialNumber': '${onu_invalid_sn}','portNumber': ${uniportno}, 'deviceId': '${deviceId}'}
     Wait Until Keyword Succeeds    30s    5s    Validate ONU Device Status    ${onu_invalid_sn}    DISABLED
 
 Activate Whitelisted ONU in Wrong Location
     [Documentation]    Validate that activating an ONU in the whitelist but in the wrong location DISABLES the onu device
-    Send Kafka Event    onu.events    {'status': 'activated', 'serial_number': '${onu_serial_no}','uni_port_id': 52, 'of_dpid': 'wrongofdpid'}
+    Send Kafka Event    onu.events    {'status': 'activated', 'serialNumber': '${onu_serial_no}','portNumber': 52, 'deviceId': 'wrongofdpid'}
     Wait Until Keyword Succeeds    30s    5s    Validate ONU Device Status    ${onu_serial_no}    DISABLED
 
 Activate Whitelisted ONU
     [Documentation]    Validate that activating an ONU in the whitelist creates a attworkflow-driver-serviceinstance
-    Send Kafka Event    onu.events    {'status': 'activated','serial_number': '${onu_serial_no}','uni_port_id': ${uniportno}, 'of_dpid': '${deviceId}'}
+    Send Kafka Event    onu.events    {'status': 'activated','serialNumber': '${onu_serial_no}','portNumber': ${uniportno}, 'deviceId': '${deviceId}'}
     ${att_wf_driver_si_id}=    Wait Until Keyword Succeeds    30s    5s    Get ATT Service Instance ID    ${onu_serial_no}    AWAITING
     Wait Until Keyword Succeeds    60s    5s    Validate ONU Device Status    ${onu_serial_no}    ENABLED
 
diff --git a/src/test/cord-api/Tests/xos-scale-tests/utils/devices.py b/src/test/cord-api/Tests/xos-scale-tests/utils/devices.py
index a9978c8..86c6e6b 100644
--- a/src/test/cord-api/Tests/xos-scale-tests/utils/devices.py
+++ b/src/test/cord-api/Tests/xos-scale-tests/utils/devices.py
@@ -210,9 +210,9 @@
         for onu in self.onus.all():
             ev = {
                 'status': 'activated',
-                'serial_number': onu['serial_number'],
-                'uni_port_id': self._find_uni_by_onu(onu)['port_no'],
-                'of_dpid': self._find_olt_by_onu(onu)['of_id'],
+                'serialNumber': onu['serial_number'],
+                'portNumber': str(self._find_uni_by_onu(onu)['port_no']),
+                'deviceId': self._find_olt_by_onu(onu)['of_id'],
             }
             events.append(ev)
         return events
@@ -258,4 +258,4 @@
     def _find_olt_by_onu(self, onu):
         pon_port = self._find_pon_port_by_onu(onu)
         Olt = Query()
-        return self.olts.search(Olt.id == pon_port['olt_device_id'])[0]
\ No newline at end of file
+        return self.olts.search(Olt.id == pon_port['olt_device_id'])[0]
