Update Staff
Updates an existing staff member, including bank details and branch/department assignment. Shared rules: see Writing Data.
- Partial update: only the fields you send change, and fields can’t be cleared. Send
salarybox_idplus at least one other field.notify_staffis not accepted. phone_numberanddial_codecan be sent alone. Changing the phone number changes the number the staff member logs in with.branch_namesreplaces the staff member’s branches (must not be empty).department_namesreplaces their departments;[]removes all.custom_fieldschanges only the fields you name.employee_idmust be unique in the company, ignoring upper/lower case.- Bank details can’t be changed once the bank account or UPI is verified. Changing them clears the confirmation;
bank_details_confirmed: trueconfirms andfalseremoves it. - Editing a verified ID (PAN, UAN, Aadhaar, driving licence, voter ID, permanent address) marks that verification as no longer current.
- The old
aadhaar_numberandemployee_codekeys are rejected.
Custom role needs: staff_details:edit, plus bank_account:edit if any bank field or bank_details_confirmed is sent. The staff member must be in your My Team scope.
Authentication
Format: “Api-Key {api-key}”
Request
2–150 characters: letters, spaces or dots; must start with a letter. Extra spaces around it are trimmed.
Digits only, up to 15; must not already be used by another staff member. With dial_code 91: 10 digits starting with 6, 7, 8 or 9. Other codes: 4-15 digits valid for that country. Changing it changes the number the staff member logs in with.
Country dial code without +, for example 91. Must be a known country code.
Exact branch names from List Branches (not empty, no repeats). Replaces the staff member’s current branches.
Exact department names from List Departments (no repeats). Replaces the current departments; [] removes all.
Unique in the company, ignoring upper/lower case.
YYYY-MM-DD, between 1950-01-01 and one year from today.
YYYY-MM-DD; the staff member must be 16 to 100 years old.
Format ABCDE1234F (upper-cased for you). Editing it marks an earlier verification as no longer current.
12 digits, starting with 2-9. Editing it marks an earlier verification as no longer current.
12 digits, starting with 1-9. Editing it marks an earlier verification as no longer current.
Standard PF number, for example MHBAN00000640000000125 (upper-cased for you).
2 letters then 13 digits, for example MH1420110012345 (upper-cased for you). Editing it marks an earlier verification as no longer current.
3 letters then 7 digits, for example ABC1234567 (upper-cased for you). Editing it marks an earlier verification as no longer current.
Custom-role keys need bank_account:edit to send any bank field.
Format HDFC0001234 (upper-cased for you).
true confirms the bank details as the API key’s user (account number and IFSC must be sent or already on file); false removes the confirmation.
Custom field name (exact, from List Custom Fields) mapped to a text value of 1-200 characters, for example {"Blood Donor": "Yes"}. Only the named fields change. Must not be empty.
