Zoho CRM does not have a native "Get User Reporting To" API endpoint. If you need to retrieve the reporting hierarchy or manager information for a user, you'll need to use the Core APIs or a custom approach through widgets or server-side functions.
Why this matters
Sales teams often need to pull reporting relationships—who reports to whom—to build org charts, route records by hierarchy, or validate approval chains. Zoho CRM's standard APIs don't expose a dedicated endpoint for this, so you must either store reporting data as a custom field on the user record, query it from Zoho People (if integrated), or build a widget that surfaces the relationship through alternative means.
Step-by-step
Step 1. Check if you're using Zoho People.
If your organization uses Zoho People alongside CRM, the reporting hierarchy lives there, not in CRM. You'll need to call the Zoho People API to fetch manager or reporting-to data, then pass it into CRM via a custom function or integration. This is the most reliable path if your HR data is centralized in People.[5]
Step 2. Store reporting relationships as a custom field in CRM.
Create a custom field (typically a lookup or text field) on the User or Contact module to record who each person reports to. Populate this manually or via a bulk import. Then query it using the Core APIs when you need the relationship.[4] This approach keeps the data in CRM but requires manual maintenance.
Step 3. Use a widget with the JS API to surface reporting data.
If you're building a custom interface, create a widget using the JS API (V2 is recommended) to fetch user or contact records and display their reporting relationships.[1] Widgets wrap the Creator REST APIs, so you can perform CRUD operations and retrieve linked records. This works well for dashboards or custom forms that need to show hierarchy on demand.
Step 4. Build a server-side function to query and return reporting data.
Write a custom function (formerly Custom Functions) in Zoho CRM that queries your user or contact records and returns reporting relationships in JSON format.[2] Call this function from a client script or widget when you need the data. This centralizes the logic and keeps it maintainable.
Step 5. Integrate with an external HR system via Connections.
If your reporting data lives in a third-party HR platform (Workday, BambooHR, etc.), use Zoho CRM's Connections feature to invoke that system's REST API and fetch the hierarchy.[2] Store the result temporarily or map it to a CRM field for downstream use.
Common pitfalls
- Assuming CRM has a built-in reporting API. It doesn't. You must design your own data model or integrate with Zoho People.
- Forgetting permission checks. Any API call respects user permissions; if a user lacks access to view another user's record, the API will return an error or empty result.[1]
- Hardcoding manager IDs. If you store reporting relationships as IDs, they break when users are deleted or reassigned. Use lookup fields or API calls that resolve names dynamically.
What to check
- Confirm whether your organization uses Zoho People; if so, test the People API connection and verify the reporting-to field is populated.
- Verify that any custom field you create for reporting relationships is accessible to the users and functions that need it.
- Test your widget or function with a non-admin user to ensure permissions don't block the query.
---
*Beam Help — independent expert support for Zoho. This article is not official Zoho support.*