screenshot-basic
Upload screenshot-basic captures straight to BasiX, including from the short overload that cannot send headers.
You need a BasiX API key for this. Free account, 3 GB included, no card.Get your key →
1.Create a key
Create an upload-scoped key in your client area. Upload-scoped keys work on every plan, including the free one, and cannot delete anything — which is what you want in a file that ends up in a resource folder.
2.Upload with a header, when you can send one
The normal case: pass the Authorization header alongside the URL.
luaexports['screenshot-basic']:requestClientScreenshotUpload( source, 'https://upload.basix.media/api/v3/file', { headers = { Authorization = 'Bearer YOUR_BASIX_KEY' }, fileName = 'file', }, function(err, data) print(json.decode(data).url) end )3.Or put the key in the URL, when you cannot
screenshot-basic has a short overload that takes only a URL. BasiX accepts `?apiKey=` on upload endpoints for exactly this case. Use it only where a header is impossible: a key in a URL ends up in logs and in history.
luaexports['screenshot-basic']:requestClientScreenshotUpload( source, 'https://upload.basix.media/api/v3/file?apiKey=YOUR_BASIX_KEY', 'file', function(err, data) print(data) end )
Configuration last checked against the upstream project on 2026-09-20.
Try it on your own server
Create a free account and your API key is ready in about two minutes. 3 GB included, bandwidth never billed, no card needed.
Something not working, or a script not listed? Read the full FiveM docs or ask us — we will wire it up with you.