Run in Apidog
📖 Descrição# Atualiza um funcionário existente. 🔄 Atualizações de Document (CPF) # Dependência do identify_key da empresa :✅ Se empresa usa DOCUMENT como chave :# Campo document é obrigatório, NÃO pode ser NULL
Possível alterar para outro CPF válido (respeitando unicidade)
{
"document" : "98765432100"
}
{
"document" : null
} 🔄 Se empresa usa EMAIL/PHONE como chave :# Campo document é opcional (nullable)
Porém, update() ignora valores nulos - campo NÃO será atualizado para NULL
{
"document" : null
}
{
"document" : "98765432100"
} 🔄 Diferenças do POST # Campo POST PUT include_campaignObrigatório Opcional remove_campaignNão existe Obrigatório
🎯 Gestão de Campanhas # {
"remove_campaign" : false ,
"remove_campaign" : true
} ⚠️ Importante : include_campaign e remove_campaign são mutuamente excludentes.🏁 Firing Date vs Soft Delete # Para : Desligamento mantendo funcionário no sistemaPermite datas retroativas (data real do desligamento)
Funcionário permanece ativo para pesquisas de offboarding
Entrevistas de desligamento ainda possíveis
EmployeeObserver dispara soft delete automático
{
"firing_date" : "15/11/2024" ,
"is_voluntary_firing" : false ,
"reason_firing" : "Reestruturação" ,
"remove_campaign" : true
} Resultado : Funcionário é soft-deleted automaticamente mas NÃO é removido de campanhas (exceto se remove_campaign: true)🗑️ DELETE - Remoção Definitiva# Para : Remoção completa do sistemaSome das consultas normais
Remove de campanhas automaticamente
Apaga fields/relacionamentos
Histórico preservado no banco
🔄 Processo Completo de Desligamento #
PUT /v1/employees/{ id}
{
"firing_date" : "31/12/2024" ,
"is_voluntary_firing" : true ,
"reason_firing" : "Pedido de demissão" ,
"remove_campaign" : true ,
"fields" : [
{ "id" : "uuid-status" , "value" : "Desligado" }
]
}
DELETE /v1/employees/{ id} 🔗 Links Relacionados# Requisição Forneça seu token bearer no cabeçalho Authorization
ao fazer requisições para recursos protegidos. Exemplo: Authorization: Bearer ********************
Parâmetros Body application/json
{
"name" : "João Silva Santos" ,
"email" : "joao.santos@empresa.com" ,
"phone" : "11999888777" ,
"remove_campaign" : false ,
"is_on_leave" : false ,
"id_leader_key" : "98765432108"
} Exemplos de Requisição
curl --location --request PUT 'https://scenic-tokyo-3bje4ahyb4rd.on-vapor.com/api/v1/employees/' \
--header 'Resource-Id: 9c73a4aa-8094-4241-ad05-658436f471fe' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "João Silva Santos",
"email": "joao.santos@empresa.com",
"phone": "11999888777",
"remove_campaign": false,
"is_on_leave": false,
"id_leader_key": "98765432108"
}' Respostas application/json
✅ Funcionário atualizado com sucesso
{
"id" : "not-found-uuid" ,
"status" : 404 ,
"title" : "Not Found" ,
"detail" : "Funcionário não encontrado"
}
Modificado em 2025-12-08 22:09:39