# Models

Model summaries, fields, relationships, usage

# Models Overview

This project includes the following Eloquent models, each representing a key part of the system's architecture:

<div class="overflow-x-auto contain-inline-size" id="bkmrk-model-purpose-%2F-desc"><table data-end="1774" data-start="285"><thead data-end="331" data-start="285"><tr data-end="331" data-start="285"><th data-end="306" data-start="285">Model</th><th data-end="331" data-start="306">Purpose / Description</th></tr></thead><tbody data-end="1774" data-start="380"><tr data-end="452" data-start="380"><td>`Agent`</td><td>Represents remote scanning or reporting agents.</td></tr><tr data-end="531" data-start="453"><td>`AgentGroup`</td><td>Groups agents for easier configuration and targeting.</td></tr><tr data-end="603" data-start="532"><td>`AutoDeleteRule`</td><td>Defines automatic deletion logic for old data.</td></tr><tr data-end="675" data-start="604"><td>`Blocklist`</td><td>Stores IPs flagged as malicious or suspicious.</td></tr><tr data-end="771" data-start="676"><td>`Config`</td><td>Represents configuration entries, either file-based or database-based.</td></tr><tr data-end="839" data-start="772"><td>`ConfigTarget`</td><td>Associates configs with agents or systems.</td></tr><tr data-end="925" data-start="840"><td>`DataFeed`</td><td>Represents external data sources (e.g., threat intel feeds).</td></tr><tr data-end="1004" data-start="926"><td>`ExecutionTarget`</td><td>Tracks where specific actions or rules were executed.</td></tr><tr data-end="1078" data-start="1005"><td>`Hash`</td><td>Handles hash-based uniqueness or matching logic.</td></tr><tr data-end="1155" data-start="1079"><td>`MailFeeder`</td><td>Ingests and analyzes email headers or body content.</td></tr><tr data-end="1226" data-start="1156"><td>`MailFromFilter`</td><td>Applies filtering rules based on mail sender.</td></tr><tr data-end="1285" data-start="1227"><td>`Notifier`</td><td>Manages alerts and notifications.</td></tr><tr data-end="1343" data-start="1286"><td>`PhishList`</td><td>Stores phishing domains or URLs.</td></tr><tr data-end="1422" data-start="1344"><td>`RbldnsdUri`</td><td>Manages RBLDNSD-compatible URI blocklists/whitelists.</td></tr><tr data-end="1513" data-start="1423"><td>`SpamKeyword`</td><td>Contains keyword rules for spam detection (Greek/Greeklish/etc.).</td></tr><tr data-end="1575" data-start="1514"><td>`Token`</td><td>Access tokens for API or agent auth.</td></tr><tr data-end="1638" data-start="1576"><td>`Trigger`</td><td>Defines rule triggers and conditions.</td></tr><tr data-end="1703" data-start="1639"><td>`UnblockRequest`</td><td>Handles user-submitted unblock appeals.</td></tr><tr data-end="1774" data-start="1704"><td>`User`</td><td>Represents authenticated users in the system.</td></tr></tbody></table>

</div>