Transloadit
Preços
  • Uploads de arquivos
  • Importação de arquivos
  • Processamento em lote (English)
  • Codificação de vídeo
  • Codificação de áudio
  • Processamento de imagens
  • Processamento de documentos
  • Inteligência artificial
  • Filtragem de arquivos e segurança
  • Catalogação de mídia
  • Compressão de arquivos
  • Avaliação de código
  • Exportação de arquivos
  • Smart CDN
  • Ver todos os serviços
  • Explore integrações (English)
  • Explore demos ao vivo (English)
  • Uppy
  • TransloaditKit
  • Android SDK
  • Node.js SDK
  • Python SDK
  • Ruby SDK
  • Go SDK
  • Java SDK
  • PHP SDK
  • Zapier
  • MCP Server
  • Transloadit CLI (English)
  • Terraform
  • Essenciais
  • Boas práticas
  • Perguntas frequentes (English)
  • Robots
  • API
  • Formatos (English)
  • Crie seu primeiro app
  • Sobre (English)
  • Comparações (English)
  • Código aberto (English)
  • Depoimentos (English)
  • Vagas (English)
  • Segurança (English)
  • Publicações (English)
  • Notícias para devs (English)
  • Dicas para devs (English)
  • Imprensa (English)
  • Pesquisa (English)
  • Estudos de caso (English)
  • Soluções (English)
  • Guias (English)
  • Glossário (English)
  • Jurídico (English)
  • Ferramentas (English)
  • Ajudando a Coursera a levar educação a milhões de pessoas no mundo todo (English)
  • Suporte da Transloadit
  • Suporte a código aberto (English)
  • Acordo de nível de serviço (English)
EssenciaisRobotsPerguntas frequentesEN (English)APIFormatosEN (English)Boas práticas
Primeiros passos
  • Visão geral
  • Meu primeiro app
  • Salvando arquivos de resultado
Tópicos
  • Assembly Instructions
  • Assembly Variables
  • Avaliação dinâmica
  • Templates
  • Webhooks
  • Credenciais de terceiros
  • Builtin Templates
  • Estratégias de redimensionamento
  • Assembly Execution Progress
  • Workspaces
  • Agentes de IA
  • Parâmetro use avançado
  • O parâmetro ignore_errors
Kits de desenvolvimento de software
  • Visão geral
  • SDK para Android
  • Navegadores
  • Convex
  • cURL
  • SDK para Go
  • SDK para Java
  • Servidor MCP
  • Formulário multipart
  • SDK para Node.js
  • SDK para PHP
  • SDK para Python
  • SDK para Ruby
  • Terraform
  • TransloaditKit
  • Integração com o Zapier
Migração
  • Migrate from Cloudinary to TransloaditEN (English)
  • Migrate from Uploadcare to TransloaditEN (English)
  • Migrate from Mux to TransloaditEN (English)
  • Migrate from Filestack to TransloaditEN (English)

Uppy para upload de arquivos

transloadit/uppy⁠

Uppy⁠ é uma ferramenta de upload de arquivos de código aberto para navegadores web, criada pela Transloadit. Com mais de 30.000 usuários que deram uma estrela ao projeto no GitHub, é a ferramenta de upload de arquivos nº 1 do mundo. Os uploads podem resistir a oscilações de rede, falhas do navegador e saídas acidentais da página graças ao suporte integrado a tus⁠. O Uppy é a maneira recomendada de integrar a Transloadit aos navegadores web.

O plugin da Transloadit⁠ para Uppy ajuda você a se comunicar com a API da Transloadit. Ele pode ser usado com todos os outros plugins do Uppy, por exemplo, o seletor de arquivos em uma interface modal com suporte a importações de serviços de terceiros como o Instagram, a integração com formulários HTML e muito mais.

A Transloadit hospeda o tusd para uploads retomáveis e a nossa API de codificação. Quando você adiciona fontes remotas, também hospedamos o Companion para você.

Uploads com Uppy + Transloadit

Pense no Uppy como a UX de upload no navegador e na Transloadit como o pipeline de processamento:

  1. Uppy coleta arquivos (locais, da câmera ou de fontes remotas) e faz o upload deles com retomada via tus.
  2. Transloadit executa sua Assembly (codificação, otimização, análise, armazenamento etc.).
  3. A entrega ocorre a partir do seu armazenamento, opcionalmente pela sua CDN ou pela CDN da Transloadit (TLCDN).

Se você só precisa de uploads e armazenamento, pode manter sua Assembly mínima (apenas /upload/handle e um Step de exportação). Se precisar de transformações, adicione os Robots adequados e mantenha a mesma UX de upload; o Uppy não muda.

Isso facilita oferecer uma interface única e consistente de upload enquanto você substitui ou amplia os Steps de processamento conforme seu produto evolui.

Guias de frameworks

Comece pelo guia canônico do Uppy⁠ para configurar o Template e a assinatura no servidor; depois, vá para a seção do cliente para o seu stack:

  • JavaScript⁠
  • React⁠
  • Next.js⁠
  • Vue⁠
  • Angular⁠

O guia mantém o Auth Secret da Transloadit no seu servidor, assina opções de Assembly com validade curta e fornece ao navegador apenas os valores exigidos por @uppy/transloadit. Seu servidor deve escolher o Template permitido e autorizar o usuário atual antes de assinar; ele não deve assinar Instructions arbitrárias fornecidas pelo navegador.

Exemplo

Para fins de demonstração, vamos mostrar um cenário em que tudo funciona como esperado, usando a detecção de rostos da Transloadit com um seletor de arquivos e nosso bundle da CDN. Esta demonstração pronta para copiar e colar coloca deliberadamente uma Auth Key e Instructions não assinadas no navegador. Use-a apenas com credenciais de teste. Em produção, use o fluxo com Template e assinatura no servidor descrito no guia de frameworks acima.

<!-- TEST/DEMO ONLY: uses test credentials and unsigned Instructions in the browser. -->
<!-- For production, use https://uppy.io/docs/guides/uppy-transloadit/ -->
<!-- This pulls Uppy from our CDN -->
<!-- For smaller self-hosted bundles, install Uppy and plugins manually: -->
<!-- npm i @uppy/core @uppy/dashboard @uppy/image-editor @uppy/remote-sources @uppy/transloadit -->
<link href="https://releases.transloadit.com/uppy/v5.2.4/uppy.min.css" rel="stylesheet" />
<button id="browse">Select Files</button>
<script type="module">
  import {
    Uppy,
    Dashboard,
    ImageEditor,
    RemoteSources,
    Transloadit,
  } from 'https://releases.transloadit.com/uppy/v5.2.4/uppy.min.mjs'
  const uppy = new Uppy()
    .use(Transloadit, {
      waitForEncoding: true,
      alwaysRunAssembly: true,
      assemblyOptions: {
        params: {
          // To avoid tampering, use Signature Authentication:
          // https://transloadit.com/docs/api/authentication/
          auth: {
            key: 'YOUR_TRANSLOADIT_KEY',
          },
          // It's often better to store encoding instructions in your account
          // and use a template_id instead of adding these steps inline
          steps: {
            ':original': {
              robot: '/upload/handle',
            },
            faces_detected: {
              use: ':original',
              robot: '/image/facedetect',
              crop: true,
              faces: 'max-confidence',
              format: 'preserve',
              crop_padding: '10%',
            },
            exported: {
              use: ['faces_detected', ':original'],
              robot: '/s3/store',
              credentials: 'demo_s3_credentials',
              url_prefix: 'https://demos.transloadit.com/',
            },
          },
        },
      },
    })
    .use(Dashboard, { trigger: '#browse' })
    .use(ImageEditor, { target: Dashboard })
    // Optional: only needed for remote sources. Local-device uploads do not need Companion.
    .use(RemoteSources, {
      companionUrl: 'https://api2.transloadit.com/companion',
    })
    .on('complete', ({ transloadit }) => {
      // Due to waitForEncoding:true this is fired after encoding is done.
      // Alternatively, set waitForEncoding to false and provide a notify_url
      console.log(transloadit) // Array of Assembly Statuses
      transloadit.forEach((assembly) => {
        console.log(assembly.results) // Object of encoding results keyed by Step name
      })
    })
    .on('error', (error) => {
      console.error(error)
    })
</script>

Para ver mais exemplos, confira examples/⁠, ou teste-os na prática⁠. O Uppy e a Transloadit são muito versáteis, então você pode ter uma necessidade diferente e, provavelmente, já temos suporte para ela.

Documentação

Veja a documentação completa do plugin da Transloadit para Uppy⁠, que cobre toda a API do plugin. Comece pelo guia de frameworks⁠ para uma integração de ponta a ponta.

Página anterior ← SDK para AndroidPróxima página Convex →
Falar com o suporte⁠

TransloaditVerificando status…

Produto

  • Serviços
  • Preços
  • Demonstrações EN (English)
  • Ferramentas EN (English)
  • Segurança EN (English)
  • Suporte

Empresa

  • Sobre EN (English)/Imprensa EN (English)
  • Blog EN (English)/Vagas EN (English)
  • Comparações EN (English)/Matriz de conformidade EN (English)
  • Pesquisa EN (English)
  • Código aberto EN (English)
  • Soluções EN (English)

Documentação

  • Primeiros passos
  • Transcodificação
  • Perguntas frequentes EN (English)
  • API
  • Guias EN (English)/Dicas para devs EN (English)
  • Formatos suportados EN (English)

Mais

  • Status da plataforma⁠
  • Fórum da comunidade⁠
  • StackOverflow⁠
  • Uppy EN (English)
  • tus⁠

© 2009–2026 Transloadit-II GmbH

Privacidade EN (English)Termos EN (English)Aviso legal EN (English)
EnglishDeutschEspañolPortuguês (Brasil)