Skip to main content
PATCH
/
v0
/
employee
/
{employee_id}
Update Employee
curl --request PATCH \
  --url https://public-api.salu.com.vc/dev/routes/v0/employee/{employee_id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "address": "<string>",
  "address_number": "<string>",
  "address_detail": "<string>",
  "zip_code": "<string>",
  "neighborhood": "<string>",
  "state": "<string>",
  "city": "<string>",
  "name": "<string>",
  "social_name": "<string>",
  "gov_id": "<string>",
  "birth_date": "2023-12-25",
  "is_disabled": true,
  "status": "Ativo",
  "sex": "M",
  "gender": "Cis",
  "mother_name": "<string>",
  "marital_status": "Não informado",
  "place_of_birth": "<string>",
  "educational_stage": "Indefinida",
  "human_skin_tone": "Indefinido",
  "phone": "<string>",
  "cell_phone": "<string>",
  "email": "<string>",
  "personal_email": "<string>",
  "admission_date": "2023-12-25",
  "hr_code": "<string>",
  "employee_registration_number": "<string>",
  "work_shift": "<string>",
  "organization_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "branch_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "position_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "sector_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "client_integration_code": "<string>"
}
'
{
  "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "name": "<string>",
  "is_disabled": true,
  "status": "<string>",
  "sex": "<string>",
  "admission_date": "2023-12-25",
  "is_active": true,
  "organization": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>"
  },
  "branch": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>"
  },
  "position": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>"
  },
  "sector": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "name": "<string>"
  },
  "social_name": "<string>",
  "gov_id": "<string>",
  "birth_date": "2023-12-25",
  "gender": "<string>",
  "mother_name": "<string>",
  "marital_status": "<string>",
  "place_of_birth": "<string>",
  "educational_stage": "<string>",
  "human_skin_tone": "<string>",
  "phone": "<string>",
  "cell_phone": "<string>",
  "email": "<string>",
  "personal_email": "<string>",
  "dismissal_date": "2023-12-25",
  "hr_code": "<string>",
  "employee_registration_number": "<string>",
  "work_shift": "<string>",
  "client_integration_code": "<string>",
  "address": {
    "address": "<string>",
    "address_number": "<string>",
    "address_detail": "<string>",
    "zip_code": "<string>",
    "neighborhood": "<string>",
    "state": "<string>",
    "city": "<string>"
  }
}
Updates an existing employee.
This endpoint behaves like a real PATCH.
  • Send only the fields you want to update.
  • You do not need to resend all employee fields.
  • Omitted fields will not be changed.

Overview

Fields

FieldDescription
gov_id (CPF)Person / Employee identifier
In Brazil, every individual has a CPF (Cadastro de Pessoa Física), which is the national taxpayer ID for a person. It’s unique per person and typically does not change. In our API we expose it as gov_id. In practice, it plays a role similar to SSN (US) or a national personal tax ID in other countries.
Key point: gov_id identifies the human being, not the employment relationship.
hr_code“Matrícula RH” (internal company HR ID) — optional
hr_code corresponds to Matrícula RH, which is an internal employee code created by the company for HR/payroll/admin systems. Optional (not required by law). Used for internal controls and integrations with the company’s HRIS/payroll tools. Can vary by company and can change if the company migrates systems. Think of it as a typical Employee ID inside an organization.
employee_registration_number“Matrícula eSocial” (government employment link ID) — required (when applicable)
employee_registration_number corresponds to Matrícula eSocial, which is an official identifier tied to the formal employment relationship under Brazilian labor law (CLT). Mandatory by law for formal employment reporting (eSocial). It is unique per employment relationship (per “job link”), not necessarily per person for life. It may not be available at onboarding, because it’s usually assigned/confirmed only after payroll/accounting formally registers the employee, including the CTPS registration.
Important nuance: A person (gov_id) can exist in the system before the Matrícula eSocial is known. Once the employment is formalized, employee_registration_number becomes the official “government-side” reference for that employment link.
  • Method: PATCH
  • Path: /v0/employee/{employee_id}
  • OperationId: public_update_employee_v0_employee__employee_id__patch
  • Authentication: header x-api-key

Example requests

1) Minimal partial update (single field)

curl -X PATCH "https://public-api.salu.com.vc/dev/routes/v0/employee/EMPLOYEE_ID_HERE" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $SALU_PUBLIC_API_KEY" \
  --data '{
    "employee_name": "Jane A. Doe"
  }'
In this example, only the employee_name field is changed; all other employee fields remain untouched.

2) Multiple fields update (omitting the rest)

curl -X PATCH "https://public-api.salu.com.vc/dev/routes/v0/employee/EMPLOYEE_ID_HERE" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "x-api-key: $SALU_PUBLIC_API_KEY" \
  --data '{
    "employee_name": "Jane A. Doe",
    "is_active": true,
    "client_integration_code": "EMP-001-INT"
  }'
Only the fields present in the body (employee_name, is_active, client_integration_code) will be updated; everything else remains unchanged.

Authorizations

x-api-key
string
header
required

Path Parameters

employee_id
string<uuid>
required

Body

application/json
address
string | null
address_number
string | null
address_detail
string | null
zip_code
string | null
neighborhood
string | null
state
string | null
city
string | null
name
string | null
social_name
string | null
gov_id
string | null
birth_date
string<date> | null
is_disabled
boolean | null
status
enum<string> | null
Available options:
Ativo,
Inativo,
Afastado,
Férias,
Pendente
sex
enum<string> | null
Available options:
M,
F
gender
enum<string> | null
Available options:
Cis,
Trans
mother_name
string | null
marital_status
enum<string> | null
Available options:
Não informado,
Solteiro,
Casado,
Separado,
Desquitado,
Viúvo,
Outros,
Divorciado,
União Estável
place_of_birth
string | null
educational_stage
enum<string> | null
Available options:
Indefinida,
Ensino Fundamental Incompleto,
Ensino Fundamental Completo,
Ensino Medio Incompleto,
Ensino Medio Completo,
Ensino Superior Incompleto,
Ensino Superior Completo,
Profissionalizante,
Técnico Incompleto,
Técnico Completo,
Tecnólogo Incompleto,
Tecnólogo Completo,
Pós-graduação Incompleta,
Pós-graduação Completo,
Mestrado Incompleto,
Mestrado Completo,
Doutorado Incompleto,
Doutorado Completo,
PHD Incompleto,
PHD Completo,
Não Informado,
Analfabeto
human_skin_tone
enum<string> | null
Available options:
Indefinido,
Branca,
Preta,
Parda,
Amarela,
Indígena,
Mulato
phone
string | null
cell_phone
string | null
email
string | null
personal_email
string | null
admission_date
string<date> | null
hr_code
string | null
employee_registration_number
string | null
work_shift
string | null
organization_id
string<uuid> | null
branch_id
string<uuid> | null
position_id
string<uuid> | null
sector_id
string<uuid> | null
client_integration_code
string | null

Response

Successful Response

id
string<uuid>
required
name
string
required
is_disabled
boolean
required
status
string
required
sex
string
required
admission_date
string<date>
required
is_active
boolean
required
organization
SimpleEntity · object
required
branch
SimpleEntity · object
required
position
SimpleEntity · object
required
sector
SimpleEntity · object
required
social_name
string | null
gov_id
string | null
birth_date
string<date> | null
gender
string | null
mother_name
string | null
marital_status
string | null
place_of_birth
string | null
educational_stage
string | null
human_skin_tone
string | null
phone
string | null
cell_phone
string | null
email
string | null
personal_email
string | null
dismissal_date
string<date> | null
hr_code
string | null
employee_registration_number
string | null
work_shift
string | null
client_integration_code
string | null
address
Address · object