Skip to main content

Autenticação

Todas as requisições à API Obra Play que acessam dados protegidos precisam ser autenticadas. A API suporta dois métodos: Token e JWT.

Recomendamos o Token de acesso para integrações

O token é vitalício e não expira, tornando a integração mais simples de manter. O JWT é mais indicado para aplicações que gerenciam sessões de usuário final.


Obtendo suas credenciais

As credenciais de acesso à API não são criadas por autoatendimento. Para garantir a segurança e integridade da plataforma, cada integração é provisionada diretamente pelo time da Obra Play.

Para solicitar suas credenciais, entre em contato com o suporte:

Contato

O canal oficial de suporte para integrações será informado pela Obra Play por e-mail ou WhatsApp após o início do processo de parceria.

Você receberá:

  • Um usuário dedicado para a integração
  • As credenciais de acesso (usuário e senha)
  • Acesso aos ambientes de Staging (testes) e Produção

Ambientes

AmbienteBase URL
Staging (testes)https://api-staging.obraplay.com
Produçãohttps://api.obraplay.com
warning

Sempre valide sua integração no ambiente de Staging antes de apontar para Produção.


Método 1 — Token de Acesso (Recomendado)

Obtendo o token

POST /auth/token/login/
Content-Type: application/json

{
"username": "seu_usuario",
"password": "sua_senha"
}

Resposta:

{
"auth_token": "36434d218c36630f668af3dc089aea78ff63b98c"
}

O token é vitalício — guarde-o com segurança e reutilize em todas as requisições.

Usando o token

Adicione o header Authorization em toda requisição autenticada:

Authorization: Token 36434d218c36630f668af3dc089aea78ff63b98c

Exemplo com cURL:

curl -X GET https://api.obraplay.com/auth/users/me/ \
-H "Authorization: Token 36434d218c36630f668af3dc089aea78ff63b98c"

Revogando o token

Para invalidar o token atual:

POST /auth/token/logout/
Authorization: Token 36434d218c36630f668af3dc089aea78ff63b98c

Método 2 — JWT

Indicado para cenários onde você precisa de tokens com expiração controlada.

Obtendo o par de tokens

POST /auth/jwt/create/
Content-Type: application/json

{
"username": "seu_usuario",
"password": "sua_senha"
}

Resposta:

{
"access": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...",
"refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
}
TokenFinalidadeValidade
accessAutenticar requisições24 horas
refreshGerar novo access30 dias

Usando o token de acesso

Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...

Renovando o token

Quando o access expirar:

POST /auth/jwt/refresh/
Content-Type: application/json

{
"refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
}

Verificando a autenticação

Para confirmar que o token está funcionando:

GET /auth/users/me/
Authorization: Token 36434d218c36630f668af3dc089aea78ff63b98c

Resposta:

{
"id": 123,
"username": "integracao_empresa_x",
"email": "integracao@empresax.com",
"is_supplier": true
}

Códigos de erro

CódigoSignificado
401 UnauthorizedToken ausente, inválido ou revogado
403 ForbiddenToken válido, mas sem permissão para o recurso

Boas práticas de segurança

  • Nunca exponha seu token em código-fonte público ou logs
  • Use variáveis de ambiente para armazenar credenciais
  • Todas as requisições devem usar HTTPS
  • Em caso de comprometimento, entre em contato com o suporte imediatamente para revogar e reemitir as credenciais