AutenticaçãoObter Token de Acesso

Obter Token de Acesso

Obtém o token de acesso (access_token) necessário para todas as outras requisições. O token é válido por 2 horas, portanto não há necessidade de atualizá-lo com frequência. Recomendamos atualizá-lo a cada 90 minutos. Ao solicitar um novo token, o antigo será invalidado imediatamente.

Requisição HTTP

MétodoCaminho (Path)
GET/api/authorization

Parâmetros de Consulta (Query)

ParâmetroTipoObrigatórioDescrição
timelongtrueHora de envio da requisição pelo cliente (carimbo de data/hora UNIX em segundos).
accountstringtrueNome da conta.
signaturestringtrueAssinatura criptográfica. O algoritmo é: md5(md5(senha) + tempo). O md5 utiliza 32 caracteres minúsculos.

Exemplo

Se a senha for Abc@34590 e time for 1556243443, a assinatura será calculada como md5(md5("Abc@34590") + 1556243443), o que resulta em 3844afd2c3bf68f0f3f4aa0a9ee8ee6c.

Request URL:

GET https://api.brasilsatgps.com.br/api/authorization?time=1556243443&account=test&signature=3844afd2c3bf68f0f3f4aa0a9ee8ee6c

Como Gerar a Assinatura (Exemplos de Código)

Abaixo estão exemplos em diferentes linguagens demonstrando como gerar o timestamp UNIX atual, calcular a assinatura e realizar a requisição HTTP.

const crypto = require('crypto');
 
const account = 'seu_usuario';
const password = 'sua_senha';
const time = Math.floor(Date.now() / 1000); // Timestamp UNIX em segundos
 
// Função auxiliar para gerar hash MD5
function md5(string) {
  return crypto.createHash('md5').update(string).digest('hex');
}
 
// Algoritmo: md5(md5(password) + time)
const signature = md5(md5(password) + time);
 
console.log(`Time: ${time}`);
console.log(`Signature: ${signature}`);
 
const url = `https://api.brasilsatgps.com.br/api/authorization?time=${time}&account=${account}&signature=${signature}`;
console.log(`URL: ${url}`);
 
// Exemplo de requisição (usando fetch nativo)
fetch(url)
  .then(res => res.json())
  .then(data => console.log(data))
  .catch(err => console.error(err));

Estrutura de Retorno (Schema)

Campo JSONTipo de DadoDescrição
recordObjectObjeto de container.
record.access_tokenstringO token de acesso.
record.expires_inlongTempo de expiração do token de acesso em segundos.

Exemplo de Resposta JSON

{
  "record": {
    "access_token": "ACCESS_TOKEN",
    "expires_in": 7200
  },
  "code": 0
}