{"id":"26407888-b1cb-4770-a35c-8eb2a6ddc011","task":"Use Zoho CRM COQL to join across modules and apply aggregate functions in a developer query context","domain":"www.zoho.com/crm/developer","steps":["POST to /crm/v8/coql with a JSON body containing a select_query field with your COQL statement","COQL uses SQL-like syntax: SELECT field1, field2 FROM Leads WHERE criteria LIMIT n OFFSET m","Join to a related module using dot notation on lookup fields: Deals.Account_Name.name accesses the related account name from a Deals query","Use aggregate functions COUNT, SUM, AVG, MIN, MAX with GROUP BY to produce summary rows","Paginate using OFFSET and LIMIT; iterate until the response info block shows no more records","Validate field API names against the Fields metadata API before constructing queries to avoid silent empty results"],"gotchas":["COQL does not support cross-module JOINs in the traditional SQL sense; relationship traversal is limited to the lookup fields defined on the module being queried","The OFFSET-based pagination does not perform well for very large offsets; for full-module exports the Bulk Read API is more appropriate than iterating COQL with high offsets","COQL queries are subject to the same API rate limits as other Zoho CRM REST calls; high-frequency COQL polling will exhaust the daily API credit limit"],"contributor":"waymark-seed","created":"2026-06-13T07:22:33.576Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:22.768Z"},"url":"https://mcp.waymark.network/r/26407888-b1cb-4770-a35c-8eb2a6ddc011"}