Zoho People Employee form not returning custom fields

  • 100Views
  • Last Post 4 weeks ago
0
votes
Robert Boltman posted this 20 December 2022

We have customised our Employee form in Zoho People with a number of custom fields, but these aren't being returned by the connector.

For example, we need the "Fee Earner" field...

Here's a sample of the return when I use the raw API:

{

"11455000000787001": [

{

"EmailID": "[email protected]",

"CreatedTime": "1578046576366",

"Employee_type.id": "11455000000005741",

"Address": "",

"Date_of_birth": "",

"Medical_Conditions": "",

"Photo": "https://contacts.zoho.eu/file?ID=20068834338&fs=thumb",

"AddedTime": "03-Jan-2020 10:16:16",

"Marital_status": "",

"Gender": "",

"ModifiedBy": "xxx",

"ApprovalStatus": "Approval Not Enabled",

"Department": "xxx",

"Date_of_DSE_assessment": "",

"LocationName.ID": "11455000000787279",

"tabularSections": {

"Security Clearance": [

{

"Level_of_clearance": "xxx",

"Expiry_Date": "",

"SC_Reference_number": "",

"Held_by": "",

"tabular.ROWID": "11455000003328851",

"Level_of_clearance.id": "11455000001382093"

}

],

"Next of Kin": [

{

"Phone": "0123",

"DependentRelationship.id": "11455000000005771",

"tabular.ROWID": "11455000001345073",

"Name": "Test",

"DependentRelationship": "Father"

}

],

"Employment Documents": [

{}

]

},

"Mobile.country_code": "",

"AddedBy": "xxxn",

"Tags": "",

"Reporting_To": "xxxx",

"Photo_downloadUrl": "xxx",

"total_experience.displayValue": "2 year(s) 3 month(s)",

"Employeestatus": "Terminated",

"Role": "Team member",

"Experience": "2",

"Employee_type": "Permanent",

"AddedBy.ID": "11455000000749079",

"Fee_Earner": "true",

"Country": "England",

"componentValueDisp": "Yes",

"Role.ID": "11455000000002629",

"LastName": "User",

"EmployeeID": "00",

"ZUID": "20068834338",

"Current_Job_Description": "",

"Buddy.ID": "11455000000694127",

"Dateofexit": "",

"Sort_Code": "",

"Other_Email": "",

"Work_location": "",

"LocationName": "Reduced Hours 10%",

"NI_Number": "12 34 56 78 A",

"Nick_Name": "",

"total_experience": "27",

"ModifiedTime": "1647084299075",

"Reporting_To.MailID": "xxx",

"Zoho_ID": 11455000000787001,

"Designation.ID": "11455000000787243",

"Source_of_hire": "",

"Account_Number": "",

"Age": "0",

"Designation": "Consultant",

"Age.displayValue": "",

"FirstName": "Test",

"Dateofjoining": "01-Sep-2020",

"AboutMe": "",

"Experience.displayValue": "2 year(s) 3 month(s)",

"Mobile": "",

"Extension": "",

"ModifiedBy.ID": "11455000000749079",

"Ethnicity": "",

"Reporting_To.ID": "11455000000694127",

"Work_phone": "",

"Department.ID": "11455000000080021",

"Buddy": "xxx",

"Expertise": ""

}

]

}

 

 

Order By: Standard | Newest | Votes
0
votes
Robert Boltman posted this 20 December 2022

I'm also finding that many of the built in fields are not being populated either (columns exist, but just Null values)

eg. Location, ReportingToId, DepartmentId etc etc

0
votes
Robert Boltman posted this 20 December 2022

And the employee list is being filter to only Active employees for some reason. We need to report on eg everything from last year, so if an employee left they would still be needed for reports spanning the year

0
votes
Serhii Muzyka posted this 21 December 2022

 Hi Robert,

 

Thank you for contacting Skyvia Support.

 

To answer your question:

1. Custom fields are not supported in this connector, since it is based on static metadata in the REST connector. The custom fields can only be added in the separate REST connector to Zoho People.

 2. We have fixed APIPath for LocationName field. The remaining columns that are null for you (ReportingToId, DepartmentId etc.) can be returned only with a filter by ID. With a general SELECT query, only their "companion" columns are returned - ReportingTo, Department and a number of others.

3. For our test account, not only Active employees are returned, and there is no filter there. The fact is that Employees, like a number of other tables in Zoho People, belongs to Forms, and for it there is no separate section describing specific parameters in the documentation. We get this table by the name of the P_EmployeeView form, substituting this name into the standard URL template. There are no URL parameters for filtering for such tables (except for Id).

 

Should you have other questions, don't hesitate to reach out.

 

Best regards,

Serhii

0
votes
Robert Boltman posted this 08 January 2023

Hi,

Sorry for the delayed reply, I've been on leave over Christmas.

When I test this api using the following url:

https://people.zoho.eu/people/api/forms/employee/getRecords?sIndex=1&limit=100

then I get all the data needed - it returns records for all employees regardless of status, and with all the relevant fields populated.

It looks like you are using:

https://people.zoho.eu/people/api/forms/P_EmployeeView/records?sIndex=1&limit=100

which returns the current user's "Employee View" - the problem with this, is that EmployeeView is a configurable view on the data, and so will usually return only active employees etc and more limited data depending on how that view has been configured in Zoho People UI. For replication purposes you should really be using the underlying form to get unflitered data.... is there any chance this can be changed, as I don't believe that returning 'Employee View' is really the correct process - the data replication shouldn't depend on how a user has happened to configure their display in the Zoho UI.

Thanks

Rob

0
votes
Robert Boltman posted this 5 weeks ago

I still think that using employee/getRecords? rather than P_EmployeeView/records? but we're going to use a different approach

0
votes
Serhii Muzyka posted this 4 weeks ago

Hi Robert,

 

We hope you're well!

 

Please be informed that we have moved Employees to a new endpoint - https://people.zoho.eu/people/api/forms/employee/getRecords

 

Should you have other questions, don't hesitate to reach out.

 

Best regards,

Serhii

Close