Zoho crm
Skill apideck-libraries/api-skills/providers/cursor/plugin/skills/zoho-crm
One abstraction, 146 SaaS connectors. Agent skills for Apideck's Unified API — integrate Salesforce, QuickBooks, BambooHR, Jira, Shopify and 140+ more by changing one string.
npx -y skills add apideck-libraries/api-skills --skill zoho-crmAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Zoho CRM integration via Apideck's CRM unified API — same methods work across every connector in CRM, switch by changing `serviceId`. Use when the user wants to read, write, or search contacts, companies, leads, opportunities, activities, and pipelines in Zoho CRM. Routes through Apideck with serviceId "zoho-crm".
The file declares its own license as Apache-2.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.0 KB, as published. Nobody here has run it
Zoho CRM (via Apideck)
Access Zoho CRM through Apideck's CRM unified API — one of 21 CRM connectors that share the same method surface. Code you write here ports to Odoo, Salesforce, HubSpot and 17 other CRM connectors by changing a single serviceId string. Apideck handles auth, pagination, rate limiting, and retries so you don't write per-tenant Zoho CRM plumbing.
Quick facts
- Apideck serviceId:
zoho-crm - Unified API: CRM
- Auth type: oauth2
- Gotchas: page
- Zoho CRM docs: https://www.zoho.com/crm/developer/docs/api/
- Homepage: https://www.zoho.com/crm/
When to use this skill
Activate this skill when the user explicitly wants to work with Zoho CRM — for example, "pull contacts in Zoho CRM" or "sync leads in Zoho CRM". This skill teaches the agent:
- Which Apideck unified API covers Zoho CRM (CRM)
- The correct
serviceIdto pass on every call (zoho-crm) - Zoho CRM-specific auth and coverage caveats
For the full method surface (parameters, pagination, filtering), use your language SDK skill:
apideck-node,apideck-python,apideck-dotnet,apideck-java,apideck-go,apideck-php, orapideck-rest
For the raw OpenAPI spec:
Minimal example (TypeScript)
import { Apideck } from "@apideck/unify";
const apideck = new Apideck({
apiKey: process.env.APIDECK_API_KEY,
appId: process.env.APIDECK_APP_ID,
consumerId: "your-consumer-id",
});
// List contacts in Zoho CRM
const { data } = await apideck.crm.contacts.list({
serviceId: "zoho-crm",
});
Portable across 21 CRM connectors
The Apideck CRM unified API exposes the same methods for every connector in its catalog. Switching from Zoho CRM to another CRM connector is a one-string change — no rewrite, no new SDK.
// Today — Zoho CRM
await apideck.crm.contacts.list({ serviceId: "zoho-crm" });
// Tomorrow — same code, different connector
await apideck.crm.contacts.list({ serviceId: "odoo" });
await apideck.crm.contacts.list({ serviceId: "salesforce" });
This is the compounding advantage of using Apideck over integrating Zoho CRM directly: code against the unified CRM API once, gain access to every connector in it. New connectors Apideck adds become available to your app without code changes.
Zoho CRM via Apideck
Zoho CRM is a popular CRM in the SMB and international market. Apideck covers the core modules.
Entity mapping
| Zoho CRM module | Apideck CRM resource |
|---|---|
| Contacts | contacts |
| Accounts | companies |
| Leads | leads |
| Deals | opportunities |
| Tasks, Events, Calls | activities |
| Notes | notes |
| Pipeline / Stage | pipelines |
| Custom modules | use Proxy |
Coverage highlights
- ✅ Full CRUD on contacts, accounts, leads, deals
- ✅ Activities (tasks, events, calls) as unified
activities - ⚠️ Custom modules and custom layouts — not in unified; use Proxy
- ❌ Zoho CRM Plus (analytics, projects) — separate products; not covered here
Auth
- Type: OAuth 2.0, managed by Apideck Vault
- Data center: Zoho is region-sharded (US, EU, IN, AU, CN, JP). The user's data center is determined during OAuth. If writes hit a "wrong DC" error, the connection needs re-authorization.
- API limits: Zoho enforces per-org credit-based rate limits. Apideck backs off on 429.
Example: list deals sorted by close date
const { data } = await apideck.crm.opportunities.list({
serviceId: "zoho-crm",
sort: { by: "close_date", direction: "asc" },
});
Escape hatch: Proxy API
When an endpoint isn't covered by the CRM unified API, use Apideck's Proxy to call Zoho CRM directly — Apideck injects auth headers and handles token refresh. Set x-apideck-downstream-url to the target endpoint on Zoho CRM's own API:
curl 'https://unify.apideck.com/proxy' \
-H "Authorization: Bearer ${APIDECK_API_KEY}" \
-H "x-apideck-app-id: ${APIDECK_APP_ID}" \
-H "x-apideck-consumer-id: ${CONSUMER_ID}" \
-H "x-apideck-service-id: zoho-crm" \
-H "x-apideck-downstream-url: <target endpoint on Zoho CRM>" \
-H "x-apideck-downstream-method: GET"
See Zoho CRM's API docs for available endpoints.
Sibling connectors
Other CRM connectors that share this unified API surface (same method signatures, just change serviceId):
odoo (beta), salesforce, hubspot, pipedrive, activecampaign, close, microsoft-dynamics, teamleader, and 12 more.
See also
- CRM OpenAPI spec · API Explorer
apideck-connector-coverage— programmatic coverage checksapideck-best-practices— architecture, Vault, pagination, error handlingapideck-node— TypeScript / Node SDK patterns- Zoho CRM official docs
Gives 0 of the 12 instructions most sales crm skills give
Counted across 361 of the 361 authors here whose files we hold, read 2026-08-06
- Read product marketing context before writing if it existsin 22 of 361, across 14 files
- keep the ask low-frictionin 16 of 361, across 7 files
- Call RUBE_SEARCH_TOOLS firstin 15 of 361, across 5 files
- personalize every outbound messagein 13 of 361, across 4 files
- confirm connection status is activein 13 of 361, across 4 files
- Keep forwardable blurbs under 100 wordsin 13 of 361, across 4 files
- State if personalization context is missingin 13 of 361, across 4 files
- Cut any sentence that does not drive a replyin 13 of 361, across 4 files
- Use proof instead of adjectivesin 12 of 361, across 3 files
- Use a single, low-friction call to actionin 12 of 361, across 4 files
- Calibrate tone to the specific audiencein 12 of 361, across 3 files
- Make each follow-up email add new valuein 12 of 361, across 6 files
Said here and by no other author read
- set serviceId to zoho-crm
- use the apideck crm unified api
- consult the language sdk for method details
- use the proxy api for custom modules
- consult zoho crm api docs for proxy targets
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.