Closes #21702: Include originating HTTP request in outbound webhook context data

This commit is contained in:
Jeremy Stretch
2026-03-20 14:56:17 -04:00
parent 1f336eee2e
commit 6210ded1ea
2 changed files with 10 additions and 0 deletions
+3
View File
@@ -370,6 +370,9 @@ class EventRuleTest(APITestCase):
self.assertEqual(body['data']['name'], 'Site 1') self.assertEqual(body['data']['name'], 'Site 1')
self.assertEqual(body['data']['foo'], 1) self.assertEqual(body['data']['foo'], 1)
self.assertEqual(body['context']['foo'], 123) # From netbox.tests.dummy_plugin self.assertEqual(body['context']['foo'], 123) # From netbox.tests.dummy_plugin
self.assertEqual(body['request']['id'], str(request_id))
self.assertEqual(body['request']['method'], 'GET')
self.assertEqual(body['request']['user'], 'testuser')
return HttpResponse() return HttpResponse()
+7
View File
@@ -57,6 +57,13 @@ def send_webhook(event_rule, object_type, event_type, data, timestamp, username,
'request_id': request.id if request else None, 'request_id': request.id if request else None,
'data': data, 'data': data,
} }
if request:
context['request'] = {
'id': str(request.id) if request.id else None,
'method': request.method,
'path': request.path,
'user': str(request.user),
}
if snapshots: if snapshots:
context.update({ context.update({
'snapshots': snapshots 'snapshots': snapshots