← Back to skills
extension
Category: Development & EngineeringAPI key requirement unconfirmed

fivemanage

Fivemanage SDK for FiveM — installation, screenshots (takeImage, takeServerImage, uploadImage), and centralized logs (Log, Info/Warn/Error). Use when integrating Fivemanage, capturing player screenshots, uploading images, or sending logs to the Fivemanage dashboard.

personAuthor: jakexiaohubgithub

Fivemanage SDK

Screenshots, image uploads and centralized logs for FiveM through exports.fmsdk.

Activation Contract

Load this skill when the user installs or configures the Fivemanage SDK, captures or uploads player screenshots, sends logs to the Fivemanage dashboard, or calls any exports.fmsdk function in Lua or JavaScript.

Hard Rules

  • The resource folder must be named fmsdk and sit directly in resources/; category folders are not supported.
  • screenshot-basic is required for takeImage / takeServerImage and must ensure BEFORE fmsdk in server.cfg.
  • API keys are ConVars in server.cfg (FIVEMANAGE_MEDIA_API_KEY, FIVEMANAGE_LOGS_API_KEY), never in config.json. Set only the keys for the features used.
  • takeImage is CLIENT-side; takeServerImage(playerSource, ...) and uploadImage(buffer, ...) are SERVER-side.
  • Log(dataset, level, message, metadata) is the primary log export; Info/Warn/Error(dataset, message, metadata) are fixed-level shorthands. LogMessage is legacy.
  • Include playerSource / targetSource in metadata so the SDK attaches player identifiers automatically.
  • Never expose API tokens to NUI; use presigned URLs for client-side uploads.

Decision Gates

| Need | Call | |---|---| | Screenshot from the player's own client | exports.fmsdk:takeImage({ ... }) | | Screenshot of a player from the server | exports.fmsdk:takeServerImage(playerSource, { ... }) | | Upload an existing image file/buffer | exports.fmsdk:uploadImage(buffer, { ... }) | | Log with explicit level | exports.fmsdk:Log(dataset, level, message, metadata) | | Quick log | exports.fmsdk:Info/Warn/Error(dataset, message, metadata) | | Automatic player/chat/resource logs | config.json inside fmsdk |

Execution Steps

  1. Verify install order and ConVars (read rules/installation.md).
  2. Pick the side and export from Decision Gates.
  3. Attach metadata (name, description, playerSource) so entries are searchable.
  4. Choose a dataset per concern (economy, anticheat, admin_actions).
  5. Enable automatic events in config.json when useful (read rules/configuration.md).

Output Contract

Return the server.cfg lines when installing, then runnable Lua or JS using exports.fmsdk with the side explicit and metadata included.

References

  • rules/installation.md — download, folder placement, server.cfg order, API keys.
  • rules/images.md — takeImage, takeServerImage, uploadImage, metadata.
  • rules/logs.md — Log, Info/Warn/Error, LogMessage, datasets, identifiers.
  • rules/configuration.md — config.json, automatic events, presigned URLs.
  • rules/reference-links.md — official docs and SDK download.

Upstream docs: https://docs.fivemanage.com/fivem-sdk/installation