# Retorna o HTML de um template pelo nome

Retorna o conteúdo HTML de um template de processo a partir do seu nome.
O nome do template segue o padrão {Cidade}/{NomeArquivo}.html (ex: MogidascruzesSP/Alvara_Aprovacao_Execucao_Projetos.html).

Seleção da versão:
- Usa a versão ativa (actual_version) quando existir e tiver HTML válido
- Caso contrário, utiliza a última versão (maior índice) com HTML válido
- Permite fallback quando actual_version está ausente ou aponta para versão sem conteúdo

Validação de HTML:
- Retorna 404 quando o HTML está vazio, nulo ou contém apenas espaços em branco

Possíveis erros 404:
- Template não encontrado no banco
- Template sem versões
- Template sem HTML válido (vazio ou inexistente) em nenhuma versão

Endpoint: GET /hub-api/template
Security: InternalAuth

## Query parameters:

  - `name` (string, required)
    Nome do template no formato {Cidade}/{NomeArquivo}.html.
    Example: "MogidascruzesSP/Alvara_Aprovacao_Execucao_Projetos.html"

## Response 200 fields (application/json):

  - `name` (string)
    Nome do arquivo de template
    Example: "MogidascruzesSP/Alvara_Aprovacao_Execucao_Projetos.html"

  - `html` (string)
    Conteúdo HTML completo da versão do template (nunca vazio)
    Example: "<!DOCTYPE html><html><head><title>Alvará de Aprovação</title></head><body>...</body></html>"

  - `created_at_iso` (string,null)
    Data de criação da versão retornada (ISO 8601)
    Example: "2025-08-15T14:30:00.000Z"

  - `from` (string,null)
    Autor ou origem da versão retornada
    Example: "admin@cidade.gov.br"

## Response 400 fields (application/json):

  - `error` (string)
    Example: "Bad Request"

  - `message` (string)
    Example: "name is required"

## Response 401 fields (application/json):

  - `error` (string)
    Example: "Unauthorized"

  - `message` (string)
    Example: "API Key is required"

## Response 404 fields (application/json):

  - `error` (string)
    Example: "Not Found"

  - `message` (string)
    Example: "Template 'NomeCidade/template.html' não encontrado"

## Response 500 fields (application/json):

  - `error` (string)
    Example: "Internal Server Error"

  - `message` (string)
    Example: "Erro interno do servidor"


