SelectwinDOCS

Autenticação

A API Selectwin utiliza um sistema de autenticação baseado em chaves API (API Keys), proporcionando um método simples e seguro para autenticar suas requisições. Este sistema elimina a necessidade de g

Visão Geral

A API Selectwin utiliza um sistema de autenticação baseado em chaves API (API Keys), proporcionando um método simples e seguro para autenticar suas requisições. Este sistema elimina a necessidade de gerenciar tokens de acesso com prazo de expiração, simplificando o processo de integração.


A Chave SelectKey

Toda requisição à API Selectwin deve incluir uma chave de API válida no cabeçalho HTTP SelectKey. Esta chave identifica sua conta, define permissões e registra as atividades realizadas, garantindo a segurança e a auditoria das operações.

curl -X GET "https://api.selectwin.io/v1/transactions" \
     -H "SelectKey: sl_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ" \
     -H "Content-Type: application/json"

Ambientes e Prefixos

A Selectwin oferece dois ambientes distintos, cada um com seu próprio formato de chave:

AmbientePrefixo da ChaveFinalidade
Sandboxsl_test_Testes e desenvolvimento sem impacto em produção
Produçãosl_live_Operações reais com processamento financeiro efetivo

O prefixo da chave determina automaticamente o ambiente em que sua requisição será processada:

# Ambiente de sandbox
SelectKey: sl_test_aBcDeFgHiJkLmNoPqRsTuVwXyZ

# Ambiente de produção
SelectKey: sl_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ

Obtendo suas Chaves

As chaves de API são geradas no Painel Administrativo da Selectwin:

  1. Acesse o Painel Administrativo
  2. Navegue até "Configurações" > "API & Webhooks"
  3. Na seção "Chaves API", você encontrará suas chaves existentes ou poderá gerar novas

Importante

Cada vez que uma nova chave é gerada, todas as chaves anteriores permanecem válidas. Se precisar revogar uma chave específica, use a opção "Desativar" ao lado da chave correspondente.


Segurança das Chaves

As chaves de API concedem acesso completo à sua conta, portanto devem ser tratadas com a mesma segurança que senhas:

  1. Nunca compartilhe suas chaves de produção: Mantenha-as restritas apenas a pessoas autorizadas
  2. Não armazene chaves em código-fonte: Utilize variáveis de ambiente ou sistemas seguros de gerenciamento de configuração
  3. Não inclua chaves em aplicativos frontend: As chaves devem ser utilizadas apenas em ambientes backend seguros
  4. Rotação regular: Substitua suas chaves periodicamente como medida de segurança adicional
  5. Monitoramento: Verifique regularmente o uso da API para detectar atividades suspeitas
// INCORRETO - Chave exposta no código
const selectKey = "sl_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ";

// CORRETO - Chave obtida de variável de ambiente
const selectKey = process.env.SELECTWIN_API_KEY;

Múltiplas Chaves

Você pode criar e utilizar múltiplas chaves de API para diferentes finalidades:

  • Separação de ambientes: Chaves distintas para desenvolvimento, teste e produção
  • Integração de sistemas: Chaves específicas para cada sistema ou serviço integrado
  • Equipes distintas: Chaves separadas para diferentes equipes ou departamentos
  • Rastreabilidade: Identificação facilitada da origem de cada requisição

Revogação de Chaves

Em caso de comprometimento de segurança ou quando não for mais necessária, você pode revogar uma chave a qualquer momento:

  1. Acesse o Painel Administrativo
  2. Navegue até "Configurações" > "API & Webhooks"
  3. Localize a chave desejada e clique em "Desativar"

A desativação de uma chave é imediata, e todas as requisições subsequentes que utilizarem essa chave serão rejeitadas.


Headers Adicionais

Além do cabeçalho obrigatório SelectKey, recomendamos incluir os seguintes cabeçalhos em todas as requisições:

curl -X POST "https://api.selectwin.io/v1/transactions" \
     -H "SelectKey: sl_live_aBcDeFgHiJkLmNoPqRsTuVwXyZ" \
     -H "Content-Type: application/json" \
     -H "Accept: application/json" \
     -H "User-Agent: MeuApp/1.0.0" \
     -H "X-Idempotency-Key: 2dfc6a63-5df5-4900-baca-e49d91ef393e"
CabeçalhoDescrição
Content-TypeDefine o formato dos dados enviados (geralmente application/json)
AcceptDefine o formato da resposta esperada (geralmente application/json)
User-AgentIdentifica seu aplicativo ou sistema (opcional, mas recomendado)
X-Idempotency-KeyGarante que uma operação não seja processada múltiplas vezes (veja a seção sobre Idempotência)

Boas Práticas

  1. Valide respostas: Sempre verifique os códigos de status HTTP e trate adequadamente erros de autenticação
  2. Configuração por ambiente: Utilize configurações diferentes para sandbox e produção
  3. Registre tentativas de autenticação: Mantenha logs para análise de segurança
  4. Rotação preventiva: Substitua suas chaves periodicamente
  5. Verifique regularmente: Confirme no painel administrativo se suas chaves estão ativas

On this page