Saltar para o conteúdo principal

Autenticação

A API do SalesOS utiliza Auth0 como provedor de identidade e JWT (JSON Web Tokens) para autenticação de requisições.

Fluxo de autenticação

1

Obtenha credenciais

No SalesOS, acesse Configurações > API > Credenciais para gerar um Client ID e Client Secret para sua aplicação.
2

Solicite um token

Faça uma requisição POST ao endpoint de autenticação do Auth0 com suas credenciais.
3

Use o token

Inclua o token JWT no header Authorization de todas as requisições à API.
4

Renove quando necessário

Tokens expiram após o tempo definido. Use o refresh token para obter um novo access token.

Obtendo um token

Client Credentials (machine-to-machine)

Para integrações server-to-server, use o fluxo Client Credentials:
curl -X POST https://auth.play2sell.com/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "client_id": "SEU_CLIENT_ID",
    "client_secret": "SEU_CLIENT_SECRET",
    "audience": "https://api.play2sell.com",
    "grant_type": "client_credentials"
  }'
Resposta:
{
  "access_token": "eyJhbGciOiJSUzI1NiIs...",
  "token_type": "Bearer",
  "expires_in": 86400
}

Authorization Code (aplicações web)

Para aplicações que agem em nome de um usuário, use o fluxo Authorization Code com PKCE. Consulte a documentação do Auth0 para detalhes de implementação.

Usando o token

Inclua o token em todas as requisições:
curl -X GET https://api.play2sell.com/v1/leads \
  -H "Authorization: Bearer eyJhbGciOiJSUzI1NiIs..." \
  -H "Content-Type: application/json"

Expiração e renovação

  • Duração: 24 horas (86400 segundos)
  • Após a expiração, a API retorna 401 Unauthorized
  • Solicite um novo token usando as credenciais

Permissões (Scopes)

Os tokens podem ter escopos específicos que limitam o acesso:
ScopeDescrição
leads:readLer dados de leads
leads:writeCriar e atualizar leads
deals:readLer oportunidades
deals:writeCriar e atualizar oportunidades
users:readLer dados de usuários
webhooks:manageGerenciar webhooks
Nunca exponha o Client Secret em código frontend ou repositórios públicos. Use variáveis de ambiente para armazenar credenciais sensíveis.
Implemente renovação automática de tokens na sua aplicação para evitar interrupções. Renove o token antes da expiração, não depois.

Erros de autenticação

CódigoErroSolução
401Token expiradoSolicite um novo token
401Token inválidoVerifique o formato e as credenciais
403Scope insuficienteSolicite um token com os scopes necessários

Próximos passos