Zoho Campaigns
Connect Zoho Campaigns to manage mailing lists, contacts, email campaigns, reports, topics, tags, workflows, and one-off email sends.
You paste the Client ID and Client secret of a Server-based Application you register in the Zoho API Console, then sign in with Zoho. An Email API key is optional.
- Setup time
- 5 min
- Auth
- OAuth authorization
- API base URL
- https://campaigns.zoho.com/api/v1.1
- Rate limits
- Per API, with a lock when passed. Most endpoints allow 500 calls per 5 minutes, then lock that API for 30 minutes. Adding one contact allows 500 calls a minute, 12,500 an hour and 75,000 a day. Zoho mints at most 10 access tokens per refresh token every 10 minutes.
Before you begin
- A Zoho Campaigns account.
- A Zoho user who can see the mailing lists and campaigns the AI should work with.
- Knowing which Zoho data center your account lives in: the domain you sign in at, such as zoho.com, zoho.eu, zoho.in or zoho.com.au.
- PopMCP's callback URL from the connect form: https://app.popmcp.com/api/providers/zoho-campaigns/callback
Get your credentials
Open the API Console for your data center
Sign in at api-console.zoho.com as the Zoho user whose Zoho Campaigns access the AI should have. If your Zoho account lives in another data center, use that data center's console instead, for example api-console.zoho.eu, api-console.zoho.in or api-console.zoho.com.au. Click Get Started on your first visit, or Add Client if you already have clients.
Applications
Clients registered to call Zoho APIs with OAuth 2.0.
| Client name | Client type | Client ID |
|---|---|---|
| Reporting scriptCreated Mar 4, 2026 | Self Client | 1000.7Q2L****WK9T |
The console shows the clients of the data center you signed in to. A client made at api-console.zoho.eu does not appear at api-console.zoho.com.
Choose Server-based Applications
Pick Server-based Applications and click Create Now. PopMCP signs you in through a redirect, so the other client types, Self Client included, cannot complete the connection.
Choose a client type
The client type decides how users authorize your application.
| Client type | Use it for |
|---|---|
| Client-based Applications | Apps that run only in the browser |
| Server-based ApplicationsPick this one | Web apps with a server that redirect users to Zoho to authorize |
| Mobile-based Applications | Apps on phones and tablets |
| Non-browser Mobile Applications | Devices without a browser, such as smart TVs |
| Self Client | Back-end scripts with no redirect |
Server-based Applications is the only type that accepts PopMCP's redirect URL.
Name the client and add PopMCP's redirect URI
Enter a Client Name such as PopMCP and any Homepage URL, for example https://app.popmcp.com. Paste https://app.popmcp.com/api/providers/zoho-campaigns/callback into Authorized Redirect URI, then click Create.
Server-based Applications
Enter the client's details.
Zoho matches the redirect URI exactly, so paste it from the PopMCP connect form rather than typing it.
Copy the Client ID and Client Secret
Open the Client Secret tab and copy Client ID (it starts with 1000.) and Client Secret. You only need the Settings tab if people in other data centers will sign in through this client: there you can turn on Multi-DC and tick their data centers.
PopMCP
Server-based Applications
- Client ID
- 1000.X8RT****MQ2Z
- Client Secret
- 4c1f****b07e
The Client ID stays the same in every data center; with Multi-DC on, Zoho can give each data center its own secret.
Paste both values into PopMCP and sign in
In PopMCP, paste the values into Client ID and Client secret. Only if you created the client outside zoho.com, open More options and type that data center into Zoho data center, for example EU, IN or AU. If you send through the Email API and want it to use a key, paste one into Email API key under More options: make it under API Keys on the Email API page in Zoho Campaigns. Click Sign in with Zoho, accept the permissions, and choose the workspace the connection belongs in.
Connect in PopMCP
Open your workspace, choose Zoho Campaigns in the marketplace, and fill in the connect dialog:
| Field | What to enter |
|---|---|
| Client IDtext | The "Client ID" on your app's Client Secret tab. |
| Client secretsecret | The "Client Secret" on the same tab. Stored encrypted and used only on the server.Encrypted with AES-256-GCM on save and never shown again. |
| Zoho data centertext | Only when your app was made outside zoho.com: the data center its console is in, e.g. EU (zoho.eu), IN, AU, JP, CA, SA or CN. One of: US, EU, IN, AU, JP, CA, SA, UK, AE, SG, CN. |
| Email API keysecret | Only if you send through Zoho Campaigns' Email API and want it to use a key. Make one under API Keys on the Email API page in Zoho Campaigns. Your sign-in works without it.Encrypted with AES-256-GCM on save and never shown again. |
https://app.popmcp.com/api/providers/zoho-campaigns/callbackAt api-console.zoho.com choose "Server-based Applications", set any homepage URL, and paste this exact URL as the Authorized Redirect URI.
PopMCP verifies the credential against Zoho Campaigns immediately. On success the connection flips to Verified and its MCP tools are provisioned.
Permissions PopMCP requests
These are the scopes sent to Zoho Campaigns at authorization time.
| Scope | Why PopMCP asks for it |
|---|---|
| ZohoCampaigns.campaign.READ | Reads campaigns, campaign reports, recipients and coupons. |
| ZohoCampaigns.contact.READ | Reads mailing lists, contacts, segments, fields, topics and products. |
| ZohoCampaigns.workflow.READ | Reads open custom workflows. |
| ZohoCampaigns.campaign.ALL | Creates, changes, sends and deletes campaigns, and reaches the Email API through your sign-in. |
| ZohoCampaigns.contact.ALL | Changes mailing lists, contacts, tags, fields and topics. Listing tags needs it too. |
| ZohoCampaigns.workflow.CREATE | Adds contacts to custom workflows. |
Verify it worked
PopMCP shows Zoho Campaigns as Connected, and zoho_campaigns_list_mailing_lists returns your mailing lists while zoho_campaigns_list_recent_campaigns lists your campaigns.
Troubleshooting
"Zoho did not accept the Client ID and Client secret for the United States data center"
Why: The client was created in another data center's console, such as api-console.zoho.eu, while **Zoho data center** was left empty, or one of the values was mistyped.
Fix: Type that data center (EU, IN, AU, JP, CA, SA, UK, AE, SG or CN) into **Zoho data center** under **More options**, or turn on Multi-DC on the client's **Settings** tab. Recopy both values from the **Client Secret** tab.
"Zoho rejected the redirect URI"
Why: The client's **Authorized Redirect URI** does not exactly match PopMCP's callback.
Fix: Open the client in the API Console, correct **Authorized Redirect URI** on the **Client Details** tab to `https://app.popmcp.com/api/providers/zoho-campaigns/callback`, save, and connect again.
"Zoho Campaigns would not let this sign-in read your mailing lists"
Why: The sign-in did not accept every permission, or the Zoho user does not use Zoho Campaigns.
Fix: Connect again and accept every permission on the consent screen, with the Zoho user who uses Zoho Campaigns.
"This Zoho user has no Zoho Campaigns account"
Why: The account lives in another data center, or this Zoho user has not started Zoho Campaigns.
Fix: Sign in with the Zoho user you use for Zoho Campaigns. If you made your client in another data center's console, type that data center into **Zoho data center** under **More options**.
"Zoho did not accept the Email API key"
Why: The key was mistyped or deleted.
Fix: Make a new one under **API Keys** on the Email API page in Zoho Campaigns, or leave **Email API key** empty to use your sign-in.
Reference
Zoho Inventory
Connect Zoho Inventory to manage items, stock, warehouses, transfers, sales orders, packages, shipments, purchase orders and bills.
ActiveCampaign
Connect ActiveCampaign to manage contacts, tags, lists, and deals, and run campaigns, automations, and segments. MCP setup guide for Claude and ChatGPT.