curl --request GET \
--url https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"primeiro_nome": "Ana",
"ultimo_nome": "Exemplo",
"email": "ana@example.com",
"empresa": "Empresa Exemplo",
"salario": null,
"regime_trabalho": null,
"has_hr_data": false
}Busca dados de RH de um usuário
Requer autenticação Bearer e pelo menos uma das permissões 18 ou 19, conforme as regras de autorização da conta. A conta é obtida da autenticação; não envie account_id.
Retorna o cadastro usado pela tela de dados pessoais do perfil. Aceita vínculo inativo para consultar ex-colaboradores. Usuário inexistente ou sem vínculo com a conta retorna HTTP 200 vazio (o serviço retorna null), e não 404.
Se o usuário pertence à conta mas não tem registro ativo de RH, retorna dados disponíveis do perfil com has_hr_data=false; campos exclusivos de RH podem estar ausentes. Com registro ativo, has_hr_data=true. empresa vem da conta autenticada. salario e regime_trabalho vêm do histórico salarial e são null sem permissão 18 ou sem valor disponível. Veja o guia de dados pessoais.
curl --request GET \
--url https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.tarefy.com/nodeapi/v2/employee-hr-data/{userId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"primeiro_nome": "Ana",
"ultimo_nome": "Exemplo",
"email": "ana@example.com",
"empresa": "Empresa Exemplo",
"salario": null,
"regime_trabalho": null,
"has_hr_data": false
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
ID do usuário
Response
Perfil consolidado, ou corpo vazio quando o usuário não existe ou não pertence à conta.
Objeto consolidado. Campos podem estar ausentes ou nulos quando não houver dados de RH.
Primeiro nome do colaborador.
Sobrenome(s) do colaborador.
Nome de registro/documentos.
Telefone internacional com código do país, preferencialmente E.164, como +5511999999999. Máscaras são removidas e o número é validado.
Email de acesso. É normalizado para minúsculas e não pode estar vazio nem pertencer a outro usuário.
Nome exato de um cargo já cadastrado na conta. Nome inexistente ou string vazia remove a associação; não cria um cargo.
Endereço do perfil no LinkedIn.
Logradouro/endereço completo.
Cidade.
UF; convertida para maiúsculas e limitada a 2 caracteres.
CEP como texto. Máscaras são removidas e apenas os primeiros 8 dígitos são mantidos.
Data de nascimento. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Nome do pai. O nome histórico do campo é nome_pais.
Nome da mãe.
Email pessoal, separado do email de acesso.
Número do título de eleitor.
Escolaridade, como Superior completo.
Estado civil.
Departamento, em texto livre.
Nome da conta autenticada.
Último salário, como string, ou null sem permissão 18/valor disponível.
CPF como texto; máscaras são removidas.
RG como texto; pontos, traços e espaços são removidos e letras são convertidas para maiúsculas.
Órgão emissor do RG.
Data de emissão do RG. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Número da carteira de trabalho; máscaras são removidas.
Série da carteira de trabalho; máscaras são removidas.
Número do PIS; máscaras são removidas.
Número da CNH.
Categoria da CNH; limitada a 10 caracteres.
Data de validade da CNH. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Banco no registro de RH. Não sincroniza automaticamente o cadastro separado de dados bancários.
Agência bancária como texto, preservando zeros iniciais.
Conta bancária como texto.
Tipo de conta, em texto livre; limitado a 20 caracteres.
Chave Pix do registro de RH.
Bairro.
Número do endereço como texto; limitado a 20 caracteres.
Complemento do endereço.
Nome do contato de emergência.
Telefone do contato de emergência.
Parentesco do contato; limitado a 50 caracteres.
Data de admissão no cadastro de RH; tem prioridade sobre a data legada na consulta. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Data de desligamento. Informar a data não desativa o usuário. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Tipo de contrato em texto livre.
Carga horária semanal em horas inteiras.
Tipo de contrato do histórico salarial, ou null sem permissão 18/valor disponível.
Data de validade do contrato. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Data prevista de formatura. Envie YYYY-MM-DD (por exemplo, 2026-09-17).
Nome da instituição de ensino.
Nome do curso.
CNPJ da pessoa jurídica contratada.
Razão social da pessoa jurídica contratada.
Recebe vale-transporte.
Recebe vale-alimentação.
Recebe vale-refeição.
Possui plano de saúde.
Possui plano odontológico.
Recebe auxílio-creche.
Descrição de outros benefícios.
Quantidade de dependentes, como inteiro.
Objeto JSON com informações de dependentes. Não enviar um array na raiz.
Objeto JSON com metadados de documentos. Este campo não recebe arquivos binários.
Observações gerais em texto.
Observações confidenciais do cadastro de RH.
Identificador do registro, usuário ou conta, conforme o campo. Presente quando há registro de RH.
Identificador do registro, usuário ou conta, conforme o campo. Presente quando há registro de RH.
Identificador do registro, usuário ou conta, conforme o campo. Presente quando há registro de RH.
Existe registro ativo de RH para este usuário nesta conta.
Dias desde a admissão; pode ser null.
Próximo aniversário calculado pelo serviço.

