Integrações
Use a CDN com o screenshot-basic, o ox_inventory, a NUI e a loading screen, e envie arquivos de qualquer script pela API HTTP.
Use a CDN com o screenshot-basic, o ox_inventory, a NUI e a loading screen, e envie arquivos de qualquer script pela API HTTP.
A CDN serve de depósito para tudo o que a cidade mostra: os ícones do inventário, a loading screen, a NUI dos scripts e os prints que o jogo tira. Esta página mostra as integrações que o painel do FiveDash já traz prontas e, para o resto, como enviar arquivos pela API HTTP. É para quem configura os scripts do servidor.
O painel gera o código pronto do screenshot-basic quando você cria uma chave.
Em CDN → Arquivos, crie (ou use) a pasta screenshots.
Em CDN → Configurações → Chaves de envio, clique em Nova chave, escolha a pasta screenshots em Envia para e clique em Criar chave.
Na janela Chave criada, abra a aba screenshot-basic (Lua) e clique em Copiar código. O código já vem com o endereço de envio e a chave.
Cole o código no lado do cliente do script que tira o print e reinicie o script.
O código que o painel gera tem este formato:
exports['screenshot-basic']:requestScreenshotUpload('https://cdn.fivex.sh/api/v1/upload', 'file', {
headers = { ['Authorization'] = 'Bearer fdm_xxxxxxxx' },
encoding = 'webp'
}, function(data)
local res = json.decode(data)
print(res.url) -- cdn.fivex.sh/cidade-exemplo/screenshots/print-….webp
end)
res.url é o link público do print, pronto para mandar num log ou num webhook.
Envie os ícones para uma pasta, como itens. Cada item usa um arquivo com o nome dele, como nome-do-item.png.
Em CDN → Arquivos, selecione a pasta para ver os detalhes dela. Em Imagens do inventário, copie a linha pronta.
Cole a linha no server.cfg e reinicie o servidor.
A linha tem este formato:
setr inventory:imagepath "https://cdn.fivex.sh/cidade-exemplo/itens"
Para usar um arquivo em HTML, CSS, Lua ou no Discord, abra o menu do arquivo e use Copiar como:
| Opção | Onde usar | O que copia |
|---|---|---|
| Lua | config.lua e scripts | "https://cdn.fivex.sh/cidade-exemplo/itens/agua.png" |
| HTML (imagem) | A NUI e a loading screen | <img src="https://cdn.fivex.sh/…" alt="agua"> |
| HTML (vídeo) | Fundo em vídeo da loading screen | <video src="https://cdn.fivex.sh/…" autoplay muted loop playsinline></video> |
| HTML (áudio) | Música da loading screen | <audio src="https://cdn.fivex.sh/…" preload="auto"></audio> |
| CSS | Fundo da NUI ou da loading screen | background-image: url("https://cdn.fivex.sh/…"); |
| Markdown | Mensagens no Discord |  |
Scripts de celular, câmeras, anexos de denúncia e qualquer outra ferramenta que faça uma requisição HTTP podem enviar arquivos com uma chave de envio.
curl -X POST https://cdn.fivex.sh/api/v1/upload \
-H "Authorization: Bearer fdm_xxxxxxxx" \
-F "file=@print.png"
| Parte | Valor |
|---|---|
| Método e endereço | POST https://cdn.fivex.sh/api/v1/upload |
Authorization | Bearer seguido da chave (fdm_…) |
| Corpo | multipart/form-data com um arquivo no campo file (ou files[]) |
| Tamanho | Até 20 MiB por arquivo |
| Formatos | PNG, JPEG, WebP, GIF, SVG, MP4, WebM, MOV, MP3, OGG, WAV, M4A |
| Pasta | Sempre a pasta da chave. Não dá para escolher outra no formulário. |
Idempotency-Key (opcional) | De 8 a 128 caracteres (letras, números, _, ., -). Repetir o mesmo envio com a mesma chave por até 24 horas não duplica o arquivo. |
O nome do arquivo vem do arquivo enviado. Se já existir um com o mesmo nome na pasta, o novo ganha um número (print-1.png). As configurações de Imagens da CDN (otimização, largura máxima, metadados) também valem para os envios pela API.
A resposta traz o link público em url:
{
"ok": true,
"id": "a1b2c3d4-…",
"url": "https://cdn.fivex.sh/cidade-exemplo/screenshots/print.png",
"file": {
"id": "a1b2c3d4-…",
"name": "print.png",
"kind": "image",
"mime": "image/webp",
"size": 482133,
"width": 1920,
"height": 1080,
"uploadedBy": "Chave: Câmera do jogo",
"createdAt": "2026-11-09T14:28:00.000Z"
}
}
Só com uma chave que tem Também pode apagar, e só arquivos que essa mesma chave enviou:
curl -X DELETE https://cdn.fivex.sh/api/v1/files/a1b2c3d4-… \
-H "Authorization: Bearer fdm_xxxxxxxx"
A resposta é {"ok":true}.
Os erros vêm como {"ok": false, "code": "…", "message": "…"}, com a mensagem em português.
| Status | Quando |
|---|---|
400 | Formulário inválido, sem arquivo no campo file, mais de um arquivo, ou Idempotency-Key inválida. |
401 | Chave ausente, inválida ou revogada. |
403 | A chave não pode apagar arquivos. |
404 | A pasta da chave não está disponível, ou o arquivo a apagar não existe (ou não é dessa chave). |
409 | Mesma Idempotency-Key com outro arquivo. |
413 | Arquivo maior que o permitido. |
429 | Uma franquia do plano foi atingida ou muitas tentativas. |
503 | A CDN está indisponível. Tente de novo. |
Detalhes técnicos completos em API da CDN.
Dá para usar o ShareX ou outro programa de print?
O FiveDash não traz uma configuração pronta para eles. Qualquer programa que consiga fazer um POST com multipart/form-data no campo file e o cabeçalho Authorization: Bearer fdm_… funciona com a API acima. A resposta traz o link em url.
O print enviado aparece no painel? Sim. Ele cai na pasta da chave, com Enviado por “Chave: …”, e conta no espaço e nas franquias.
Posso mandar o link do print num log do FiveDash?
Sim. No export, use a opção image com o link. Veja Recurso FiveM.