API

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 #

GET /endpoint/users

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 #

PUT /endpoint/users

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 nascimento
  • users (array de objetos):
    • name (string)
    • username ou email (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 #

    PUT /endpoint/users/status

    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: true para desativar o(s) usuário(s), false para 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 #

    GET /endpoint/recruitments

    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.

    Quais são seus sentimentos

    Atualizado em 30 de outubro de 2025