diff --git a/src/core/schedules/schedulejson.py b/src/core/schedules/schedulejson.py
index 63063eae8895a1a935b19114ba8aca7f75a7259f..32a603c5d234601037fd0a900b9bec47b1e08e6d 100644
--- a/src/core/schedules/schedulejson.py
+++ b/src/core/schedules/schedulejson.py
@@ -22,6 +22,7 @@ class ScheduleJSONSupport(BaseScheduleSupport):
         'kind':     ('string', 'assembly', False, 'kind of events, either `assembly` or `official` or `sos` or `lightning`'),
         'headers':  ('dict',   {},         False, 'HTTP headers to send with the request e.g. Authorization'),
         'auth':     ('string', None,       False, 'HTTP Authentification header e.g. `Token 123456`'),
+        'legacy_id_offset': ('int', None,  False, 'Offset to add to the legacy integer `id` to avoid collisions with other sources'),
     }
     # fmt: on
 
@@ -91,10 +92,16 @@ class ScheduleJSONSupport(BaseScheduleSupport):
         }
 
     def computed_data(self, event: dict):
-        # TODO only add feedback_url if feedback is enabled via configuraiton_fields in ScheduleSource config
+        data = {}
+        data['origin_url'] = event['url']
+
+        # add feedback_url if feedback is enabled via configuraiton_fields in ScheduleSource config
         if self.conf_value('feedback'):
-            return {'feedback_url': f"{event['url']}feedback/"}
-        return {}
+            data['feedback_url'] = f"{event['url']}feedback/"
+        if self.conf_value('legacy_id_offset'):
+            data['id'] = event['id'] + self.conf_value('legacy_id_offset')
+
+        return data
 
 
 class ScheduleJSON: