Upload em uma chamada
Um POST multipart com a chave no header. A resposta já traz a URL, o tamanho e o tipo do arquivo.
Alternativa ao S3 Storage de arquivos com dados no Brasil
Suba arquivos com uma chamada POST e receba o link pronto. Preço fechado em reais, tráfego incluso no plano e nenhuma cobrança por requisição. Sem IAM, sem SDK e sem fatura em dólar.
# 1 chamada: sobe o arquivo e devolve o link curl -X POST https://xt3.pro/api/upload.php \ -H "X-API-Key: $XT3_KEY" \ -F "file=@foto.png" \ -F "public=1" { "success": true, "file": { "url": "https://xt3.pro/f/9b8e…d25.png", "size_formatted": "2.4 MB" } }
const form = new FormData(); form.append('file', await fs.openAsBlob('foto.png'), 'foto.png'); form.append('public', '1'); const res = await fetch('https://xt3.pro/api/upload.php', { method: 'POST', headers: { 'X-API-Key': process.env.XT3_KEY }, body: form, }); const { file } = await res.json(); console.log(file.url); // pronto para usar
$ch = curl_init('https://xt3.pro/api/upload.php'); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['X-API-Key: ' . getenv('XT3_KEY')], CURLOPT_POSTFIELDS => [ 'file' => new CURLFile('foto.png'), 'public' => '1', ], ]); $file = json_decode(curl_exec($ch), true)['file']; echo $file['url'];
import os, requests r = requests.post( "https://xt3.pro/api/upload.php", headers={"X-API-Key": os.environ["XT3_KEY"]}, files={"file": open("foto.png", "rb")}, data={"public": "1"}, ) print(r.json()["file"]["url"])
Funciona com qualquer linguagem que faça HTTP:
XT3 vs Amazon S3
No S3, o armazenamento é barato e o resto é cobrado à parte: cada GB que sai para a internet, cada requisição, tudo em dólar. No XT3, o tráfego já vem no plano e o preço é fechado em reais.
Ajuste o seu uso mensal e compare o custo estimado.
Estimativa com os preços públicos do Amazon S3 Standard na região São Paulo (sa-east-1), publicados pela AWS em 18/09/2026: US$ 0,0405/GB-mês de armazenamento e US$ 0,15/GB de saída após 100 GB grátis por mês, com câmbio de R$ 5,18. Não considera cobrança por requisição, impostos nem IOF, que deixam o S3 ainda mais caro.
Recursos
A maioria dos projetos usa o S3 para uma coisa só: guardar arquivos e entregar por link. O XT3 faz isso bem, e só isso.
Um POST multipart com a chave no header. A resposta já traz a URL, o tamanho e o tipo do arquivo.
Escolha por arquivo. Os privados só abrem com a sua chave de leitura, separada da chave de upload.
Suporte a Range requests: o player avança o vídeo sem baixar tudo. Imagens e PDFs abrem direto no navegador.
Mande folder=contratos no upload e a pasta é criada na hora, isolada das outras contas.
Arraste e solte arquivos, copie links, troque a visibilidade e acompanhe o armazenamento e o tráfego do mês.
Plano mensal pago via Pix, sem fidelidade. Você sabe quanto vai pagar antes de o mês começar.
Como funciona
Cadastro grátis, sem cartão. Você recebe na hora uma chave privada para upload e uma pública para leitura.
Faça um POST /api/upload.php com o arquivo e a chave. Ou arraste o arquivo no painel.
Salve a URL no seu banco e sirva direto para o usuário. Acompanhe o uso pelo dashboard.
Infraestrutura e segurança
Servidores em São Paulo, entrega por HTTPS e regras que impedem que um upload vire uma brecha.
O tipo real de cada arquivo é conferido no upload. Scripts e executáveis são recusados antes de chegar ao disco.
Vazou uma chave? Gere outra no painel em segundos. A antiga para de funcionar na hora.
A URL do arquivo público é permanente. Pode salvar no banco sem se preocupar em renovar assinatura.
Preços
Comece grátis e mude de plano quando precisar. Sem fidelidade e sem taxa por requisição.
Plano gratuito para testar
Ideal para projetos pequenos
Para projetos em crescimento
No S3: ~R$ 332/mês
Máximo desempenho e economia
No S3: ~R$ 4.115/mês
Pagamento mensal via Pix. Precisa de mais espaço ou tráfego? Fale com a gente.
FAQ
Não achou o que procurava? Mande um e-mail para suporte@xt3.pro.
Ler a documentaçãoNão. O plano grátis não pede cartão nem Pix. Crie a conta, pegue a chave e teste a API com arquivos reais.
Você escolhe o plano no painel e paga via Pix. O plano fica ativo por 30 dias, sem fidelidade. O painel avisa 7 dias antes de vencer para você renovar com um novo Pix.
Seus arquivos continuam no ar. O uso acima da franquia é calculado por GB, no valor do seu plano, e aparece no dashboard para você acompanhar. Se estiver passando todo mês, vale subir de plano.
Em servidores em São Paulo. Isso reduz a latência para usuários no Brasil e mantém os dados no país.
Sim. Para cada objeto, baixe do S3 e faça um POST para /api/upload.php mantendo a pasta com o campo folder. A resposta traz a nova URL para você atualizar no seu banco.
Envie o upload com public=0. O arquivo só abre com o header X-API-Key contendo a sua chave pública de leitura, que não permite fazer uploads.
Não, e nem tenta. Se você precisa de replicação entre regiões, regras de ciclo de vida ou integração com outros serviços da AWS, o S3 é mais completo. O XT3 é para o caso mais comum: guardar arquivos e entregar por link, pagando pouco.
Crie a conta, copie a chave e mande o primeiro arquivo em cinco minutos.