Browse docs
Exports and Shared APIs
Shared APIs
| Resource | Use it for |
|---|---|
| Jobs Base client exports | Documents, radial actions, shared player interactions and tablet panels |
| Jobs Base server exports | Duty, employees, service features, dispatch, storage and society money |
| Base exports | Currency, inventory bridges, phone/tablet providers and the Sky library |
The export belongs to the resource named in its example. A shared export still uses sky_jobs_base or sky_base, even when called from a Police, Ambulance, Mechanic, Fire, Crime, DOJ or Creator integration.
Crime System exposes client and server exports for supported integrations. Call them from the correct runtime and treat every player-supplied argument as untrusted.
Integration map
Client: GetTerritories.
Server: GetTerritories, GetTerritory, GetTerritoryAtCoords, RecordTerritoryActivity, GetGraffitis, and RemoveGraffitiEntry.
Server robberies: RegisterRobbery, UpdateRobbery, UnregisterRobbery, GetRobbery, GetRobberies, StartRobbery, CompleteRobbery, CancelRobbery, and ResetRobbery.
Server PvP: RegisterPvPMode, GetPvPEvent, StartPvPEvent, CancelPvPEvent, and FinishPvPEvent.
Server: AwardCrimeReputation and GetCrimeReputation. Awards require a stable completion ID so the same activity cannot grant points twice.
Client: IsInterrogationFixed, GetInterrogationScene, GetInterrogationObjects, and StartObjectPlacement.
Server: HasInterrogationConsent, GetInterrogationConfig, GetInterrogationObjects, CreateInterrogationObject, RemoveInterrogationObject, RegisterInterrogationTool, IsPlayerCarried, IsPlayerFixed, GetPlayerSession, GetActiveSessions, and ForceEndSession.
Client: RefreshHeistCatalog, RefreshHeistPlans, RefreshHeistPlanning, GetHeistDefinition, GetHeistCatalog, GetHeistPlan, GetMyHeistPlans, and GetHeistServerTime.
The server exports configuration, Creator entries/items, runtime snapshots, heat, risk, contacts, businesses, dynamic market, batches, labs, campers, plants, processing, sales, routes, threats, power and consumption state.
Use the narrowest export for the integration. Do not use the raw developer commands as an API substitute.
Calling an export
local profile, error_code = exports.sky_crimesystem:GetCrimeReputation(identifier)
if not profile then
error(("Crime reputation lookup failed: %s"):format(error_code))
end
local territories = exports.sky_crimesystem:GetTerritories()
Integration checklist
Confirm the runtime
Match client exports with client code and server exports with server code.
Read the owning contract
Check the current source signature and return shape for the installed Crime System release before shipping the integration.
Preserve server authority
Resolve player identity, permission, ownership, items, money and state on the server before any mutation.
Handle explicit failure
Do not hide a failed export behind a silent fallback. Log the operation and error code without exposing private data.
Test through a restart
Verify that the integration handles unavailable resources and reloads its cached data after Crime System starts again.
Documents and restrained targets
Crime registers its configured jobs with the shared Crime interaction policy. Identity and license inspection still require a restrained nearby target; Crime's default policy does not require job duty. Zipties are enabled by default while handcuffs are not.
Jobs Creator employment jobs and independently managed Crime organizations remain different contexts. A service ID describes employment; the Boss Menu service-number page is not a gang-number system. See Service IDs and Numbers.