Exports & Events
Client Exports
is_entity_being_tracked
Checks if an entity is being tracked (has any trackers attached).
Parameters
- entity: number
Returns
- is_tracked: boolean
Example
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local isTracked = exports['no-gps-tracker']:is_entity_being_tracked(vehicle)
if isTracked then
print("This vehicle has GPS trackers attached!")
end
get_entity_trackers
Gets all tracker IDs attached to an entity.
Parameters
- entity: number
Returns
- tracker_ids:
string[]
Example
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local trackerIds = exports['no-gps-tracker']:get_entity_trackers(vehicle)
for _, trackerId in ipairs(trackerIds) do
print("Tracker found: " .. trackerId)
end
is_tracker_on_entity
Checks if a specific tracker is attached to an entity.
Parameters
- entity: number
- tracker_id: string
Returns
- is_attached: boolean
Example
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local isAttached = exports['no-gps-tracker']:is_tracker_on_entity(vehicle, "tracker_123")
if isAttached then
print("Tracker tracker_123 is on this vehicle")
end
get_entity_tracker_count
is_placing_tracker
find_and_place_tracker
Initiates tracker placement on a targeted vehicle. Finds the vehicle the player is looking at and attempts to place the tracker.
Parameters
- tracker_id: string
Returns
- success: boolean
- error_message?: string
Example
local success, errorMsg = exports['no-gps-tracker']:find_and_place_tracker("tracker_123")
if success then
print("Tracker placed successfully!")
else
print("Failed to place tracker: " .. (errorMsg or "unknown error"))
end
place_tracker
Places a tracker on a specific entity.
Parameters
- tracker_id: string
- entity: number
Returns
- success: boolean
- error_message?: string
Example
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local success, errorMsg = exports['no-gps-tracker']:place_tracker("tracker_123", vehicle)
if success then
print("Tracker placed on vehicle!")
else
print("Failed: " .. (errorMsg or "unknown error"))
end
is_removing_tracker
find_and_remove_tracker
Initiates tracker removal from a targeted vehicle.
Returns
- success: boolean
- error_message?: string
Example
local success, errorMsg = exports['no-gps-tracker']:find_and_remove_tracker()
if success then
print("Tracker removed successfully!")
else
print("Failed to remove tracker: " .. (errorMsg or "unknown error"))
end
remove_tracker
Removes a tracker from a specific entity.
Parameters
- entity: number
Returns
- success: boolean
- error_message?: string
Example
local vehicle = GetVehiclePedIsIn(PlayerPedId(), false)
local success, errorMsg = exports['no-gps-tracker']:remove_tracker(vehicle)
if success then
print("Tracker removed from vehicle!")
end
is_nui_open
open_nui
close_nui
toggle_nui
get_nearby_tracked_vehicles
Gets all nearby vehicles that have trackers attached.
Parameters
- radius?: number (default: 50.0)
Returns
- vehicles:
{entity: number, tracker_ids: string[]}[]
Example
local trackedVehicles = exports['no-gps-tracker']:get_nearby_tracked_vehicles(100.0)
for _, data in ipairs(trackedVehicles) do
print("Vehicle " .. data.entity .. " has " .. #data.tracker_ids .. " trackers")
end
get_current_vehicle_trackers
is_current_vehicle_tracked
Server Exports
get_active_trackers
get_tracker
Gets a specific tracker by ID if it exists.
Parameters
- tracker_id: string
Returns
- tracker?:
{tracker_id: string, attached_entity: number}
Example
local tracker = exports['no-gps-tracker']:get_tracker("tracker_123")
if tracker then
print("Tracker is attached to entity: " .. tracker.attached_entity)
end
get_tracker_full
get_tracker_info
Gets tracker info from database.
Parameters
- tracker_id: string
Returns
- tracker?:
{id: string, is_placed: boolean, placed_at: string, placed_by: string, placed_entity_identifier: string}
Example
local info = exports['no-gps-tracker']:get_tracker_info("tracker_123")
if info and info.is_placed then
print("Tracker placed on: " .. info.placed_entity_identifier)
end
create_tracker
is_tracker_active
get_active_tracker_count
create_and_attach_tracker_to_entity
Creates a tracker and attaches it to an entity.
Parameters
- tracker_id: string
- entity: number
- placer_identifier?: string
Returns
- success: boolean
- error_message?: string
Example
local identifier = BASE:GetIdentifier(source)
local vehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
local success, err = exports['no-gps-tracker']:create_and_attach_tracker_to_entity("tracker_123", vehicle, identifier)
if success then
print("Tracker created and attached!")
end
attach_tracker_to_entity
Attaches an existing tracker to an entity (without database upsert).
Parameters
- tracker_id: string
- entity: number
Returns
- success: boolean
Example
local vehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
local success = exports['no-gps-tracker']:attach_tracker_to_entity("tracker_123", vehicle)
is_entity_being_tracked
get_entity_trackers
Gets all tracker IDs attached to an entity.
Parameters
- entity: number
Returns
- tracker_ids:
string[]
Example
local vehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
local trackerIds = exports['no-gps-tracker']:get_entity_trackers(vehicle)
print("Found " .. #trackerIds .. " trackers on vehicle")
is_entity_identifier_tracked
get_trackers_by_entity_identifier
get_trackers_by_placer
get_entity_identifier
Gets the entity identifier for a given entity.
Parameters
- entity: number
Returns
- identifier?: string
Example
local vehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
local identifier = exports['no-gps-tracker']:get_entity_identifier(vehicle)
print("Vehicle identifier: " .. (identifier or "none"))
is_entity_persistent
remove_trackers_from_entity
Removes all trackers from a given entity.
Parameters
- entity: number
Returns
- removed_count: number
Example
local vehicle = GetVehiclePedIsIn(GetPlayerPed(source), false)
local removed = exports['no-gps-tracker']:remove_trackers_from_entity(vehicle)
print("Removed " .. removed .. " trackers from vehicle")
remove_tracker
remove_trackers_from_entity_by_identifier
delete_tracker_if_no_access
list_player_trackers
Lists trackers accessible by a player.
Parameters
- source: number
- page: number
- page_size: number
- search?: string
Returns
- result:
{total: number, page: number, page_size: number, hasMore: boolean, trackers: table}
Example
local result = exports['no-gps-tracker']:list_player_trackers(source, 1, 10)
print("Player has access to " .. result.total .. " trackers")
for _, tracker in ipairs(result.trackers) do
print("- " .. tracker.id)
end
list_player_trackers_by_identifier
Lists trackers accessible by an identifier.
Parameters
- identifier: string
- page: number
- page_size: number
- search?: string
Returns
- result:
{total: number, page: number, page_size: number, hasMore: boolean, trackers: table}
Example
local identifier = BASE:GetIdentifier(source)
local result = exports['no-gps-tracker']:list_player_trackers_by_identifier(identifier, 1, 10)
print("Found " .. result.total .. " trackers")
list_tracker_routes
grant_tracker_access
Grants access to a tracker for a player by source.
Parameters
- tracker_id: string
- source: number
- access_type: string ("view" | "full")
Returns
- success: boolean
Example
local success = exports['no-gps-tracker']:grant_tracker_access("tracker_123", targetSource, "view")
if success then
print("Granted view access to player")
end
grant_tracker_access_by_identifier
revoke_tracker_access
revoke_tracker_access_by_identifier
remove_tracker_access
remove_tracker_access_by_identifier
has_tracker_access
Checks if a player has access to a specific tracker.
Parameters
- tracker_id: string
- source: number
Returns
- has_access: boolean
- access_type?: string ("view" | "full")
Example
local hasAccess, accessType = exports['no-gps-tracker']:has_tracker_access("tracker_123", source)
if hasAccess then
print("Player has " .. accessType .. " access")
end
has_tracker_access_by_identifier
Checks if an identifier has access to a specific tracker.
Parameters
- tracker_id: string
- identifier: string
Returns
- has_access: boolean
- access_type?: string ("view" | "full")
Example
local hasAccess, accessType = exports['no-gps-tracker']:has_tracker_access_by_identifier("tracker_123", "license:abc123")
get_tracker_access_list
Gets the access list for a tracker.
Parameters
- tracker_id: string
Returns
- access_list:
{identifier: string, access_type: string, granted_at: string}[]
Example
local accessList = exports['no-gps-tracker']:get_tracker_access_list("tracker_123")
for _, access in ipairs(accessList) do
print(access.identifier .. " has " .. access.access_type .. " access")
end
update_tracker_label
upsert_tracker
Upserts a tracker with custom fields.
Parameters
- tracker_id: string
- fields:
{is_placed?: number, placed_at?: string, placed_by?: string, placed_entity_identifier?: string, placed_on_persistent_entity?: number, label?: string}
Returns
- success: boolean
Example
local success = exports['no-gps-tracker']:upsert_tracker("tracker_123", {
label = "Updated Tracker",
is_placed = 1,
placed_at = os.date("%Y-%m-%d %H:%M:%S")
})