AD IncidentReport v2 by Atlantic Development opens an in-game report form and sends submitted roleplay reports to configured Discord webhooks. The reviewed manifest declares version 1.0.0 despite the project’s v2 name. It has no ESX, QBCore or SQL dependency.
Install and configure the report destination
Extract the inner AD_IncidentReportv2 folder containing fxmanifest.lua and nui, then use ensure AD_IncidentReportv2. The supplied command is /report. No configurable keybind registration is included; add your own binding if needed and check for an existing command collision.
Keep webhook URLs in server-loaded config.lua. The client receives sorted department keys, not webhook credentials. Config.Departments chooses each destination; Config.Brand controls shared username, avatar and color. For a forum-channel webhook, configure forum.thread_name_template and appropriate applied_tags. A regular text-channel destination does not need the forum block.
Add authorization and input checks
The department list is configuration, not access control. The request and submit handlers do not check ACE permissions, framework job, officer identity or rate limits. Any submitted configured department can select its webhook. Authorize the sender and department on the server, and derive officer identity from trusted player data.
The HTML form disables native validation, and the server mainly normalizes the force field to a table. Validate field types, required values and Discord embed length limits before posting. Do not treat placeholder replacement with N/A as report validation.
Confirm delivery before clearing the form
The interface resets and closes immediately after dispatching its request. It does not wait for confirmed Discord delivery. The server logs success or failure but provides no durable report archive, retry queue or saved JSON fallback. Preserve the draft until a delivery result is returned if report loss matters to your workflow.
Test denied users, invalid departments, long reports, network failures and repeated submissions using a private test destination. The tablet start helper is defined but never called; an automatic tablet animation is not established by this source. Read the repository LICENSE for redistribution terms rather than relying on a shortened checklist.
Existing interface preview

Reviewed on 10 September 2026 at revision dfad63dbc91a20699c96d7e022107941d68f1b8a. Lua, manifest, NUI HTML and JavaScript were inspected and Discord’s webhook documentation checked. No FiveM resource was run and no Discord message was sent.