O que é um Template?

Um Template armazena com segurança as Assembly Instructions da Transloadit em um Workspace e é referenciado em requisições à API por meio de um template_id. Ele permite que os clientes invoquem um fluxo de processamento predefinido sem enviar suas Instructions completas.

Como os Templates funcionam

Um Template da Transloadit é uma definição de fluxo de trabalho gerenciada pelo Workspace cujo JSON descreve Assembly Steps nomeados, seus parâmetros e como os resultados de Steps anteriores passam para os seguintes. Referenciar uma definição armazenada evita o envio de Instructions completas em cada requisição de criação, mas não torna o fluxo de trabalho confidencial: o Assembly Status pode expor template e merged_params. As propriedades fornecidas em params no momento da requisição, exceto o próprio allow_steps_override, são mescladas recursivamente sobre o Template carregado, respeitando a política de sobrescrita de Steps do Template. Essa mesclagem também permite variações em tempo de execução. Os Templates ficam entre as requisições da aplicação e a execução das Assemblies, portanto, a gestão de suas alterações faz parte do contrato de integração.

Informações essenciais

  1. Os nomes dos Steps formam referências nas Assembly Instructions, portanto, renomear um Step pode romper relações use com Steps posteriores, mesmo quando cada operação individual permanece sintaticamente válida.
  2. Um template_id seleciona Instructions armazenadas, mas não autentica, por si só, uma requisição à API; a autenticação da conta e quaisquer requisitos de assinatura de requisições continuam sendo controles separados.
  3. Defina allow_steps_override como false no Template armazenado para rejeitar requisições que também forneçam Steps. Outros parâmetros da requisição ainda podem sobrescrever valores armazenados. Exija Signature Authentication para requisições com Auth Key e faça com que um back-end confiável assine apenas parâmetros aprovados; tokens bearer válidos dispensam esse requisito e continuam sujeitos às suas restrições de escopo e público-alvo. As assinaturas cobrem a versão serializada de params, não os campos separados do formulário de upload. Esses campos não assinados preenchem ${fields.*} e sobrescrevem os valores assinados de fields com o mesmo nome, portanto, esses controles, por si só, não protegem as entradas dinâmicas. Não use esses campos para derivar configurações que os chamadores não devem escolher.
  4. Templates criados em um Workspace não permitem fixar uma versão. Para fazer uma alteração incompatível com versões anteriores com segurança, crie um novo Template com seu próprio template_id e migre os chamadores para ele. Apenas os Builtin Templates da Transloadit são versionados pela Transloadit.

Quando os Templates são importantes

Use um Template para centralizar alterações no fluxo de trabalho e evitar o envio de Assembly Instructions completas em cada requisição de criação. Defina allow_steps_override como false para impedir a sobrescrita de Steps e exija Signature Authentication com assinatura feita por um sistema confiável para requisições com Auth Key. Esses controles não restringem campos de upload não assinados nem substituem as restrições de escopo de tokens bearer, portanto, revise as entradas dinâmicas separadamente. Atualizar um Template compartilhado pode afetar todos os chamadores, portanto, alterações incompatíveis podem exigir um novo Template.

Transforme conhecimento sobre mídia em um pipeline funcional

Conecte uploads, processamento, IA, armazenamento e entrega por meio de uma única API declarativa, com o stack de codificação, o ajuste de escala e as constantes mudanças de formatos gerenciados para você.

Experimente a Transloadit gratuitamente