Skip to main content

Zoho Campaigns

Zoho Campaigns is an email marketing platform for creating, sending, and tracking email campaigns and managing subscriber lists. This connector uses the Zoho Campaigns REST API to read campaign, subscriber, and mailing list data into Nexla, and to write contacts and list updates back to Zoho Campaigns.

Zoho Campaigns icon

Power end-to-end data operations for your Zoho Campaigns API with Nexla. Our bi-directional Zoho Campaigns connector is purpose-built for Zoho Campaigns, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Zoho Campaigns or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Zoho Campaigns workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Zoho Campaigns authenticates API requests with OAuth 2.0. Before creating a credential in Nexla, register an application in the Zoho API Console to obtain a Client ID and Client Secret. Nexla runs the three-legged OAuth flow, so you do not need to generate access or refresh tokens yourself.

To register an application and obtain OAuth credentials:

  1. Sign in to the Zoho API Console with the Zoho account that has access to your Zoho Campaigns data.

  2. Click GET STARTED (or ADD CLIENT if you have registered a client before), and choose the Server-based Applications client type.

  3. Enter the required registration details: a Client Name, your application's Homepage URL, and an Authorized Redirect URI. The redirect URI must match the callback URL used by Nexla during authorization.

  4. Click CREATE. Zoho issues a Client ID and Client Secret for the registered application. Copy and store both values securely.

  5. Confirm the OAuth scopes your integration requires. This connector requests campaign and contact scopes by default, such as ZohoCampaigns.campaign.ALL and ZohoCampaigns.contact.ALL. Request only the scopes your use case needs.

  6. Identify the correct region-specific API base URL for your Zoho account (for example, the default https://campaigns.zoho.com/api/v1.1). Zoho hosts accounts in several data centers, and requests must go to the base URL matching your account's region.

For more detail on registering clients and OAuth scopes, see the Zoho OAuth 2.0 documentation and the Zoho Campaigns developer documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
Base URLYesNoZoho Campaigns API base URL (region-specific, e.g. https://campaigns.zoho.com/api/v1.1).
Authorization URLNoNoThe URL endpoint where users authenticate and authorize access
Client IDYesYesA unique public identifier assigned to your Zoho application
Access ScopeNoNoA space-separated list of permissions your application requests
Token URLNoNoThe URL endpoint where authorization codes are exchanged for access tokens
Client SecretNoYesA private key used to authenticate your application when requesting tokens

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. In the Base URL field, enter the region-specific Zoho Campaigns API base URL for your account. This field defaults to https://campaigns.zoho.com/api/v1.1. Update it to match your account's data center if your account is hosted in a different region.

  4. Zoho Campaigns uses a three-legged OAuth 2.0 flow, where users authorize Nexla to access Zoho Campaigns data by signing in to Zoho and granting permission. Nexla then exchanges the authorization code for an access token automatically. Enter the Client ID from your Zoho API Console application in the Client ID field.

  5. Enter the Client Secret from your Zoho API Console application in the Client Secret field. This private key authenticates Nexla's requests to Zoho when exchanging authorization codes for access tokens.

    Important

    The Client Secret should be kept confidential and never shared. It authenticates your application with Zoho during the token exchange process.

  6. In the Access Scope field, enter a space-separated list of OAuth scopes that match the permissions your integration requires. This field defaults to the campaign and contact scopes needed to read and write Zoho Campaigns data. The scopes you enter must match or be a subset of the scopes granted to your Zoho application.

    The Authorization URL and Token URL fields default to the standard Zoho accounts endpoints (https://accounts.zoho.com/oauth/v2/auth and https://accounts.zoho.com/oauth/v2/token). If your Zoho account is hosted in a different data center, update these endpoints to match your account's region.

  7. Click the Authorize button to begin the OAuth authorization flow. You will be redirected to the Zoho sign-in page.

  8. Sign in to Zoho with your account credentials and review the requested permissions. Grant Nexla access to your Zoho Campaigns account.

  9. After authorization is complete, you will be redirected back to Nexla and the credential will be populated with an access token automatically.

    Zoho access tokens expire periodically. Nexla automatically handles token refresh using the refresh token obtained during the initial authorization, so you do not need to manually re-authorize the credential under normal circumstances.

  10. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Zoho Campaigns connector tile, then select the credential that will be used to connect to Zoho Campaigns, and click Next; or, create a new Zoho Campaigns credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Zoho Campaigns endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

List Totalcontacts

Retrieve totalcontacts.

  • This template performs a GET request to the listsubscriberscount endpoint to return the total subscriber count for your Zoho Campaigns account. Use it to monitor overall list size for reporting or reconciliation.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Recent Campaigns

Retrieve recent_campaigns.

  • This template performs a GET request to the recentcampaigns endpoint to return your most recent campaigns. The endpoint is paginated, and Nexla automatically advances through pages until all available records are retrieved.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Subscribers

Retrieve subscribers.

  • This template performs a GET request to the getlistsubscribers endpoint to return the subscribers in a mailing list. The endpoint is paginated, and Nexla automatically advances through pages until all available records are retrieved.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Campaign Recipients

Retrieve campaign_recipients.

  • This template performs a POST request to the getcampaignrecipientsdata endpoint to return the recipients of a campaign. The endpoint is paginated, and Nexla automatically advances through pages until all available records are retrieved.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Campaign Reports

Retrieve campaign_reports.

  • This template performs a GET request to the campaignreports endpoint to return performance reports for your campaigns. Use it to bring open, click, and delivery metrics into Nexla for analysis.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Recent Sent Campaigns

Retrieve recent_sent_campaigns.

  • This template performs a GET request to the recentsentcampaigns endpoint to return campaigns that have recently been sent. Use it to track outbound campaign activity.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Mailing Lists

Retrieve mailing_lists.

  • This template performs a GET request to the getmailinglists endpoint to return the mailing lists in your account. The endpoint is paginated, and Nexla automatically advances through pages until all available records are retrieved.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Topics

Retrieve topics.

  • This template performs a GET request to the topics endpoint to return the topics configured for your account. Use it to bring topic definitions into Nexla for reference or reporting.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List Campaign Details

Retrieve campaign_details.

  • This template performs a GET request to the getcampaigndetails endpoint to return detailed information for your campaigns. Use it to enrich reporting with campaign-level metadata.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

List All Tags

Retrieve all_tags.

  • This template performs a GET request to the tag/getalltags endpoint to return all tags defined in your account. Use it to bring tag metadata into Nexla for segmentation or reporting.

For detailed information about response fields and available parameters, see the Zoho Campaigns developer documentation.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

Zoho Campaigns data sources can also be manually configured to ingest data from any valid Zoho Campaigns API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Zoho Campaigns data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the Zoho Campaigns destination, and select the Send to Destination option from the menu. Select the Zoho Campaigns connector from the list of available destination connectors, then select the credential that will be used to connect to Zoho Campaigns, and click Next; or, create a new Zoho Campaigns credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Zoho Campaigns endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

Subscribe Contact

Add a contact to a mailing list.

  • This template performs a POST request to the listsubscribe endpoint, sending each Nexset record as a JSON request body to add a contact to a mailing list.

The record structure must match the fields expected by the Zoho Campaigns API. For detailed request body formats, see the Zoho Campaigns contact subscribe documentation.

Add List And Contacts

Create a new mailing list along with initial contacts.

  • This template performs a POST request to the addlistandcontacts endpoint, sending each Nexset record as a JSON request body to create a new mailing list and populate it with initial contacts.

The record structure must match the fields expected by the Zoho Campaigns API. For detailed request body formats, see the Zoho Campaigns list management documentation.

Add List Contacts In Bulk

Import multiple contacts into an existing mailing list.

  • This template performs a POST request to the addlistcontactsinbulk endpoint, sending each Nexset record as a JSON request body to import multiple contacts into an existing mailing list.

The record structure must match the fields expected by the Zoho Campaigns API. For detailed request body formats, see the Zoho Campaigns list management documentation.

Unsubscribe Contact

Unsubscribe a contact from a mailing list.

  • This template performs a POST request to the listunsubscribe endpoint, sending each Nexset record as a JSON request body to unsubscribe a contact from a mailing list.

The record structure must match the fields expected by the Zoho Campaigns API. For detailed request body formats, see the Zoho Campaigns list management documentation.

Update List Details

Update mailing list name and sign-up form settings.

  • This template performs a POST request to the updatelistdetails endpoint, sending each Nexset record as a JSON request body to update a mailing list's name and sign-up form settings.

The record structure must match the fields expected by the Zoho Campaigns API. For detailed request body formats, see the Zoho Campaigns list management documentation.

Manual configuration

Zoho Campaigns destinations can also be manually configured to send data to any valid Zoho Campaigns API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

Zoho Campaigns APIs typically expect JSON format for write operations. Ensure each record includes the fields required by the target endpoint.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Zoho Campaigns endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the Zoho Campaigns endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.