Skip to main content

Overview

This guide walks you through integrating NoCloud storage with lb-phone so that all image, video, and audio uploads go through NoCloud’s API. There are 5 steps to complete the integration:
  1. Change the upload method to Custom
  2. Whitelist the NoCloud domain
  3. Set your NoCloud API keys
  4. Add the GetPresignedUrl server function
  5. Update the UploadMethods table

Step 1: Change Upload Method

Edit lb-phone/config.lua and find the Config.UploadMethod section. Change all values to "Custom":
This tells lb-phone to use the custom upload method defined in shared/upload.lua.

Step 2: Whitelist NoCloud Domain

In the same lb-phone/config.lua file, find Config.UploadWhitelistedDomains and add "nonefivem.com" to the list:
This allows NoCloud URLs to be displayed inside the phone UI.

Step 3: Set Your NoCloud API Keys

Open lb-phone/server/apiKeys.lua and replace the API keys with your NoCloud API keys:
Replace each "API_KEY_HERE" with your actual NoCloud API key. You can find your API key in the NoCloud Dashboard.

Step 4: Add the GetPresignedUrl Function

Open lb-phone/server/custom/functions/functions.lua and replace the following function. It fetches a signed upload URL from the NoCloud API:

Step 5: Update UploadMethods

Open lb-phone/shared/upload.lua and replace the existing UploadMethods table with the one below. The Custom entry is configured to work with NoCloud’s presigned URLs:

Done

After completing all 5 steps, restart your server. All media uploads from lb-phone (photos, videos, and audio) will now go through NoCloud storage.