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
Uploads de arquivos
  • /upload/handle
    Gerenciar uploads
Importação de arquivos
  • /azure/import
    Importar arquivos do Azure
  • /backblaze/import
    Importar arquivos do Backblaze
  • /box/import
    Importar arquivos do Box
  • /mega/import
    Importar arquivos do MEGA S4 Object Storage
  • /cloudfiles/import
    Importar arquivos do Rackspace Cloud Files
  • /cloudflare/import
    Importar arquivos do Cloudflare R2
  • /digitalocean/import
    Importar arquivos do DigitalOcean Spaces
  • /dropbox/import
    Importar arquivos do Dropbox
  • /ftp/import
    Importar arquivos de servidores FTP
  • /google/import
    Importar arquivos do Google Cloud Storage
  • /http/import
    Importar arquivos de servidores web
  • /minio/import
    Importar arquivos do MinIO
  • /s3/import
    Importar arquivos do Amazon S3
  • /sftp/import
    Importar arquivos de servidores SFTP
  • /supabase/import
    Importar arquivos do Supabase Storage
  • /swift/import
    Importar arquivos do OpenStack Swift
  • /tigris/import
    Importar arquivos do Tigris
  • /transloadit/import
    Importar arquivos do Transloadit Storage
    EN (English)
  • /vimeo/import
    Importar vídeos do Vimeo
  • /wasabi/import
    Importar arquivos do Wasabi
Codificação de vídeo
  • /video/adaptive
    Converter vídeos para HLS, MPEG-Dash e CMAF
  • /video/artwork
    Extrair ou inserir arte de capa de vídeos
  • /video/concat
    Concatenar vídeos
  • /video/encode
    Transcodificar, redimensionar ou aplicar marca-d’água em vídeos
  • /video/merge
    Mesclar vídeo, áudio e imagens em um único vídeo
  • /video/ondemand
    Transmitir vídeos com codificação sob demanda
  • /video/split
    Dividir vídeo
  • /video/subtitle
    Adicionar legendas a vídeos
  • /video/thumbs
    Extrair miniaturas de vídeos
  • Predefinições de vídeoEN (English)
Codificação de áudio
  • /audio/artwork
    Extrair ou inserir arte de capa de áudios
  • /audio/concat
    Concatenar áudio
  • /audio/split
    Dividir áudio
  • /audio/encode
    Codificar áudio
  • /audio/loop
    Criar loop de áudio
  • /audio/merge
    Mesclar arquivos de áudio em um só
  • /audio/waveform
    Gerar imagens de forma de onda a partir de áudio
  • Predefinições de áudioEN (English)
Processamento de imagens
  • /image/bgremove
    Remover o fundo de imagens
  • /image/enhance
    Aprimorar imagens
    EN (English)
  • /image/merge
    Mesclar várias imagens em uma única imagem
  • /image/optimize
    Otimizar imagens sem perda de qualidade
  • /image/resize
    Converter, redimensionar ou aplicar marca-d’água em imagens
Processamento de documentos
  • /document/autorotate
    Girar documentos automaticamente
  • /document/convert
    Converter documentos para formatos diferentes
  • /document/extract
    Extrair texto e imagens incorporadas
  • /document/merge
    Mesclar documentos em um só
  • /document/optimize
    Otimizar o tamanho de arquivos PDF
    EN (English)
  • /file/read
    Ler o conteúdo de arquivos
  • /document/split
    Extrair páginas
  • /document/thumbs
    Extrair imagens em miniatura de documentos
  • /html/convert
    Fazer capturas de tela de páginas web ou arquivos HTML
Inteligência artificial
  • /document/ocr
    Reconhecer texto em documentos (OCR)
  • /image/describe
    Reconhecer objetos em imagens
  • /image/facedetect
    Detectar rostos em imagens
  • /image/generate
    Gerar imagens a partir de prompts de texto
  • /image/upscale
    Aumentar a resolução de imagens
    EN (English)
  • /image/ocr
    Reconhecer texto em imagens (OCR)
  • /speech/transcribe
    Transcrever fala em arquivos de áudio ou vídeo
  • /text/speak
    Sintetizar fala em documentos
  • /text/translate
    Traduzir texto em documentos
  • /ai/chat
    Gerar respostas de chat com IA
    EN (English)
  • /video/generate
    Gerar vídeos a partir de prompts de texto
Filtragem de arquivos e segurança
  • /file/filter
    Filtrar arquivos
  • /file/verify
    Verificar o tipo de arquivo
  • /file/virusscan
    Analisar arquivos em busca de vírus
Catalogação de mídia
  • /file/hash
    Gerar hash de arquivos
  • /file/preview
    Gerar uma miniatura de pré-visualização
    EN (English)
  • /meta/write
    Gravar metadados em mídias
Compressão de arquivos
  • /file/compress
    Comprimir arquivos
  • /file/decompress
    Descompactar arquivos compactados
Avaliação de código
  • /http/request
    Chamar endpoints HTTP
    EN (English)
  • /script/run
    Executar scripts em Assemblies
Exportação de arquivos
  • DownloadsEN (English)
  • /azure/store
    Exportar arquivos para o Microsoft Azure
  • /backblaze/store
    Exportar arquivos para o Backblaze
  • /box/store
    Exportar arquivos para o Box
  • /mega/store
    Exportar arquivos para o MEGA S4 Object Storage
  • /cloudfiles/store
    Exportar arquivos para o Rackspace Cloud Files
  • /cloudflare/store
    Exportar arquivos para o Cloudflare R2
  • /digitalocean/store
    Exportar arquivos para o DigitalOcean Spaces
  • /dropbox/store
    Exportar arquivos para o Dropbox
  • /ftp/store
    Exportar arquivos para servidores FTP
  • /google/store
    Exportar arquivos para o Google Cloud Storage
  • /minio/store
    Exportar arquivos para o MinIO
  • /s3/store
    Exportar arquivos para o Amazon S3
  • /sftp/store
    Exportar arquivos para servidores SFTP
  • /supabase/store
    Exportar arquivos para o Supabase Storage
  • /swift/store
    Exportar arquivos para o OpenStack Swift
  • /tigris/store
    Exportar arquivos para o Tigris
  • /transloadit/store
    Armazenar arquivos no Transloadit Storage
    EN (English)
  • /tus/store
    Exportar arquivos para servidores compatíveis com tus
  • /vimeo/store
    Exportar arquivos para o Vimeo
  • /wasabi/store
    Exportar arquivos para o Wasabi
  • /youtube/store
    Exportar arquivos para o YouTube
Smart CDN
  • /file/serve
    Servir arquivos para navegadores web
  • /tlcdn/deliver
    Armazenar em cache e entregar arquivos globalmente
  • Preços

Importar arquivos do Amazon S3

🤖/s3/import importa diretórios inteiros de arquivos do seu bucket do S3.

/s3/import Robot

Se você está começando a usar o Amazon S3, consulte nosso tutorial sobre como usar seu próprio bucket S3 EN (English).

A URL do arquivo de resultado no seu bucket S3 será retornada no Assembly Status JSON.

Aviso

Use nomes de bucket compatíveis com DNS. O nome do seu bucket deve ser compatível com DNS⁠ e não deve conter letras maiúsculas. Todos os caracteres não alfanuméricos nos nomes dos arquivos serão substituídos por um sublinhado, e os espaços serão substituídos por hifens. Se o seu bucket S3 existente contiver letras maiúsculas ou não for compatível com DNS por outro motivo, reescreva as URLs de resultado usando o parâmetro url_prefix do Robot.

Limitar o acesso

Você também precisará adicionar permissões ao seu bucket para que a Transloadit possa acessá-lo corretamente. Veja um exemplo de política IAM que você pode usar. Seguindo o princípio do menor privilégio⁠, ela contém as permissões mínimas necessárias para importar um arquivo do seu bucket S3 usando a Transloadit. Você pode precisar de mais permissões (especialmente permissões de visualização), dependendo da sua aplicação.

Altere {BUCKET_NAME} nos valores de Sid e Resource conforme necessário. Além disso, essa política concederá as permissões mínimas necessárias a todos os seus usuários. Recomendamos que você crie um usuário separado no Amazon IAM e use o User ARN dele (disponível na aba “Summary” de um usuário aqui⁠) como valor de Principal. Você pode encontrar mais informações sobre isso aqui⁠.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowTransloaditToImportFilesIn{BUCKET_NAME}Bucket",
      "Effect": "Allow",
      "Action": ["s3:GetBucketLocation", "s3:ListBucket"],
      "Resource": ["arn:aws:s3:::{BUCKET_NAME}", "arn:aws:s3:::{BUCKET_NAME}/*"]
    }
  ]
}

O valor de Sid é apenas um identificador para você reconhecer a regra depois. Você pode dar a ele o nome que quiser.

A política precisa ser separada em duas partes, porque a ação ListBucket exige permissões no bucket, enquanto as outras ações exigem permissões nos objetos do bucket. Quando a política se aplica aos objetos, há uma barra final e um asterisco no parâmetro Resource; quando ela se aplica ao bucket, a barra e o asterisco são omitidos.

Para construir URLs de resultado corretas, precisamos saber em qual região seu bucket S3 está localizado. Para isso, exigimos a permissão GetBucketLocation. Determinar a região do seu bucket dessa forma também deixará suas Assemblies mais lentas. Para tornar isso muito mais rápido e também dispensar a permissão GetBucketLocation, adicionamos o parâmetro bucket_region aos Robots /s3/store e /s3/import. Recomendamos sempre usar esse parâmetro nesses Robots.

Lembre-se de que, se você usar criptografia no bucket, talvez também precise adicionar "sts:*" e "kms:*" à política do bucket. Leia aqui⁠ e aqui⁠ caso encontre problemas com nosso exemplo de política de bucket.

Mantenha suas credenciais seguras
Como você precisa fornecer credenciais para este Robot, sempre use isso em conjunto com Templates e/ou Credenciais de Template, para que você nunca vaze segredos ao transmitir suas Assembly Instructions.
Observação
A Transloadit suporta tamanhos de arquivo de até 200 GB. Se você precisar de um limite maior para sua aplicação, entre em contato.

Exemplo de uso

Importe arquivos do diretório path/to/files e de seus subdiretórios:

{
  "steps": {
    "imported": {
      "credentials": "YOUR_AWS_CREDENTIALS",
      "path": "path/to/files/",
      "recursive": true,
      "robot": "/s3/import"
    }
  }
}

Parâmetros

  • interpolate

    boolean | Record<string, boolean>

    Controla se as Assembly Variables são interpoladas em campos individuais de instruções.

    Por padrão, a maioria dos campos de instruções dos Robots interpola Assembly Variables. Defina isso como false para tratar todos os campos de instruções como texto literal, ou defina o caminho de um campo individual como false para tratar apenas esse campo como texto literal. Para campos específicos de um Robot que são literais por padrão, defina isso como true ou defina o caminho desse campo como true para voltar a usar a interpolação.

    Use nomes de campos como path ou caminhos com pontos como ffmpeg.vf para objetos aninhados.

  • output_meta

    Record<string, boolean> | boolean | Array<string>

    Permite especificar um conjunto de metadados cujo cálculo exige mais CPU e que, por isso, vem desativado por padrão para manter o processamento das suas Assemblies rápido.

    Para imagens, você pode adicionar "has_transparency": true neste objeto para extrair se a imagem contém partes transparentes e "dominant_colors": true para extrair um array de códigos de cores hexadecimais da imagem.

    Para imagens, você também pode adicionar "blurhash": true para extrair uma string BlurHash⁠ — uma representação compacta de um placeholder da imagem, útil para exibir uma prévia desfocada enquanto a imagem completa carrega.

    Para vídeos, você pode adicionar o parâmetro "colorspace": true para extrair o espaço de cores do vídeo de saída.

    Para vídeos, você também pode adicionar "interlaced": true para detectar se o vídeo é entrelaçado. Isso combina a flag computacionalmente barata field_order do ffprobe com uma passagem de amostragem idet limitada sobre os primeiros quadros da origem, expondo interlaced, field_order e um objeto de diagnóstico interlace_detection em file.meta. Isso é computacionalmente caro e cobrado de acordo.

    Para áudio, você pode adicionar "mean_volume": true para obter um único valor que representa o volume médio do arquivo de áudio.

    Você também pode definir isso como false para pular a extração de metadados e acelerar a transcodificação.

  • user_meta

    Record<string, any>(padrão: {})

    Adiciona metadados JSON personalizados a cada arquivo emitido sem modificar seu conteúdo. Objetos e arrays aninhados são suportados.

    A herança depende do Robot. Os valores são mesclados com o user_meta existente no arquivo de saída; o Step atual substitui as chaves de nível superior com o mesmo nome. Atribua explicitamente as chaves necessárias quando um Robot criar novas saídas.

    Nos Steps de processamento, ${file.*} se refere à primeira entrada e ${result.*} ao arquivo emitido. Os valores são avaliados para cada saída após a execução do Robot, antes da extração subsequente de metadados e do armazenamento temporário. Em :original, os valores são avaliados para cada upload antes da extração de metadados.

    Os Steps subsequentes leem ${file.user_meta.key}. Consulte Metadados personalizados para ver um exemplo completo e as regras de herança.

  • result

    boolean(padrão: false)

    Se os resultados deste Step devem estar presentes no Assembly Status JSON

  • queue

    batch

    Definir a fila como “batch” rebaixa manualmente a prioridade dos Jobs deste Step, para evitar o consumo de vagas prioritárias de Jobs em Jobs que não precisam de tempo zero de espera na fila

  • force_accept

    boolean(padrão: false)

    Forçar um Robot a aceitar um tipo de arquivo que ele teria ignorado.

    Por padrão, os Robots ignoram arquivos que não conhecem. O 🤖/video/encode, por exemplo, ignora tranquilamente imagens de entrada.

    Com o parâmetro force_accept definido como true, você pode forçar os Robots a aceitar todos os arquivos enviados a eles. Isso normalmente leva a erros e só deve ser usado para depuração ou para lidar com casos extremos.

  • ignore_errors

    boolean | Array<meta | import | execute>(padrão: [])

    Ignorar erros durante fases específicas do processamento.

    Definir isso como ["meta"] fará com que o Robot ignore erros durante a extração de metadados.

    Definir isso como ["execute"] fará com que o Robot ignore erros durante a fase principal de execução.

    Definir isso como ["import"] fará com que o Robot ignore erros ao importar o arquivo de origem. A fase "import" está disponível apenas para Robots de importação.

    Definir isso como true equivale a ["meta", "import", "execute"] e fará com que erros sejam ignorados nas três fases.

  • force_name

    string | Array<string> | null(padrão: null)

    Nome personalizado para o(s) arquivo(s) importado(s). Por padrão, os nomes dos arquivos são derivados da origem.

  • import_on_errors

    Array<meta>(padrão: [])

    Definir isso como ["meta"] ainda importa o arquivo quando ocorrem erros de extração de metadados. ignore_errors é parecido: também ignora o erro e garante que o Robot não pare, mas não importa o arquivo.

  • credentials

    string

    Crie as credenciais de Template correspondentes na sua conta da Transloadit e use o nome das suas credenciais de Template como valor deste parâmetro. Elas conterão os valores de bucket, key, secret e bucket_region do seu S3.

    Embora recomendemos sempre usar credenciais de Template, alguns casos de uso exigem credenciais dinâmicas, para os quais o uso de credenciais de Template é pouco prático devido à sua natureza estática. Se você tiver essa necessidade, pode usar os seguintes parâmetros no lugar delas: "bucket", "bucket_region" (por exemplo: "us-east-1" ou "eu-west-2"), "key", "secret".

  • path — obrigatório

    string | Array<string>

    O caminho no seu bucket para o arquivo ou diretório específico. Se o caminho apontar para um arquivo, apenas esse arquivo será importado. Por exemplo: images/avatar.jpg.

    Se apontar para um diretório, indicado por uma barra no final (/), todos os arquivos diretamente contidos nesse diretório serão importados. Por exemplo: images/.

    Os diretórios não são importados recursivamente. Se quiser importar arquivos de subdiretórios e dos subdiretórios deles, habilite o parâmetro recursive.

    Se quiser importar todos os arquivos do diretório raiz, use / como valor aqui. Nesse caso, certifique-se de que todos os seus objetos pertençam a um caminho. Se houver objetos na raiz do seu bucket que não tenham o prefixo /, você receberá um erro: A client error (NoSuchKey) occurred when calling the GetObject operation: The specified key does not exist.

    Você também pode usar um array de strings de caminhos aqui para importar vários caminhos no mesmo Step do Robot.

  • recursive

    boolean(padrão: false)

    Definir este parâmetro como true permitirá importar arquivos de subdiretórios e dos subdiretórios deles (etc.) no caminho especificado.

    Use os parâmetros de paginação page_number e files_per_page com cuidado aqui.

  • page_number

    string | number(padrão: 1)

    O número da página de paginação. Por enquanto, para não quebrar a compatibilidade com versões anteriores em importações não recursivas, isso só funciona quando recursive está definido como true.

    Ao fazer importações grandes, certifique-se de que outros scripts não adicionem nem removam arquivos no seu caminho; caso contrário, a paginação poderá apresentar resultados inesperados.

  • files_per_page

    string | number(padrão: 1000)

    O tamanho da página de paginação. Por enquanto, isso só funciona quando recursive é true, para não quebrar a compatibilidade com versões anteriores em importações não recursivas.

  • return_file_stubs

    boolean(padrão: false)

    Se definido como true, o Robot ainda não importará os arquivos em si, e em vez disso retornará um stub de arquivo vazio que inclui uma URL a partir da qual o arquivo pode ser importado por Robots subsequentes. Isso é útil em casos em que os Steps subsequentes precisam de mais controle sobre o processo de importação, como acontece com o 🤖/video/ondemand. Este parâmetro só deve ser definido se todos os Steps subsequentes usarem Robots que suportem stubs de arquivo.

  • range

    string | Array<string>

    Permite especificar um ou mais intervalos de bytes para importar do arquivo. O S3 precisa oferecer suporte a requisições de intervalo para que isso funcione.

    Intervalo único: use uma string como "0-99" para importar os bytes de 0 a 99 (os primeiros 100 bytes).

    Múltiplos intervalos: use um array como ["0-99", "200-299"] para importar vários intervalos separados. O arquivo resultante conterá todos os intervalos solicitados concatenados, com bytes de valor zero (\0) preenchendo as lacunas entre intervalos não contíguos.

    Formatos de intervalo:

    • "0-99": bytes de 0 a 99 (inclusive)
    • "100-199": bytes de 100 a 199 (inclusive)
    • "-100": os últimos 100 bytes do arquivo

    Observações importantes:

    • O S3 oferece suporte a requisições de intervalo por padrão
    • Intervalos sobrepostos são permitidos e serão incluídos conforme solicitado
    • O tamanho do arquivo resultante será a maior posição de byte solicitada, com as lacunas preenchidas com bytes de valor zero
    • Cada intervalo é obtido em uma requisição separada para garantir a compatibilidade com o S3

Demonstrações

  • Service to automatically import specific files from S3 EN (English)
  • Service to import entire folders of files from S3 EN (English)
  • Service to resize all images in an S3 bucket EN (English)

Publicações relacionadas no blog

  • Introducing new /s3/import Robot for easy S3 imports EN (English) 17 de julho de 2013
  • New pricing model for future Transloadit customers EN (English) 7 de fevereiro de 2018
  • Introducing recursive imports for S3 in Transloadit EN (English) 14 de dezembro de 2018
  • Building an alt-text to speech generator with Transloadit EN (English) 9 de maio de 2022
  • How to set up an S3 bucket to use with Transloadit EN (English) 25 de março de 2023
Página anterior ← /minio/importPróxima página /sftp/import →
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)