Skip to content

Autenticação ​

Para acessar a API de voz da API4COM, você precisa de um token de API. O token de API é um código de acesso que você precisa incluir em todas as solicitações que fizer à API. O token de API é único para cada usuário e é gerado automaticamente quando você realiza um Login em uma conta na API4COM.

Como obter um token de API ​

Realizando um Login ​

Para obter um token de API, você precisa realizar um Login em uma conta na API4COM. O token de API é gerado automaticamente quando você realiza um Login.

A seguir, um exemplo de como realizar um Login em uma conta na API4COM:

JavaScript
const axios = require('axios');
const url = 'https://api.api4com.com/api/v1/users/login';

const data = {
  email: 'user@domain.com',
  password: 'password'
};

axios.post(url, data).then(response => {
  console.log(response.data);
}).catch(error => {
  console.error(error);
});

Resposta de sucesso:

JSON
{
  "id": "rMExNa0RUY8s7aEyOe5kPUyVL1PujWbm3cy0viXuU5h3t1YuGAY0JJd3zveeFY8Y",
  "ttl": 1209600,
  "created": "2025-01-01T00:00:00.000Z"
}

Criando novos tokens de API ​

Você pode criar novos tokens de API a qualquer momento. Para criar um novo token de API, você precisa realizar um Login em uma conta na API4COM. Após realizar o Login, você pode criar um novo token de API, e pode alterar o tempo de vida do token de API, podendo gerar tokens de API que nunca expiram.

Tempo de vida do token de API ​

O tempo de vida do token de API é o tempo que o token de API permanece válido. O tempo de vida do token de API é definido em segundos e pode ser alterado ao criar um novo token de API. O tempo de vida do token de API padrão é de 14 dias. Você pode definir o tempo de vida do token de API para um valor maior ou menor ao criar um novo token de API através do parâmetro ttl. O valor do parâmetro ttl é o tempo de vida do token de API em segundos, porém se for definido como -1, o token de API nunca expirará.

A seguir, um exemplo de como criar um novo token de API com um tempo de vida de 30 dias:

JavaScript
const axios = require('axios');
const token = '<token>';
const url = 'https://api.api4com.com/api/v1/users/accessTokens';
const data = {
  ttl: 2592000
};
const config = {
  headers: {
    Authorization: token
  }
};

axios.post(url, data, config).then(response => {
  console.log(response.data);
}).catch(error => {
  console.error(error);
});

Substitua <token> pelo token de API que você obteve ao realizar o Login.

Resposta de sucesso:

JSON
{
  "id": "rMExNa0RUY8s7aEyOe5kPUyVL1PujWbm3cy0viXuU5h3t1YuGAY0JJd3zveeFY8Y",
  "ttl": 2592000,
  "created": "2025-01-01T00:00:00.000Z"
}

Um token por usuário ​

Gere um token de API para cada usuário que realiza chamadas, em vez de usar um único token para toda a conta. Os limites de requisições são contados por usuário: se todos os ramais usarem o mesmo token, eles vão dividir a mesma cota e as requisições podem ser bloqueadas com o status 429.

Para isso, faça o Login com cada usuário e use o token dele nas requisições feitas pelo ramal daquele usuário. Se preferir, é possível criar o token com ttl: -1 (que nunca expira) ou manter o tempo de vida padrão de 14 dias, conforme Tempo de vida do token de API. Não gere um token novo a cada chamada: o login é limitado a 10 tentativas por minuto.

Como usar o token de API ​

Para usar o token de API, você precisa incluí-lo no cabeçalho de todas as solicitações que fizer à API. O token de API é incluído no cabeçalho da solicitação com a chave Authorization e o valor <token>, onde <token> é o token de API que você obteve ao realizar o Login.

A seguir, um exemplo de como incluir o token de API no cabeçalho de uma solicitação:

JavaScript
const axios = require('axios');
const token = '<token>';
const url = 'https://api.api4com.com/api/v1/users/me';
const config = {
  headers: {
    Authorization: token
  }
};
axios.get(url, config).then(response => {
  console.log(response.data);
}).catch(error => {
  console.error(error);
});

Substitua <token> pelo token de API que você obteve ao realizar o Login.

Resposta de sucesso:

JSON
{
  "uuid": "356b20ce-143f-4847-8cf1-a79959f4b390",
  "name": "User Name",
  "email": "user@domain.com",
  "phone": "4833328530",
  "role": "ADMIN",
  "emailVerified": true,
  "createdAt": "2025-01-01T00:00:00.000Z",
  "updatedAt": "2025-01-01T00:00:00.000Z",
  "lastLoginAt": "2025-01-01T00:00:00.000Z"
}

Como excluir um token de API ​

Você pode excluir um token de API a qualquer momento. Para excluir um token de API, você precisa realizar um Logout em uma conta na API4COM. Após realizar o Logout, o token de API será excluído.

A seguir, um exemplo de como excluir um token de API:

JavaScript
const axios = require('axios');
const token = '<token>';
const url = 'https://api.api4com.com/api/v1/users/logout';
const config = {
  headers: {
    Authorization: token
  }
};

axios.post(url, null, config).then(response => {
  console.log(response.data);
}).catch(error => {
  console.error(error);
});

Substitua <token> pelo token de API que você obteve ao realizar o Login.

Resposta de sucesso será um status 204 No Content.

Considerações finais ​

Certifique-se de incluir o token de API no cabeçalho de todas as solicitações que fizer à API para garantir que suas solicitações sejam autenticadas corretamente.

Importante:

  • O token de API é sensível a maiúsculas e minúsculas.
  • Caso o usuário altere a senha, todos os tokens de API gerados anteriormente serão invalidados e você precisará gerar um novo token de API.

Released under the MIT License.