Event collector API - fields and mapping #1348
Replies: 2 comments 6 replies
Field mappingNote: some of these models / model fields don't exist yet and would need to be created. Those are written in italic. Sensor data
Event dataEvery event that is sent to the API is first saved into a RawEvent model. The raw data is dumped into this model immediately, then an async django-q task does post-processing later. The fields of the RawEvent model could (and maybe should) be named identically to those in the API. The mapping from RawEvent to our existing models could be like this:
Fields that are mapped to "None" can be excluded from post-processing right now. So they only get written into RawEvent and nothing else happens to them. I think this is fine for now. We can make use of them later, when we come up with further ideas. Also, we should create a admin page for the RawEvent, such that we can explore them in die admin interface. These fields should be visible there. |
|
Hi @regulartim :), I hope you're doing well. Could you please take a look at this mapping when you have a moment? I have been looking into the remaining fields that are currently mapped to None and wanted to discuss a few mappings that seem fairly straightforward and less debatable before I start implementing them.
For the remaining fields:
These are the mappings I was planning to tackle if they make sense. I'd appreciate your thoughts and guidance before I proceed further. Thank you :) |
Uh oh!
There was an error while loading. Please reload this page.
This discussion serves the purpose of designing the Event collector API specification details. It will be implemented by @drona-gyawali during GSoC 2026. Here is my current draft of the API's endpoints and fields:
Sensor initialization endpoint
A sensor is defined as a single instance of a honeypot software or a single backend that collects data from honeytokens. Every Sensor must be created by an API call (except T-Pots). Every Sensor has a owner (except T-Pots): the person owning the API key that was used creating it.
Required fields
Optional fields
Response
Event collection endpoint
An event is defined as a single interaction with a sensor. Events that belong to the same logical unit, share a common session.
Required fields
Optional fields
Fallback fields
Process flow
All reactions