Error and Warning Codes
SonoranCAD FiveM uses structuredERR-XX-### and WRN-XX-### codes that point back to this document.
You can link directly to any code by appending it as a fragment identifier. Example: sonorancad.com/error/WRN-CORE-001
Warnings use a WRN-* prefix. Errors use an ERR-* prefix. Some warning-level log paths still intentionally reference ERR-* codes when the condition represents a real support issue even if the integration can keep running.
Core Errors
ERR-CORE-001
Key:STEAM_ERROR
What it means: SonoranCAD is configured to use Steam identifiers, but the FXServer Steam Web API key is missing.
How to fix it: Set steam_webapiKey in your server configuration or switch primaryIdentifier away from steam.
ERR-CORE-002
Key:PORT_MISSING_ERROR
What it means: The configured CAD server entry could not be found for the active serverId.
How to fix it: Verify the serverId in config.json or your convars and confirm that the same server exists in the CAD server list.
ERR-CORE-003
Key:PORT_CONFIG_ERROR
What it means: The game server port does not match the port configured in CAD.
How to fix it: Align the FXServer netPort with the CAD server entry, or allow the integration to auto-correct the CAD entry.
ERR-CORE-004
Key:MAP_CONFIG_ERROR
What it means: The live map port configured in CAD does not match the server configuration.
How to fix it: Update the CAD map or listener port for the affected serverId so it matches the actual server port.
ERR-CORE-005
Key:PORT_OUTBOUND_ERROR
What it means: The detected outbound IP does not match the configured CAD IP.
How to fix it: Update the CAD server IP or outbound IP settings so they match the actual public IP used by the server.
ERR-CORE-006
Key:PORT_OUTBOUND_MISMATCH
What it means: SonoranCAD detected an IP mismatch between runtime networking and CAD configuration.
How to fix it: Review mapIp, outboundIp, and differingOutbound in the CAD server entry and correct them.
ERR-CORE-007
Key:CONFIG_ERROR
What it means: The core configuration could not be loaded or parsed.
How to fix it: Ensure sonorancad/configuration/config.json exists, contains valid JSON, and was not accidentally renamed to something like config.json.json.
ERR-CORE-008
Key:API_ERROR
What it means: The integration could not retrieve version information from the CAD API.
How to fix it: Check the API key, community ID, outbound connectivity, and SonoranCAD API status, then restart the resource.
ERR-CORE-010
Key:ERROR_ABORT
What it means: Startup was aborted because one or more critical errors were encountered.
How to fix it: Review the earlier ERR-* entries in the console or log output, correct the first critical failure, and restart the resource.
ERR-CORE-011
Key:PLUGIN_DEPENDENCY_ERROR
What it means: A submodule was enabled but one of its required dependencies was not loaded.
How to fix it: Install or start the missing dependency resource, or disable the submodule that requires it.
ERR-CORE-012
Key:PLUGIN_VERSION_MISMATCH
What it means: A submodule requires a newer version of another plugin or resource than is currently installed.
How to fix it: Update the named plugin or resource to the required version, or disable the dependent submodule until versions match.
ERR-CORE-013
Key:PLUGIN_CONFIG_OUTDATED
What it means: A submodule configuration file is older than the current template version.
How to fix it: Compare your *_config.lua with the matching *_config.dist.lua and carry forward any missing options. Learn more about this process here.
ERR-CORE-014
Key:PLUGIN_CORE_OUTDATED
What it means: A plugin requires a newer SonoranCAD core version than the one currently installed.
How to fix it: Update the SonoranCAD core resource to the required version.
ERR-CORE-015
Key:CUSTOM_POSTALS_FILE_NOT_FOUND
What it means: The configured custom postals file could not be found.
How to fix it: Place the referenced file in the expected postals directory or update the configuration to point to the correct filename.
ERR-CORE-016
Key:POSTAL_RESOURCE_MISSING
What it means: The configured postal resource name does not exist on the server.
How to fix it: Correct the resource name in configuration or install the missing postal resource.
ERR-CORE-017
Key:POSTAL_RESOURCE_STOPPED
What it means: The postal resource exists but is not started.
How to fix it: Add the postal resource to your startup config and ensure it starts before players connect.
ERR-CORE-018
Key:POSTAL_RESOURCE_BAD_STATE
What it means: The postal resource is present but in an invalid runtime state.
How to fix it: Inspect that resource for startup errors, fix them, and restart it before starting SonoranCAD features that rely on it.
ERR-CORE-019
Key:POSTAL_FILE_READ_ERROR
What it means: SonoranCAD could not read the configured postal data file.
How to fix it: Verify the file exists, is readable by the server process, and is valid for the selected postal mode.
ERR-CORE-020
Key:POSTAL_CUSTOM_RESOURCE_FILE_ERROR
What it means: A custom postal resource did not expose the expected postal file metadata.
How to fix it: Add the expected postal_file metadata to that resource’s fxmanifest.lua or use a supported postal resource.
ERR-CORE-021
Key:IDCARD_RESOURCE_NOT_STARTED
What it means: The sonoran_idcard resource is installed but not running.
How to fix it: Start sonoran_idcard in your server config before using civilian ID display features.
ERR-CORE-022
Key:IDCARD_RESOURCE_MISSING
What it means: The sonoran_idcard resource could not be found.
How to fix it: Install the correct sonoran_idcard resource and keep the resource name exact.
ERR-CORE-023
Key:IDCARD_RESOURCE_BAD_STATE
What it means: The ID card resource exists but is not in a usable runtime state.
How to fix it: Check that resource for load errors and fix them before enabling ID card UI integration.
ERR-CORE-024
Key:INCORRECT_WKWARS2X_VERSION
What it means: The installed wk_wars2x resource version is incompatible with this integration.
How to fix it: Replace it with the supported version from Sonoran Software’s repository.
ERR-CORE-025
Key:CAD_API_DISABLED
What it means: API sending is disabled by configuration or a runtime toggle.
How to fix it: Re-enable API sending in config or convars, or stop using features that require outbound CAD API requests.
ERR-CORE-026
Key:UPDATE_CHILD_PERMISSION
What it means: Auto-update failed because FiveM child-process permission was not granted.
How to fix it: Run exec sonorancad.cfg or add the required child-process ACE permission for SonoranCAD’s updater.
ERR-CORE-027
Key:INVALID_API_MODE
What it means: The configured SonoranCAD API mode was invalid and the resource fell back to production.
How to fix it: Set mode to a supported value such as production or development.
ERR-CORE-028
Key:FILE_WRITE_FAILED
What it means: The resource failed to write a required file to disk.
How to fix it: Check folder permissions, available disk space, and whether the target path is writable by the server process.
ERR-CORE-029
Key:CAD_API_REQUEST_FAILED
What it means: A request to the Sonoran CAD API failed.
How to fix it: The API call failed for some reason. This could be a bad API payload format from the resource or an issue with the backend. Double-check for other errors related to a bad API key. Otherwise, enable debug mode to capture the full API payload being sent at the same time as the error occurs and provide that to the support team/developers.
ERR-CORE-030
Key:TABLET_RESOURCE_NOT_STARTED
What it means: The tablet resource is installed but not running.
How to fix it: Use exec sonorancad.cfg and make sure sonorancad.cfg contains ensure tablet before ensure sonorancad.
ERR-CORE-031
Key:TABLET_RESOURCE_MISSING
What it means: The tablet resource could not be found.
How to fix it: Use the bundled sonorancad.cfg, confirm it contains ensure tablet, and install the resource with the exact name tablet.
ERR-CORE-032
Key:TABLET_RESOURCE_BAD_STATE
What it means: The tablet resource exists but is not in a usable runtime state.
How to fix it: Use exec sonorancad.cfg, confirm it contains ensure tablet, and fix the startup errors reported by tablet.
ERR-CORE-033
Key:LOCAL_NETWORK_TIMEOUT
What it means: The local FiveM server network timed out while connecting to Sonoran CAD.
How to fix it: If you are seeing this routinely, contact your server host. The network may be overwhelmed or experiencing degraded performance. This suggests your FiveM server is getting timeouts and connection drops.
ERR-CORE-034
Key:LOCAL_NETWORK_CONNECT_TIMEOUT
What it means: The local FiveM server connection to Sonoran CAD timed out.
How to fix it: If you are seeing this routinely, contact your server host. Check the server host, firewall, proxy, or upstream network connection for connection setup delays or blocked outbound traffic.
ERR-CORE-035
Key:CAD_RECORD_UNIQUE_CONFLICT
What it means: A CAD record create or edit request failed because one of the fields marked unique already has the same value on another record.
How to fix it: Find the unique field value in the record payload, choose a value that is not already used, or update the existing CAD record instead of creating a duplicate.
ERR-CORE-036
Key:APIKEY_CONVAR_UNINITIALIZED
What it means: SonoranCAD was started without the required convar and permission setup from the bundled sonorancad.cfg. This can break SonoranCAD updates and third-party integrations.
How to fix it: In server.cfg, remove every ensure sonorancad line, use exec @sonorancad/sonorancad.cfg instead, and then fully restart FXServer.
ERR-CORE-900
Key:UNHANDLED_SERVER_ERROR
What it means: An unexpected server-side error occurred and was normalized into a generic coded failure.
How to fix it: Use the support reference in the logs to find the exact exception details and fix the underlying code path or bad input.
ERR-CORE-901
Key:UNHANDLED_WARNING
What it means: A warning occurred that did not map to a more specific registered error code.
How to fix it: Review the warning text and support reference in the logs. This usually indicates degraded behavior rather than a full failure.
ERR-CORE-902
Key:INVALID_COMMAND_ARGUMENT
What it means: A command was called with missing or invalid arguments.
How to fix it: Re-run the command with the documented arguments, or update the calling script or UI if it is sending malformed parameters.
ERR-CORE-903
Key:FEATURE_UNAVAILABLE
What it means: The requested feature cannot be completed in the current state.
How to fix it: Confirm required caches, resources, and dependent subsystems are available, then retry.
ERR-CORE-904
Key:MALFORMED_PAYLOAD
What it means: SonoranCAD received incomplete or invalid structured data.
How to fix it: Validate the event payload, HTTP body, or NUI or client request that triggered the error.
ERR-CORE-905
Key:PERMISSION_DENIED
What it means: The user or command source does not have permission for the requested action.
How to fix it: Grant the necessary ACE permission or disable the permission gate for that feature if appropriate.
ERR-CORE-906
Key:CLIENT_RUNTIME_ERROR
What it means: A client-side runtime or NUI or browser-side error was caught and sanitized before raw error details could be dumped to the player console.
How to fix it: Check the matching support reference in the server and client logs, then verify the affected UI or runtime dependency is loaded and the triggering state is valid.
CAD Errors
ERR-CAD-101
Key:PLAYER_NOT_LINKED
What it means: The player does not have a linked CAD account.
How to fix it: Run the configured link command, complete the link flow, and verify the link exists in CAD.
ERR-CAD-102
Key:PLAYER_NOT_ONLINE
What it means: The player is linked but not currently logged into a CAD unit or profile.
How to fix it: Log into an eligible CAD profile before using the feature.
ERR-CAD-103
Key:PLAYER_NOT_IN_CAD
What it means: The player must be both linked and active in CAD before the feature can be used.
How to fix it: Link the account first, then log into a valid CAD character or unit.
Support Errors
ERR-SUP-101
Key:SUPPORT_INVALID_ID
What it means: The provided support upload or request ID was invalid.
How to fix it: Use the correct numeric support request ID from Sonoran support.
ERR-SUP-102
Key:SUPPORT_UPLOAD_FAILED
What it means: Support logs could not be uploaded.
How to fix it: Retry the upload, then verify outbound API access and the validity of the support request ID.
ERR-SUP-103
Key:SUPPORT_UPLOAD_SUCCESS
What it means: Support logs were uploaded successfully.
How to fix it: No action is required. Provide the generated support reference and upload context to support if requested.
Bodycam Errors
ERR-BC-101
Key:BODYCAM_FORCEOFF_PERMISSION
What it means: The user attempted to use the bodycam force-off command without permission.
How to fix it: Grant the configured bodycam force-off ACE permission to the appropriate staff group.
ERR-BC-102
Key:BODYCAM_CHILD_PERMISSION
What it means: Bodycam recording could not start because child-process permission was missing.
How to fix it: Add the required child-process permission or use the bundled sonorancad.cfg permissions.
ERR-BC-104
Key:BODYCAM_F8_PERMISSION
What it means: The bodycam keybind commands are blocked by ACE permissions.
How to fix it: Allow command.SonoranCAD::bodycam::Keybind and command.SonoranCAD::bodycam::RecordingKeybind for the intended player group.
ERR-BC-105
Key:BODYCAM_NOT_ON_DUTY
What it means: The player must be online in CAD before toggling bodycam.
How to fix it: Log into CAD duty first, then toggle bodycam again.
ERR-BC-106
Key:BODYCAM_UPLOAD_TOKEN_INVALID
What it means: The bodycam upload token was invalid, expired, or belonged to a different player or session.
How to fix it: Reinitialize bodycam upload configuration and retry with a fresh token.
ERR-BC-107
Key:BODYCAM_UPLOAD_INIT_FAILED
What it means: Bodycam upload setup failed before file chunks could be accepted.
How to fix it: Check temporary file creation, upload parameters, and server write permissions.
ERR-BC-108
Key:BODYCAM_UPLOAD_CHUNK_FAILED
What it means: A bodycam upload chunk could not be appended to the target file.
How to fix it: Check disk permissions, available disk space, and whether the temporary recording path is writable.
ERR-BC-109
Key:BODYCAM_UPLOAD_INCOMPLETE
What it means: The upload completion request arrived before all expected chunks were received.
How to fix it: Retry the upload and inspect client or network interruptions that may have dropped chunks.
ERR-BC-110
Key:BODYCAM_TURN_FAILED
What it means: TURN credentials for bodycam streaming could not be retrieved.
How to fix it: Verify the CAD API is reachable, the API key is valid, and any TURN-related configuration overrides are correct.
ERR-BC-111
Key:BODYCAM_RECORDINGS_UNWRITABLE
What it means: The bodycam recordings directory could not be written by the server process, so upload setup or clip finalization could not save the recording file.
How to fix it: Set sonorancad/submodules/bodycam and its recordings directory to permission mode 777, then retry the upload.
ERR-BC-112
Key:BODYCAM_RECORDING_ACTIVE
What it means: A start-recording request was ignored because a recording was already in progress.
How to fix it: Stop the active recording before starting another one, or debounce duplicate start requests in the caller or UI.
ERR-BC-113
Key:BODYCAM_RECORDING_BLOCKED
What it means: Bodycam recording was blocked by a privacy override or an invalid runtime state.
How to fix it: Remove the privacy override or restore the bodycam or stream state required for recording.
ERR-BC-114
Key:BODYCAM_RECORDING_INACTIVE
What it means: A stop or cancel request was made when there was no active recording to stop.
How to fix it: Start a recording first, or suppress duplicate stop or cancel requests in the caller or UI.
ERR-BC-115
Key:BODYCAM_RECORDING_FAILED
What it means: The bodycam recording pipeline failed before the clip could be finalized successfully.
How to fix it: Review the support reference, then verify the bodycam stream, recorder pipeline, duration or size limits, and upload handoff path.
ERR-BC-116
Key:BODYCAM_NOT_WORN
What it means: The player attempted to enable bodycam without matching the configured clothing or bodycam requirements.
How to fix it: Equip the required bodycam clothing or components, or relax the configured clothing validation.
ERR-BC-117
Key:BODYCAM_WATCH_ACTIVE
What it means: Bodycam disable was blocked because the bodycam is currently being watched.
How to fix it: Wait until everyone stops watching, then try again. If you have force-off permission, the notification shows the command to use (/bodycam forceoff by default). If no force-off command is offered, contact your server administrator. See Turning Off a Camera Being Viewed.
ERR-BC-118
Key:BODYCAM_SOUND_LEVEL_INVALID
What it means: The requested bodycam sound level was not a valid number within the accepted range.
How to fix it: Pass a numeric value greater than 0 and less than or equal to 1.
ERR-BC-119
Key:BODYCAM_UPLOAD_FAILED
What it means: The finalized bodycam clip failed to upload to CAD.
How to fix it: Check API connectivity, authentication, upload endpoint availability, and the support reference for the upload failure context.
ERR-BC-120
Key:BODYCAM_RECORDING_START_TIMEOUT
What it means: A recording start request timed out while waiting for bodycam initialization, display activation, or the client media stream to become ready.
How to fix it: Review the state details printed with the error and the matching [bodycam-recording] server warning. Verify bodycam initialization, CAD duty state, TURN connectivity, and the reported NUI stream reason.
CAD Display Errors
ERR-CD-101
Key:CADDISPLAY_F8_PERMISSION
What it means: CAD display keybind commands are blocked by ACE permissions.
How to fix it: Grant the listed CAD display command permissions to players who should be able to use them.
ERR-CD-102
Key:CADDISPLAY_FRAMEWORK_UNAVAILABLE
What it means: CAD display could not access the configured framework export.
How to fix it: Confirm the selected framework resource is started and that its export name matches the integration configuration.
ERR-CD-103
Key:CADDISPLAY_PLACEMENT_INVALID
What it means: CAD display placement data could not be loaded or parsed.
How to fix it: Repair the placement file JSON or Lua data, or delete the bad saved placement data so defaults can be rebuilt.
ERR-CD-104
Key:CADDISPLAY_VEHICLE_UNIDENTIFIED
What it means: CAD display could not determine which vehicle the player was targeting.
How to fix it: Retry while targeting a valid supported vehicle and verify the display interaction logic has the correct entity context.
Call Errors
ERR-CALL-101
Key:CALL_MISSING_DETAILS
What it means: A call-related command was used without the required details.
How to fix it: Re-run the command with the required message, description, or argument payload.
ERR-CALL-102
Key:CALL_SEND_FAILED
What it means: A call could not be sent to CAD.
How to fix it: Check the support reference, then verify CAD API availability, call payload validity, and that API sending is enabled.
ERR-CALL-103
Key:CALL_TEMPLATE_INVALID
What it means: The configured call template file is missing or invalid.
How to fix it: Verify the template file exists, contains valid JSON, and matches the configured filename or path.
ERR-CALL-104
Key:PANIC_F8_PERMISSION
What it means: The panic keybind command is blocked by ACE permissions.
How to fix it: Allow command.panic for the intended players in ACE permissions.
ERR-CALL-105
Key:CALL_CREATE_FAILED
What it means: A dispatch call creation operation failed before returning a valid call ID.
How to fix it: Inspect the payload fields sent to CAD and verify API availability and permissions.
ERR-CALL-106
Key:CALL_UNEXPECTED_RESPONSE
What it means: CAD returned a success path without the expected data, such as a missing call ID.
How to fix it: Review the API response body and confirm the integration and API versions are compatible.
Vehicle Registration Errors
ERR-VR-101
Key:VEHREG_NO_CHARACTER
What it means: No active CAD character was found for the vehicle registration action.
How to fix it: Log into a CAD character first, then retry the registration action.
ERR-VR-102
Key:VEHREG_CREATE_FAILED
What it means: The vehicle registration record could not be created in CAD.
How to fix it: Check record template or configuration values, payload data, and CAD API availability.
ERR-VR-103
Key:VEHREG_PLATE_TAKEN
What it means: The requested plate is already registered in CAD.
How to fix it: Choose a different plate or locate and update the existing CAD registration record.
Unit Status Errors
ERR-US-101
Key:UNITSTATUS_INVALID_STATUS
What it means: The requested unit status does not exist in configuration or is outside the supported range.
How to fix it: Use a configured status name or number and verify unitstatus status mappings in its config file.
API WebSocket Errors
ERR-WS-101
Key:APIWS_DEPENDENCY_MISSING
What it means: The SignalR dependency required for API WebSocket connectivity is missing.
How to fix it: Install the missing package in the sonorancad resource, typically @microsoft/signalr, and restart the resource.
ERR-WS-102
Key:APIWS_AUTH_FAILED
What it means: The API WebSocket hub rejected authentication.
How to fix it: Verify communityID, apiKey, and serverId, then confirm the key is valid for the target community.
ERR-WS-103
Key:APIWS_CONFIG_MISSING
What it means: The API WebSocket connection could not start because required configuration values were missing.
How to fix it: Ensure communityID, apiKey, and serverId are all present and loaded before WebSocket startup.
ERR-WS-104
Key:APIWS_CONNECTION_FAILED
What it means: The API WebSocket transport could not establish a connection.
How to fix it: Check outbound HTTPS and WebSocket connectivity, API URL correctness, and any firewall or proxy rules.
ERR-WS-105
Key:APIWS_RECONNECT_FAILED
What it means: Reconnect attempts to the API WebSocket hub are repeatedly failing.
How to fix it: Treat this as a persistent connectivity or authentication problem, then review the first connection failure and fix that root cause.
ERR-WS-106
Key:APIWS_PUSH_EVENT_FAILED
What it means: A push event delivered over the WebSocket connection could not be decoded or processed.
How to fix it: Validate the incoming event payload shape and inspect the support reference for the handler that failed.
ERR-WS-107
Key:APIWS_SEND_FAILED
What it means: A message could not be sent over the API WebSocket connection.
How to fix it: Confirm the WebSocket connection is active and authenticated before sending unit or call updates.
Plugin Loader Errors
ERR-PLUG-101
Key:PLUGIN_VERSION_FILE_LOAD_FAILED
What it means: The local plugin version file could not be loaded from disk.
How to fix it: Confirm sonorancad/version.json exists and is readable.
ERR-PLUG-102
Key:PLUGIN_VERSION_FILE_PARSE_FAILED
What it means: The local plugin version file exists but could not be parsed.
How to fix it: Repair malformed JSON in version.json or replace it with a clean release copy.
ERR-PLUG-103
Key:PLUGIN_UPDATER_RESPONSE_INVALID
What it means: The remote updater responded with invalid or unusable data.
How to fix it: Retry later and verify outbound network access to GitHub or raw content endpoints.
ERR-PLUG-104
Key:PLUGIN_NOT_FOUND
What it means: A requested plugin or submodule could not be found locally.
How to fix it: Verify the plugin name, installation path, and that its configuration or resource files exist.
ERR-PLUG-105
Key:PLUGIN_MANIFEST_ENTRY_MISSING
What it means: A local submodule was not present in the remote updater manifest.
How to fix it: If it is a custom submodule this may be expected, otherwise update to an official supported submodule build.
ERR-PLUG-106
Key:PLUGIN_MANIFEST_VERSION_MISSING
What it means: A remote updater manifest entry was missing a version field.
How to fix it: Replace the manifest source with a valid upstream release or retry after the remote manifest is corrected.
ERR-PLUG-107
Key:PLUGIN_CONFIG_VERSION_MISSING
What it means: A plugin config did not declare its current config version.
How to fix it: Update the plugin config from the latest *_config.dist.lua and ensure the version field is present.
ERR-PLUG-108
Key:PLUGIN_CONFIG_BACKUP_FAILED
What it means: The plugin updater could not create a config backup before modifying files.
How to fix it: Check write permissions for the SonoranCAD configuration directory and available disk space.
ERR-PLUG-109
Key:PLUGIN_CONFIG_PARSE_FAILED
What it means: A plugin or submodule configuration file could not be parsed, compiled, or executed safely.
How to fix it: Repair the matching *_config.lua file so it defines a valid local config = {} table and contains no Lua syntax or runtime errors.
Civilian Integration Errors
ERR-CIV-101
Key:CIV_NO_CHARACTERS_FOUND
What it means: No CAD character records were found for the player.
How to fix it: Ensure the player is linked and has at least one valid CAD character, or enable custom IDs if you want a fallback workflow.
ERR-CIV-102
Key:CIV_CUSTOM_IDS_DISABLED
What it means: The server has disabled custom civilian IDs.
How to fix it: Enable allowCustomIds in the civilian integration configuration if that workflow should be allowed.
ERR-CIV-103
Key:CIV_REFRESH_DISABLED
What it means: Manual character cache refresh is disabled.
How to fix it: Enable the purge or refresh option in configuration if players should be allowed to force-refresh ID data.
ERR-CIV-104
Key:CIV_UNKNOWN_SUBCOMMAND
What it means: An invalid civilian ID command subcommand was used.
How to fix it: Use /id help and re-run the command with a supported subcommand.
ERR-CIV-105
Key:CIV_NO_NEARBY_PLAYERS
What it means: The player attempted to show an ID but no nearby viewers were found.
How to fix it: Move closer to another player and retry the show action.
Civilian Registration Errors
See Civilian Registration (CivReg) for setup, usage, and base64 portrait uploads.ERR-CR-101
Key:CIVREG_TEMPLATE_FAILED
What it means: The live CAD character template could not be loaded or did not contain the expected sections.
How to fix it: Check the CAD connection and templateId in civreg_config.lua (7 for the civilian character template). Review the accompanying API error, keep template caching enabled, and retry after any rate limit has cleared.
ERR-CR-102
Key:CIVREG_SUBMISSION_INVALID
What it means: The registration form expired or contains invalid data, such as a missing required value, an invalid field format, or malformed or oversized base64 portrait data.
How to fix it: Correct the validation message shown in the form. For an invalid portrait, retake it and check the decoded image size against maxSelfieBytes (1 MiB by default). If the session expired, close it and reopen /civreg, or the configured registration command. Registration sessions last 10 minutes.
ERR-CR-103
Key:CIVREG_SELFIE_URL_MISSING
What it means: CivReg could not determine a public image address for a portrait. This code is inactive in the current resource.
How to fix it: If this code appears, contact Sonoran support with the error code and your installed resource version. See Portrait Uploads for portrait setup.
ERR-CR-104
Key:CIVREG_SELFIE_SAVE_FAILED
What it means: CivReg could not validate or save a portrait image. This code is inactive in the current resource.
How to fix it: If this code appears, contact Sonoran support with the error code and your installed resource version. For portrait validation errors, see ERR-CR-102.
ERR-CR-105
Key:CIVREG_CREATE_FAILED
What it means: CAD could not create the civilian character from the submitted form.
How to fix it: Review the accompanying API failure in the server console. Confirm the linked CAD account and character template, correct the reported issue, and retry the registration.
ERR-CR-106
Key:CIVREG_DB_SYNC_FAILED
What it means: CivReg detected CAD character database sync but could not initialize or update the configured framework character table.
How to fix it: Start QBCore or ESX and oxmysql or mysql-async before sonorancad. Confirm the CivReg database sync table and character ID column match the CAD DB Sync character mapping, and allow the database user to alter and update the character table.
Dispatch Errors
ERR-DISP-101
Key:DISPATCH_CALL_NOT_FOUND
What it means: A dispatch action referenced a call that was not present in cache.
How to fix it: Verify the call ID is current and that call cache synchronization is working before retrying the action.
ERS Integration Errors
Runsonorancad ers in the server console to check the ERS connection, callout list, and latest failure. See the ERS troubleshooting guide for common setup checks.
ERR-ERS-101
Key:ERS_MAPPING_FAILED
What it means: ERS field mapping logic failed while converting ERS data into CAD payload fields.
How to fix it: Review custom mapping functions and field names in the ERS integration configuration for nil values or bad return types.
ERR-ERS-102
Key:ERS_PAYLOAD_MALFORMED
What it means: An ERS event payload was missing required top-level fields or had an invalid structure.
How to fix it: Validate the ERS event payload contract and adjust any custom hooks that modify it.
ERR-ERS-103
Key:ERS_COORDS_MISSING
What it means: An ERS event did not provide usable coordinates for the CAD action.
How to fix it: Ensure the originating ERS event includes proper coordinates and that any transform step preserves them.
ERR-ERS-104
Key:ERS_CALL_ID_INVALID
What it means: ERS attempted to update or attach to a call using an invalid stored call ID.
How to fix it: Check the local saved-call cache and ensure the create-call step succeeded before later actions reference it.
ERR-ERS-105
Key:ERS_RESOURCE_NOT_STARTED
What it means: The Night ERS resource required by the integration is not started.
How to fix it: Start night_ers. The integration reconnects when ERS starts or restarts. Use sonorancad ers in the server console to check its status.
ERR-ERS-106
Key:ERS_VERSION_TOO_OLD
What it means: Night ERS is older than the required version 1.8.16, or its version could not be confirmed. An older version blocks the integration; an unverified version allows it to run with a warning.
How to fix it: Update Night ERS to 1.8.16 or newer and restart it. If you already have a supported version, check the detected version and status with sonorancad ers and contact support if the warning continues.
ERR-ERS-107
Key:ERS_CONFIG_INVALID
What it means: An ERS setting or CAD record setup is missing or invalid. Some record setup problems affect lookups while calls can still work.
How to fix it: Run sonorancad ers and correct the settings named under configIssues. ERS options are in ersintegration_config.lua; the CAD serverId is in config.json. Confirm that the supplied record templates are imported into CAD, then restart sonorancad after changing the configuration.
ERR-ERS-108
Key:ERS_CATALOG_FAILED
What it means: The integration could not load ERS’s callout list or send it to CAD.
How to fix it: Confirm ERS has callouts enabled and loaded. Run sonorancad ers to see whether loading the list or sending it to CAD failed. For a CAD connection failure, check the connection and configured server ID. The integration retries automatically.
ERR-ERS-109
Key:ERS_CALLOUT_CREATE_FAILED
What it means: ERS could not confirm creation of a callout requested from CAD.
How to fix it: Check that the selected callout is available in ERS and that the chosen location is valid. Check the latest failure with sonorancad ers; if it continues, send support the callout name, location, and error code.
ERR-ERS-110
Key:ERS_CAD_REQUEST_FAILED
What it means: A 911 or dispatch call from ERS could not be created in CAD.
How to fix it: Check the CAD connection and configured server ID. Run sonorancad ers for the failed step and reason, then correct the reported issue before testing another callout.
ERR-ERS-111
Key:ERS_RECORD_ID_INVALID
What it means: CAD reported that a person or vehicle record was created but did not return its record number.
How to fix it: Check whether the record already appears in CAD before repeating the lookup. The integration pauses repeat creation for five minutes to help prevent duplicates. If the error continues, send support the error code and the latest failure shown by sonorancad ers.
ERR-ERS-112
Key:ERS_OFFER_FAILED
What it means: A player assigned to an ERS-generated CAD call could not receive the matching callout in game.
How to fix it: Confirm the player is online, linked to CAD, has an active CAD unit, and is on an ERS shift with a service selected. Check sonorancad ers. If the server sent the callout but the player did not receive it, support may request sonorancad getclientlog <playerId> from the server console.
Framework Errors
ERR-FW-101
Key:FRAMEWORK_RESOURCE_MISSING
What it means: A required framework resource such as qb-core or es_extended is not running.
How to fix it: Start the configured framework resource and verify the integration is targeting the correct framework.
ERR-FW-102
Key:FRAMEWORK_IDENTITY_MISSING
What it means: Framework identity or player data could not be retrieved.
How to fix it: Check that the player is fully loaded into the framework and that the expected identity export or event is available.
ERR-FW-103
Key:FRAMEWORK_QUERY_INVALID
What it means: A framework SQL query or parameter set was invalid and was rejected before execution.
How to fix it: Ensure the query is a non-empty string and the parameters are passed as a key or value table rather than an array.
Locations and Livemap Errors
ERR-LOC-101
Key:LOCATIONS_CONFIG_MISSING
What it means: The locations or livemap vehicle model configuration file could not be found.
How to fix it: Restore the missing configuration file or update the configured path to a valid file.
ERR-LOC-102
Key:LOCATIONS_CONFIG_INVALID
What it means: The locations or livemap configuration file exists but could not be decoded.
How to fix it: Repair malformed JSON in the vehicle model configuration file.
ERR-LOC-103
Key:LOCATIONS_CLIENT_ERROR
What it means: A client reported an error while sending location data.
How to fix it: Check client logs for the specific failure and verify required dependencies such as postals and location hooks are configured.
ERR-LOC-104
Key:POSTALS_RESOURCE_UNAVAILABLE
What it means: A client-side feature requested postal data, but the configured postal source was unavailable.
How to fix it: Start the configured postal resource or switch to a valid postal mode or source in configuration.
ERR-LOC-105
Key:POSTALS_FILE_INVALID
What it means: The configured client-side postal file was missing or invalid.
How to fix it: Restore the referenced postal file, validate its JSON, and confirm the configured filename is correct.
ERR-LOC-106
Key:POSTALS_LOOKUP_FAILED
What it means: Client-side postal lookup failed at runtime, but Sonoran CAD continued sending location updates without a postal prefix.
How to fix it: Sonoran CAD comes bundled with the nearest-postals resource. Ensure your community is only using the bundled nearest-postals resource and NOT a duplicate or copied version that may be out of date. You can check where your nearest-postals resource is running inside of TxAdmin > Resources. It should be running inside of the [sonorancad] folder.
Additionally, startup order matters. The Sonoran CAD resource is started by adding the following line to your server.cfg:
exec command above runs a script to ensure the Sonoran CAD resource, the bundled nearest-postals resource, and more in a specific order.
If your server.cfg contains anything like ensure sonorancad or ensure nearest-postals remove those and only use the exec command listed above.
Record Printer Errors
ERR-RP-101
Key:RECORDPRINTER_UNIT_MISSING
What it means: Record printer could not resolve the player to an active CAD unit.
How to fix it: Ensure the player is logged into CAD and present in the unit cache before printing.
ERR-RP-102
Key:RECORDPRINTER_DIRECTORY_FAILED
What it means: Record printer could not create or resolve its output directory.
How to fix it: Check write permissions and folder creation behavior for the record printer output path.
ERR-RP-103
Key:RECORDPRINTER_SAVE_FAILED
What it means: Record printer failed to save the generated PDF.
How to fix it: Verify write permissions, available disk space, and that the generated PDF data is valid.
ERR-RP-104
Key:RECORDPRINTER_SHARE_INVALID
What it means: Record printer rejected a share request because the URL or target list was invalid.
How to fix it: Validate the shared URL and ensure at least one valid target player or identifier is supplied.
ERR-RP-105
Key:RECORDPRINTER_FILESYSTEM_PERMISSION
What it means: The FXServer process does not have permission to create or write record printer PDF files.
How to fix it: Grant the FXServer process write access to sonorancad/submodules/recordPrinter/pdfs, then restart the Sonoran CAD resource.
Sonrad Errors
ERR-SR-101
Key:SONRAD_CALLCOMMANDS_MISSING
What it means: Sonrad attempted an action that depends on the callcommands submodule.
How to fix it: Enable or start the callcommands submodule before using Sonrad panic or call features.
ERR-SR-102
Key:SONRAD_CONFIG_MISSING
What it means: Critical Sonrad configuration values are missing.
How to fix it: Update sonrad_config.lua from the latest template and fill in the missing required values.
Kick Module Errors
ERR-KICK-101
Key:KICK_QUEUE_UNAVAILABLE
What it means: The kick module could not queue a CAD logout or kick for the player.
How to fix it: Ensure the player is linked and currently represented by an active unit before the kick action runs.
Warning Codes
WRN-CORE-001
Key:INVALID_API_MODE
What it means: The configured SonoranCAD API mode was invalid, so the resource fell back to production mode.
How to fix it: Set mode to a supported value such as production or development.
WRN-CORE-002
Key:DEPRECATED_DEBUGPRINT
What it means: Deprecated logging helper debugPrint was used somewhere in the runtime path.
How to fix it: Replace debugPrint(...) calls with debugLog(...) in custom integrations or older submodule code.
WRN-CORE-003
Key:JSON_DECODE_FAILED
What it means: SonoranCAD failed to decode a JSON string and continued with a default or empty value.
How to fix it: Validate the JSON source that triggered the warning and correct malformed payload or file contents.
WRN-CORE-004
Key:JSON_ENCODE_FAILED
What it means: SonoranCAD failed to encode a Lua value into JSON and continued with a fallback value.
How to fix it: Check the table being encoded for unsupported values such as functions, userdata, or recursive structures.
WRN-CORE-005
Key:APIKEY_CONVAR_UNINITIALIZED
What it means: Older SonoranCAD versions reported missing sonorancad.cfg startup setup with this warning. Current versions report the same condition as ERR-CORE-036 because it can break SonoranCAD updates and third-party integrations.
How to fix it: In server.cfg, remove every ensure sonorancad line, use exec @sonorancad/sonorancad.cfg instead, and then fully restart FXServer.
WRN-CORE-006
Key:OLD_FXSERVER_VERSION
What it means: The running FXServer build is older than the version this SonoranCAD release was tested against.
How to fix it: Update FXServer to the tested version or newer before troubleshooting feature regressions.
WRN-CAD-101
Key:PLAYER_IDENTIFIER_MISSING
What it means: A player connected without the configured primary identifier, so some CAD features may not work for that player.
How to fix it: Ensure the configured identifier type is actually available on your server and that the player is connecting through the expected identity provider.
WRN-CAD-102
Key:PLAYER_LINK_REQUIRED
What it means: A player attempted a CAD-linked workflow without having a linked CAD account.
How to fix it: Have the player run the configured link command, complete the link flow, and retry after the CAD link exists.
WRN-WS-101
Key:LEGACY_HTTP_PUSH_EVENT
What it means: SonoranCAD received a legacy HTTP push event on /event while WebSocket push delivery is preferred.
How to fix it: Review your CAD or server push-event configuration and move the server onto the API WebSocket push path where available.
WRN-CORE-900
Key:UNHANDLED_WARNING
What it means: A warning was logged without a more specific registered warning code, so it was normalized into the generic warning bucket.
How to fix it: Use the support reference and warning text in the logs to identify the exact caller, then register a dedicated warning code if the condition needs clearer support guidance.
