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 (English)
  • TransloaditKit (English)
  • Android SDK (English)
  • Node.js SDK (English)
  • Python SDK (English)
  • Ruby SDK (English)
  • Go SDK (English)
  • Java SDK (English)
  • PHP SDK (English)
  • Zapier (English)
  • MCP Server (English)
  • Terraform (English)
  • Essenciais
  • Boas práticas
  • Perguntas frequentes (English)
  • Robots (English)
  • API (English)
  • 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)
EssenciaisRobotsEN (English)Perguntas frequentesEN (English)APIEN (English)FormatosEN (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 geralEN (English)
  • Android SDKEN (English)
  • BrowsersEN (English)
  • ConvexEN (English)
  • cURLEN (English)
  • Go SDKEN (English)
  • Java SDKEN (English)
  • MCP ServerEN (English)
  • Multipart FormEN (English)
  • Node.js SDKEN (English)
  • PHP SDKEN (English)
  • Python SDKEN (English)
  • Ruby SDKEN (English)
  • TerraformEN (English)
  • TransloaditKitEN (English)
  • Zapier IntegrationEN (English)
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)

Salvando arquivos de resultado

Exemplo de Assembly Status JSON

Depois do redimensionamento de imagem de Meu primeiro app, o Step crop_thumbed produz uma imagem 1500x500. Este trecho ilustrativo do Assembly Status JSON EN (English) mostra os campos necessários para identificar e salvar esse resultado. Outros campos do status foram omitidos; os IDs e as URLs de exemplo serão diferentes na sua resposta real.

{
  "assembly_id": "7828446e5acd4aa996dce3455ec914e9",
  "ok": "ASSEMBLY_COMPLETED",
  "uploads": [
    {
      "id": "a30bd0776e7f4ac3817b056d102e8219",
      "name": "joe-gardner-149699.jpg",
      "ssl_url": "https://temporary-files.example/upload.jpg"
    }
  ],
  "results": {
    "crop_thumbed": [
      {
        "id": "b8d12f6c517541ca86bf50c537cedb27",
        "original_id": "a30bd0776e7f4ac3817b056d102e8219",
        "name": "joe-gardner-149699.jpg",
        "ssl_url": "https://temporary-files.example/resized.jpg",
        "meta": {
          "width": 1500,
          "height": 500
        }
      }
    ]
  }
}

Como você pode ver, a Transloadit fornece os locais finais e os metadados de:

  • todos os arquivos enviados por upload - na chave uploads
  • todos os arquivos de resultado produzidos - na chave results

Cada objeto de arquivo contém metadados e também um ssl_url que aponta para o resultado. Se você usou um dos nossos Robots de exportação EN (English), esses locais vão refletir o armazenamento que você especificou, como o seu bucket S3. Caso contrário, o local é uma URL temporária que será removida após 24 horas EN (English).

Aviso

As URLs temporárias servem apenas para baixar os arquivos uma vez para o seu próprio armazenamento. Nunca compartilhe essas URLs com usuários finais nem as use em produção. Veja as restrições do armazenamento temporário EN (English) para conhecer limitações importantes de uso.

Dependendo da sua integração, você pode:

  • Processar os resultados localmente, onde você faz a requisição,
  • Fazer com que os resultados sejam adicionados a um formulário e enviados para o seu backend⁠, ou
  • (Com o Async Mode) Deixar a Transloadit enviar o Assembly Status JSON EN (English) para a sua notify_url, que você pode então usar para salvar registros no seu banco de dados.

Há um exemplo disso na página de Webhooks.

Exibindo arquivos de resultado para os seus usuários finais

Depois de salvar os arquivos em um armazenamento persistente e de gravar no seu banco de dados os metadados que forem úteis para o seu app, você pode servi-los aos seus usuários. Substitua a URL de exemplo abaixo pela URL no seu próprio armazenamento para exibir a imagem recortada:

<img
  alt="Resized uploaded image"
  src="https://your-storage.example/resized.jpg"
/>

Se você estiver lidando com vídeo, pode dar uma olhada em players como HLS.js⁠, Plyr⁠ ou indigo-player⁠, que também têm suporte a HTTP live streaming EN (English) e MPEG-DASH EN (English).

Ao salvar resultados do processamento de arquivos, não confie na ordem deles

Quando os seus resultados de codificação estiverem prontos e a Transloadit fizer um POST para a sua URL de resultado ou para a sua URL de Assembly Notification, por favor não confie na ordem correta dos resultados.

Imagine que você tem dois Steps do 🤖/image/resize EN (English) no seu Template que fazem use do Step :original. Assim:

{
  "steps": {
    "high": {
      "use": ":original",
      "robot": "/image/resize",
      "width": 500,
      "height": 500
    },
    "low": {
      "use": ":original",
      "robot": "/image/resize",
      "width": 200,
      "height": 200
    }
  }
}

Quando você faz upload de 30 fotos com este Template, o JSON da Assembly resultante contém dois arrays de resultados: "results" -> "high" e "results" -> "low". Mas a ordem das imagens dentro desses arrays não é a mesma! O primeiro resultado de "high" pode ser derivado da 15ª foto enviada por upload, enquanto o primeiro resultado do array "low" pode ser derivado da 10ª foto enviada por upload.

Se você precisar relacionar os resultados de codificação aos uploads correspondentes (e é bem provável que precise), por favor relacione-os pela propriedade id das entradas do array "uploads" e pela propriedade original_id das entradas dos seus diversos arrays de resultados.

Armazene os arquivos originalmente enviados por upload

Armazenar não apenas os arquivos de resultado codificados, mas também os arquivos que os seus usuários enviaram originalmente por upload, dá a você a chance de recodificá-los mais tarde em formatos diferentes, conforme os seus requisitos mudam. Se você não os armazenar, eles serão perdidos para sempre, porque pedir que os seus usuários façam upload deles de novo provavelmente não é uma opção.

Armazene quaisquer metadados

Além do que foi dito acima, tenha em mente que as Assemblies são efêmeras. A Transloadit remove os registros após 90 dias, então, se você quiser guardar algum metadado contido neles, deve importá-lo para o seu armazenamento de dados.

Página anterior ← Meu primeiro appPróxima página Assembly Instructions →
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 EN (English)
  • Perguntas frequentes EN (English)
  • API EN (English)
  • 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)