Agências e subcontas
Cloud incorporado com marca própria: camadas, permissões e configuração sem quebrar a integração
Guia prático para inserir o Apification Cloud num portal próprio separando marca, configuração, permissões, credenciais e ações de servidor.
O problema: parecer integrado não significa estar bem integrado
Um Cloud incorporado com marca própria pode parecer perfeitamente integrado num portal e, ainda assim, estar mal separado em permissões, credenciais ou responsabilidades. O risco surge quando o iframe é tratado como uma janela pública decorada: personaliza-se a cor, ocultam-se botões e considera-se a integração resolvida. Na realidade, a sessão incorporada deve ser lançada com identidade, política efetiva e configuração visual resolvidas no servidor para cada abertura. Se essa resolução não existir, a marca pode ocultar erros de isolamento entre clientes, ligações demasiado amplas ou ações que deveriam depender do backend.
A Apification propõe a integração para revendedores como uma combinação de Cloud incorporado, API, configuração herdada e temas visuais. Essa combinação é importante porque cada peça tem uma função diferente. O iframe oferece a experiência de utilizador dentro do portal; a API REST e o contrato OpenAPI servem para operações servidor a servidor; os webhooks permitem reagir a eventos com entregas assinadas, histórico e novas tentativas; e os temas visuais adaptam a experiência sem alterar os limites funcionais e de segurança. A decisão fundamental é não pedir a uma camada que faça o trabalho de outra.
- Sinal de alerta: a mesma ligação ou sessão serve para mais de um cliente.
- Sinal de alerta: as chaves de integração aparecem em código de navegador.
- Sinal de alerta: a revisão visual é aprovada antes de validar utilizadores, grupos, ligações e restrições.
Mapa de camadas: iframe, API, JavaScript, configuração e tema
A primeira camada é a interface incorporada. Na Apification, o Cloud incorporado apresenta-se como um espaço de trabalho dentro do produto com sessão controlada e personalizada, sessões iframe assinadas, temas, permissões efetivas e comunicação JavaScript com o host. Para revendedores, a sessão iframe é assinada e de curta duração. Isso reduz a tentação de criar acessos permanentes e obriga cada lançamento a ter contexto: subconta, utilizador e recursos permitidos.
A segunda camada é a integração de servidor. A REST API servidor a servidor gere recursos Cloud, utilizadores, definições e trabalhos de transformação a partir do backend. A referência REST é a lista autorizada de operações expostas por API; as funções não listadas permanecem como fluxos da interface de conta. Este ponto evita uma expectativa perigosa: nem tudo o que um utilizador vê na interface deve ser automatizado a partir da API. Se uma operação tiver de ser automatizada, confirme que está na referência e desenhe o fluxo com credenciais de âmbito limitado.
- Iframe: experiência de utilizador controlada e personalizada.
- API REST/OpenAPI: operações de backend e automação suportada.
- JavaScript host-iframe: seleção, conclusão e navegação através de mensagens validadas.
- Webhooks: reação a eventos com payloads assinados por HMAC, histórico e novas tentativas.
O que o tema visual deve resolver e o que não deve prometer
O tema visual deve resolver a coerência da experiência: cores, aparência e continuidade entre o portal do cliente e o Cloud incorporado. É razoável que uma agência queira que o utilizador não sinta uma quebra de produto ao gerir ficheiros, serviços ou projetos digitais. A Apification permite adaptar a experiência do Cloud incorporado por meio de temas e definições compatíveis, conservando os limites funcionais e de segurança. Esta última parte é essencial: o tema acompanha a sessão, não redefine a autorização.
O que o tema não deve prometer é isolamento de dados, segurança ou alterações de permissões. Um botão menos visível não equivale a uma ação proibida; um ecrã com a marca do cliente não demonstra que o contexto esteja limitado à sua subconta; uma cor corporativa não expira ligações nem restringe transferências. Numa revisão de integração, separe a validação visual da validação de permissões. Aprove o design quando for consistente, mas não o use como evidência de segurança.
- Use o tema para aparência, navegação percebida e consistência de marca.
- Não use o tema para substituir utilizadores, grupos, restrições ou políticas efetivas.
- Documente que elementos são personalização visual e que elementos são regras de acesso.
Configuração herdada sem a transformar numa caixa negra
A configuração herdada serve para reduzir ajustes manuais repetidos entre espaços ou clientes. Numa rede de clientes, evita configurar de raiz cada experiência incorporada e ajuda a manter consistência operacional. Na Apification, a configuração efetiva do lançamento combina políticas-mestre, definições do cliente, tema e permissões. Essa combinação permite partir de uma base comum e ajustar o que é específico de cada cliente, desde que a equipa saiba que regra vem de onde.
A falha habitual é a herança tornar-se invisível. Se ninguém distingue entre política-mestre, definição do cliente, tema e permissão, um incidente é investigado às cegas. Para evitar isso, mantenha uma matriz de configuração: que valor é definido globalmente, o que cada cliente pode alterar, o que é calculado ao lançar a sessão e quem o aprova. Em alterações sensíveis, teste pelo menos dois clientes com configurações diferentes para confirmar que a herança não está a filtrar capacidades indesejadas.
- Defina uma política-mestre mínima e estável.
- Permita definições do cliente apenas quando houver uma razão operacional clara.
- Registe a fonte de cada regra: mestre, cliente, tema ou permissão.
- Reveja a configuração efetiva antes de ativar o acesso em produção.
Credenciais e backend: separar ações do utilizador e ações automatizadas
As credenciais de servidor não devem chegar ao navegador. A documentação de integração para revendedores da Apification é clara: aprovisionamento, segredos e assinatura permanecem em servidores de confiança, enquanto o navegador recebe apenas contexto limitado e temporário. Também desaconselha criar sessões iframe no navegador quando isso expõe segredos reutilizáveis. O backend deve autenticar o cliente e criar o contexto assinado sem entregar ao frontend uma chave que possa ser reutilizada fora do fluxo previsto.
Na prática, convém separar dois tipos de ações. As ações do utilizador ocorrem dentro da sessão incorporada, com as permissões efetivas correspondentes a esse utilizador, subconta e recursos. As ações automatizadas são executadas a partir do backend através da API com credenciais de âmbito limitado, concedendo apenas a leitura ou escrita necessária. Para o aprovisionamento inicial, a API pode criar contas de cliente, utilizadores e configuração inicial a partir da aplicação do revendedor. Além disso, os identificadores externos devem ser mapeados de forma previsível para que as novas tentativas não criem recursos duplicados, e as escritas compatíveis podem ser protegidas com chaves de idempotência.
- Nunca assine sessões incorporadas a partir de código de navegador se isso expuser segredos reutilizáveis.
- Use credenciais com o menor âmbito prático para a integração.
- Mapeie identificadores externos de forma estável para evitar duplicados.
- Aplique idempotência em escritas compatíveis quando houver novas tentativas de rede.
Permissões, publicação e transferências antes de mostrar ficheiros
Antes de mostrar ficheiros dentro do portal, reveja utilizadores, grupos, ligações, restrições e janelas de publicação. A Apification permite partilhar elementos através de ligações, utilizadores ou grupos, e fornecer transferências originais ou transformadas. Também permite proteger ficheiros e serviços com permissões, OTP, autenticação externa, restrições e janelas de publicação. Por isso, a pergunta não é apenas se o iframe carrega, mas se o utilizador correto vê os recursos corretos durante o período correto e com o tipo de transferência previsto.
Uma sessão assinada deve limitar-se à subconta, ao utilizador e aos recursos permitidos correspondentes. Não deve ser reutilizada para várias subcontas; mudar de cliente requer um novo contexto autorizado e assinado. Este critério evita uma das falhas mais graves em portais multi-cliente: manter uma sessão válida enquanto o contexto visual do portal muda. Se o utilizador selecionar outro cliente, force uma nova resolução de identidade, política efetiva, tema e permissões no servidor.
- Verifique utilizadores e grupos antes de ativar ligações partilhadas.
- Reveja se se aplicam OTP, autenticação externa, restrições ou janelas de publicação.
- Valide se a transferência deve ser original ou transformada.
- Ao mudar de cliente, gere um novo contexto assinado; não reutilize a sessão anterior.
Fluxo recomendado de implementação e falhas frequentes
Um fluxo prudente começa com um protótipo visual limitado, não com uma abertura completa de ficheiros reais. Primeiro valide que o iframe incorporado encaixa no portal e que a comunicação host-iframe cobre seleção, conclusão e navegação através de mensagens validadas. Depois crie um teste de permissões com utilizadores de diferentes perfis e, se houver vários clientes, com subcontas separadas. Em seguida, teste ações permitidas e negadas, tratamento de erros, transferências originais ou transformadas e expiração do contexto temporário.
As falhas frequentes seguem um padrão: confiar apenas no iframe, personalizar a interface antes de definir permissões, misturar clientes no mesmo contexto, deixar ligações ativas indefinidamente ou não registar que parte controla cada ação. A solução é atribuir responsabilidades. O tema controla a aparência; a configuração herdada traz consistência; o backend assina, aprovisiona e guarda segredos; a API automatiza operações suportadas; as permissões governam o acesso; e os webhooks notificam eventos com entregas assinadas, histórico e novas tentativas. Quando cada camada tem dono, os incidentes são mais fáceis de reproduzir e corrigir.
- Passo 1: protótipo visual com dados não sensíveis.
- Passo 2: matriz de permissões por utilizador, grupo, cliente e recurso.
- Passo 3: testes de ações permitidas, negadas e erros esperados.
- Passo 4: revisão de ligações, janelas, OTP se aplicável e transferências.
- Passo 5: documentação interna sobre que camada controla cada decisão.
Perguntas frequentes
Um Cloud incorporado com marca própria pode ser resolvido apenas com um iframe?
Não convém abordar a integração dessa forma. Na Apification, a integração incorporada combina iframe assinado, API, configuração herdada, temas visuais, permissões efetivas e comunicação JavaScript validada com o host.
Onde devem ser geradas as sessões iframe assinadas?
Devem ser geradas em servidores de confiança. O backend autentica o cliente e cria o contexto assinado; o navegador deve receber apenas contexto limitado e temporário, sem segredos reutilizáveis.
O tema visual pode alterar permissões ou isolar dados entre clientes?
Não. O tema adapta a aparência e a coerência da experiência, mas deve conservar os limites funcionais e de segurança. O isolamento depende do contexto assinado, das permissões e das políticas efetivas.
O que acontece se o utilizador mudar de cliente dentro do portal?
Deve ser criado um novo contexto autorizado e assinado. Uma sessão incorporada não deve ser reutilizada para várias subcontas, mesmo que a interface do portal já tenha mudado visualmente.
Quando usar a API e quando usar a interface incorporada?
Use a interface incorporada para ações do utilizador dentro do Cloud. Use a REST API para operações servidor a servidor suportadas, como gerir recursos Cloud, utilizadores, definições e trabalhos de transformação, sempre segundo a referência autorizada.
Fontes e leituras
Documentação consultada para preparar este artigo.
- Integración para resellers — Apification
- Integrate Apification into your product — Apification
- REST API reference — Apification
- Apification Cloud — Apification
- Sharing and distribution — Apification
- Security and access control — Apification
- Landing pages — Apification
- Survey documentation — Apification
- Permissions Policy — MDN Web Docs
- iframe: HTML inline frame element — MDN Web Docs
Explore Apification
Artigos relacionados
Agências e subcontas
Subcontas delegadas sem expor chaves: padrão seguro para agências
Guia prático para agências que querem dar autonomia a cada cliente no Apification sem entregar credenciais nem misturar arquivos, permissões ou operações.
Agências e subcontas
Fluxo de seleção de arquivos para agências: receber, revisar e entregar sem perder versões
Um padrão operacional para que agências e equipes criativas recebam materiais de clientes, selecionem ativos, coordenem revisões e entreguem arquivos finais com controle de versões.