Skip to content

FivePD Configuration: config.json and Callout Settings

Understand the FivePD v1.5 config.json fields and separate callouts, menus and vehicle JSON files, with source links and safe editing steps.

Server ManagementArticle updated

FivePD v1.5 keeps its root settings in config.json and feature-specific JSON under config/. The files below are from an inspected third-party legacy snapshot, not a universal API reference or a verified current release.

If you are installing a server for the first time, start with the legacy setup guide. Back up the whole resource and database first. Do not overwrite existing JSON with a short example from a website.

FivePD config.json fields

The observed root configuration contains these groups:

SettingMeaning in the inspected fileSafe approach
dbDatabase backend selector; snapshot value is sqlite.Keep the backend appropriate for your exact package.
databaseMySQL connection host, port, username, password and database name.Use a dedicated account and secret management; never copy the example administrator login.
stationBlipsToggle for station map markers.Change only after validating the existing JSON.
adminCodeLegacy admin-code value.Change the example value, protect it and confirm the selected version’s behavior.
discordObject containing an enable switch and token.Do not enable it without a valid configuration; keep tokens private.
dutyNotification, observation, allowlistBoolean feature switches.Confirm expected behavior in your installed build.
maxReportLength, maxCitationCount, maxFine, maxChargeCountLimits applied to reports and records.Adjust cautiously; changing a numeric limit does not guarantee a different UI or database schema.

A partial example for a package already using SQLite:

{
  "db": "sqlite",
  "stationBlips": true,
  "dutyNotification": true
}

Do not paste this over config.json. It intentionally omits required settings. The upstream example also contains default credentials and a blank token; publishing those as ready-to-use credentials would be unsafe.

Callout settings: config/callouts.json

The inspected callout configuration contains:

{
  "minCallTimeout": 30,
  "maxCallTimeout": 180,
  "expirationTime": 30,
  "probability": 65,
  "enableAmbientEvents": true
}

These are observed snapshot values, not recommended tuning values or fields guaranteed in every release. The file does not contain a list of custom callout namespaces. Installed packs may have their own author-defined configuration. See adding custom callouts and callouts not working.

Other FivePD JSON files

FileContent visible in the legacy snapshot
config/menu.jsonDuty and scene menu actions, including isEnabled and isAdminOnly flags.
config/vehicles.jsonVehicle display names and models, plus sample rank and department restrictions.
config/coordinates.jsonStation positions and jail drop-off coordinates.
config/scene_management.jsonSpeed-zone choices and placeable scene objects.
config/charges.jsonSample violation and charge labels.
config/questions.jsonExample questions and answer options for interactions.

Not every visible field has been tested in-game. The FivePD police computer guide explains the distinction between record settings and the UI.

Safe editing and validation workflow

  1. Record the FivePD package version, git/release source, FXServer build and current database backend.
  2. Save a restorable copy of the resource and database separately. Protect any file containing secrets.
  3. Change one documented key in the existing JSON. Preserve its types: booleans, numbers and strings are not interchangeable.
  4. Validate with node —check only for JavaScript, not JSON. For JSON use a JSON validator, or on a trusted local machine run:
node -e "JSON.parse(require('node:fs').readFileSync('config.json', 'utf8')); console.log('valid JSON')"
  1. Restart in a test environment, confirm the feature and verify persistence. Revert the exact file if the behavior changes unexpectedly.

FAQ

Where is FivePD config.lua?

The inspected legacy FivePD core uses JSON, not a core config.lua. Other FiveM resources may use Lua. Do not edit a different package because both files contain the word config.

Where do I set the FivePD admin code?

The legacy root config.json includes an adminCode field. Its authentication behavior has not been verified across releases; do not assume the default code is safe to leave in place.

How do I change FivePD callout probability?

The inspected config/callouts.json has a probability field. Do not assume a percentage or scheduling algorithm across builds without the matching release documentation. Change it only with a baseline and a repeatable test.

Does FivePD need MySQL?

Not every legacy package does. This snapshot selects SQLite, with settings for a MySQL option. See database troubleshooting for differences.