Introducing Version-3 APIs - Explore New APIs & Enhancements
New Update - The end of life timeline for V2 APIs has now been extended to 30th June, 2026
Happy to announce the release of Version 3 (V3) APIs with an easy to use interface, new APIs, and more examples to help you understand and access the APIs better.
V3 APIs can be accessed through our new link, where you can explore our complete documentation, sample inputs and responses, and integration-related operations.
Please note that the old APIs will be supported until December 31, 2025. |
Here’s what’s new:
New APIs
The ISO date and time format is followed in all the new APIs to ensure consistency.
| Create, update, delete, and execute task blueprints. |
| Retrieve, upload, associate, and disassociate project attachments. |
| Retrieve, add, update, and delete leave records. |
| Manage portal profiles, permissions, and default profile settings. |
| Create, update, delete, and assign default user roles. |
| Manage client details, project associations, and updates. |
| Configure module layouts, sections, and fields. |
Enhancements
1. JSON Objects for API Keys
- API keys, such as created_by_name, created_by_zpuid, module_name, module_id, tasklist_id, and tasklist_name, are now unified under a single JSON object to improve readability.
- This ensures standardized and complete information retrieval.
- Users can append values to JSON objects to include additional keys as needed.
2. Filter with 'OR' Condition
- You can use OR conditions in criteria and filters for more refined queries.
- The filtering mechanism supports api_names or cfid, allowing AND/OR combinations.
Example:
{
"criteria": [
{"cfid": "1", "criteria_condition": "is", "value": ["5000000045047"]},
{"cfid": "2", "criteria_condition": "is", "value": ["5000000256013"]}
],
"pattern": "1 OR 2"
}
3. Standardized Responses for Create & Update APIs
- Responses match input formats, ensuring consistency and clarity. Both, request and response, follow the same JSON structure.
- Update APIs now use the PATCH method instead of POST, aligning with RESTful best practices by updating only the necessary fields rather than replacing the entire resource.
4. Custom Fields with API Names
- Custom fields support API names for easier identification. Currently supported in Projects and Tasks module APIs.
5. GET APIs
- Input remains parameter-based, while output is in JSON format.
- Almost all modules now provide access to their corresponding fields, matching what you see in the UI.
Pagination Support
GET APIs now support pagination with the following parameters:
page (integer): Specifies the page number to fetch.- per_page (integer): Specifies the number of entries per page.
Example Response:
{
"page_info": {
"page": 1,
"per_page": 10,
"page_count": 10,
"has_next_page": true
}
}
Sorting Mechanism
Sort results in ascending (ASC) or descending (DESC) order using the sort_by parameter.
Example usage:
sort_by=ASC(created_time) → Sorts results in ascending order based on created_time.
sort_by=DESC(last_modified_time) → Sorts results in descending order based on last_modified_time.
Example API Request:
GET /api/resource?page=1&per_page=10&sort_by=DESC(last_modified_time)
6. Improved UI Experience
- API types are now color-coded for easy identification.
- Each API includes detailed examples for better implementation and usability.
These updates improve our APIs for a more seamless experience. Try them out and share your feedback! You can also write to support@zohoprojects.com.