Pular para o conteúdo principal

Métodos de autenticação

A API do Alana Shopping B2B suporta dois métodos de autenticação dependendo do seu caso de uso.

Chaves de API (recomendado para integrações)

Chaves de API são a forma recomendada de autenticar acesso programático. Cada chave tem escopo para um workspace e pode ter permissões granulares.
curl -H "Authorization: Bearer sk_live_abc123..." \
  https://app.alana.shopping/api/workspace/{workspaceId}/brands
Características da chave:
  • Prefixadas com sk_live_ para chaves de produção
  • Mostradas apenas uma vez na criação — armazene com segurança
  • Podem ser revogadas instantaneamente sem afetar outras chaves
  • Rastreiam last_used_at para fins de auditoria
  • Expiram com base na política de segurança do seu workspace

Autenticação de sessão (navegador/dashboard)

Ao usar o dashboard, a autenticação é gerenciada via sessões do Supabase Auth. Este método suporta email/senha, magic links e provedores OAuth (Google, GitHub). Tokens de sessão são gerenciados automaticamente pelo cliente do navegador e não são destinados a integrações de API.

Contexto de workspace

Toda requisição de API opera dentro de um contexto de workspace. O ID do workspace faz parte do caminho da URL:
/api/workspace/{workspaceId}/...
Sua chave de API deve pertencer ao workspace especificado. Requisições para um workspace onde a chave não tem associação retornarão 403 Forbidden.

Acesso baseado em funções

Chaves de API herdam as permissões do usuário que as criou. A hierarquia de funções controla quais operações são permitidas:
FunçãoNívelCapacidades
Owner4Controle total — cobrança, deletar workspace, transferir propriedade
Admin3Gerenciar membros, marcas, catálogos, chaves de API
Editor2Criar e modificar produtos, catálogos
Viewer1Acesso somente leitura a todos os recursos
Chaves de API criadas por um admin não podem realizar operações de nível owner como deletar o workspace ou transferir propriedade.

Melhores práticas de segurança

Crie novas chaves e revogue as antigas em um cronograma regular. Use o campo expiresAt ao criar chaves para forçar expiração automática.
Crie chaves separadas para diferentes integrações com apenas as permissões que cada uma precisa.
Chaves de API devem ser usadas apenas server-side. Nunca as inclua em JavaScript de navegador, apps móveis ou repositórios públicos.
Verifique timestamps last_used_at e logs de auditoria regularmente. Revogue qualquer chave que mostre atividade inesperada.
Last modified on February 16, 2026