Documentação da API de Usuários #
Ambientes da API #
- Produção:
https://api.talentacademy.com.br(use para dados reais) - Homologação/Testes:
https://qa.api.talentacademy.com.br(use para testes e validações)
Recomenda-se utilizar o ambiente de QA para validar integrações antes de operar em produção.
Papéis e Níveis de Acesso #
Importante: O nível de acesso (accessProfile) deve acompanhar o papel (role) do
usuário.
Por exemplo, se o papel for user, o nível de acesso também deve ser user.
-
user (nível mais simples):
Não possui acesso gerencial. Pode apenas utilizar as funcionalidades básicas da plataforma destinadas a colaboradores comuns. -
manager:
Tem acesso aos painéis de controle para acompanhar e gerenciar seus liderados, podendo visualizar relatórios e informações da equipe. -
master:
Possui acesso completo à organização. Pode cadastrar, editar e excluir colaboradores, acessar todas as configurações da plataforma, ativar/desativar ferramentas e painéis de controle, além de gerenciar permissões e funcionalidades avançadas.
Resumo: Sempre relacione o accessProfile ao role do usuário para garantir a segurança e o
funcionamento correto dos acessos.
Exemplo: Usuário com papel manager deve ter nível de acesso manager.
Autenticação #
Todas as rotas exigem o header x-api-key com a chave de API da sua empresa.
1. Listar Usuários #
Descrição: Retorna todos os usuários cadastrados na empresa, incluindo perfis, filtros, papéis e dados de testes.
Headers obrigatórios: x-api-key: SUA_API_KEY
Campos obrigatórios:
x-api-key(header)
Exemplo de requisição:
curl -X GET \
-H "x-api-key: SUA_API_KEY" \
https://qa.api.talentacademy.com.br/endpoint/users
Resposta de sucesso:
[
{
"idUser": 1,
"name": "Nome do Usuário",
"email": "email@exemplo.com",
"username": "usuario1",
"birthdate": "1990-01-01",
"accessProfile": "user",
"roles": ["user"],
"purpose": "...",
"map": "...",
"filters": [
{ "filterKey": "departamento", "filterValue": "RH" }
]
}
]
2. Criar ou Atualizar Usuários #
Descrição: Cria ou atualiza usuários em lote.
Headers obrigatórios: x-api-key: SUA_API_KEY
Observação sobre o campo manager: O gestor informado (manager.managerEmail) deve já estar
cadastrado no banco de dados ou estar presente no mesmo array users para ser inserido junto na mesma requisição.
Sobre a senha dos usuários: Ao criar usuários, a senha padrão será a data de nascimento informada
(birthdate). Caso a data de nascimento não seja informada, será utilizada a senha enviada no campo
password (obrigatório no corpo da requisição).
Campos obrigatórios:
password(string) – senha padrão para usuários sem data de nascimentousers(array de objetos):name(string)usernameouemail(string)accessProfile(string: user, manager ou master)roles(array de strings: user, manager ou master)
Exemplo de requisição:
curl -X PUT \
-H "x-api-key: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"idCompanyRecruitment": 123,
"password": "senha",
"users": [
{
"name": "Nome do Usuário",
"email": "email@exemplo.com",
"username": "usuario1",
"birthdate": "1990-01-01",
"roles": ["user"],
"accessProfile": "user",
"filters": [
{ "filterKey": "departamento", "filterValue": "RH" }
],
"manager": { "managerEmail": "gestor@exemplo.com" },
"history": { "hiringDate": "2020-01-01" }
}
]
}' \
https://api.talentacademy.com.br/endpoint/users
Body (exemplo):
{
"idCompanyRecruitment": 123,
"password": "senha",
"users": [
{
"name": "Nome do Usuário",
"email": "email@exemplo.com",
"username": "usuario1",
"birthdate": "1990-01-01",
"roles": ["user"],
"accessProfile": "user",
"filters": [
{ "filterKey": "departamento", "filterValue": "RH" }
],
"manager": { "managerEmail": "gestor@exemplo.com" },
"history": { "hiringDate": "2020-01-01" }
}
]
}
Resposta de sucesso:
{
"users": [
{
"idUser": 1,
"idCompany": 10,
"name": "Nome do Usuário",
"email": "email@exemplo.com",
"username": "usuario1"
}
]
}
3. Atualizar Status de Usuários #
Descrição: Ativa ou desativa usuários em lote.
Headers obrigatórios: x-api-key: SUA_API_KEY
Campos obrigatórios:
x-api-key(header)idUsers(array de inteiros)deletedAt(boolean)
Exemplo de requisição:
curl -X PUT \
-H "x-api-key: SUA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"idUsers": [1, 2, 3],
"deletedAt": true,
"isVoluntary": "true"
}' \
https://api.talentacademy.com.br/endpoint/users/status
Body (exemplo):
{
"idUsers": [1, 2, 3],
"deletedAt": true,
"isVoluntary": "true"
}
Body (exemplo):
- deletedAt:
truepara desativar o(s) usuário(s),falsepara reativar. -
isVoluntary: Indica se a desativação foi voluntária (
"true") ou involuntária ("false"). Opcional.
Resposta de sucesso: Status: 204 (sem conteúdo)
4. Listar Recrutamentos #
Descrição: Lista os recrutamentos disponíveis para a empresa.
Headers obrigatórios: x-api-key: SUA_API_KEY
Campos obrigatórios:
x-api-key(header)
Exemplo de requisição:
curl -X GET \
-H "x-api-key: SUA_API_KEY" \
https://qa.api.talentacademy.com.br/endpoint/recruitments
Resposta de sucesso:
[
{
"idCompanyRecruitment": 1,
"name": "Recrutamento 1"
}
]
Observações #
- Todos os endpoints retornam erros padronizados em caso de falha, com mensagens descritivas.
- Consulte o suporte para obter sua chave de API ou dúvidas sobre os campos.