Marketing Automation
Constant Contact
API integration
Ship Marketing Automation features without building the integration. Full Constant Contact API access via Proxy, normalized data through Unified APIs, and 130+ MCP-ready tools for AI agents — all extensible to your exact use case.
Talk to usUse Cases
Why integrate with Constant Contact
Common scenarios for SaaS companies building Constant Contact integrations for their customers.
Sync donor data into Constant Contact for automated thank-you campaigns
Non-profit CRMs can push donor contact records, donation amounts via custom fields, and segmentation tags into Constant Contact so their users can trigger personalized stewardship email sequences without manual CSV uploads.
Route new leads into Constant Contact lists to trigger welcome drips
Form builders, ad platforms, and lead-capture tools can instantly push opt-ins into specific Constant Contact lists, allowing their SMB users to fire pre-built welcome email automations the moment a lead comes in.
Tag contacts based on in-app behavior for micro-segmented campaigns
SaaS platforms can apply dynamic tags in Constant Contact based on user actions — like event attendance, purchase history, or appointment status — enabling their customers to build targeted automations without creating a new list for every segment.
Keep CRM contact records and Constant Contact in bi-directional sync
Industry-specific CRMs can ensure that opt-in statuses, custom field values, and list memberships stay consistent between their platform and Constant Contact, reducing compliance risk and eliminating duplicate manual entry for their users.
Map organizational roles and sub-accounts for multi-location businesses
Franchise and brokerage software platforms can use user and role data to ensure contacts are routed to the correct regional sub-account in Constant Contact, preserving organizational hierarchy and permission boundaries.
What You Can Build
Ship these features with Truto + Constant Contact
Concrete product features your team can ship faster by leveraging Truto’s Constant Contact integration instead of building from scratch.
One-click Constant Contact list mapping
Let your users select which Constant Contact list their app data syncs to — such as mapping 'New Leads' to a specific list — so automations fire immediately on contact creation.
Automated behavioral tagging engine
Apply and remove Constant Contact tags on contacts in real time based on events in your product, like booking an appointment, making a purchase, or attending a webinar.
Custom field pass-through for dynamic email personalization
Map your product's data fields — like next appointment date, donation total, or ticket type — to Constant Contact custom fields so end users can use merge tags in their email templates.
Bulk contact import on first connect
When a user connects their Constant Contact account, automatically sync their existing contact base into your platform or push your platform's contacts into Constant Contact in bulk.
Lapsed-user win-back workflow trigger
Detect inactivity in your product (e.g., no booking in 6 months), then remove the contact from an active list and apply a lapsed-client tag to trigger a win-back campaign in Constant Contact.
Role-aware contact routing for multi-user accounts
Use Constant Contact user and role data to route synced contacts to the correct sub-account owner, ensuring agents or regional managers only see their own leads.
SuperAI
Constant Contact AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
list_all_constant_contact_contacts
List Constant Contact contacts. Returns each contact's contact_id, email_address, first_name, last_name, created_at, list_memberships, and notes; use the include query parameter to add sub-resources such as custom_fields, taggings, phone_numbers, street_addresses, and sms_channel.
get_single_constant_contact_contact_by_id
Get a single Constant Contact contact by id (the contact's contact_id UUID). Returns: contact_id, email_address, first_name, last_name, job_title, company_name, birthday_month, birthday_day, anniversary, created_at, updated_at, custom_fields, phone_numbers, street_addresses, list_memberships, notes, sms_channel, and 4 more. Required: id.
create_a_constant_contact_contact
Create a new Constant Contact contact. Returns the created contact including contact_id, email_address, first_name, last_name, and list_memberships. Required: email_address, create_source. Up to 25 notes per contact.
update_a_constant_contact_contact_by_id
Update an existing Constant Contact contact by id (full replace: omitted fields such as list_memberships or phone_numbers are cleared). Returns the updated contact. Required: id, email_address, update_source.
delete_a_constant_contact_contact_by_id
Delete a Constant Contact contact by id. Returns an empty 204 response on success. Required: id.
constant_contact_contacts_upsert
Create or update a Constant Contact contact from sign-up form data without first checking whether the contact already exists. Returns: contact_id, action. Requires email_address with list_memberships, or sms_channel for SMS-only contacts. Only use when the contact gave explicit permission to be emailed, such as via a sign-up form.
list_all_constant_contact_contact_lists
List all Constant Contact contact lists. Returns each list's list_id, name, description, favorite, created_at, updated_at, deleted_at, and membership_count.
get_single_constant_contact_contact_list_by_id
Get details about a specific Constant Contact contact list by id (list_id). Returns: list_id, name, description, favorite, created_at, updated_at, deleted_at. Required: id.
create_a_constant_contact_contact_list
Create a new Constant Contact contact list. Returns the created list including list_id, name, description, favorite, created_at, and updated_at. Requires name (max 255 characters) and favorite.
update_a_constant_contact_contact_list_by_id
Update an existing Constant Contact contact list specified by id (list_id). Returns the updated list including list_id, name, description, favorite, created_at, and updated_at. Requires name and favorite.
delete_a_constant_contact_contact_list_by_id
Delete a Constant Contact contact list by id. The delete runs as an asynchronous activity — Returns: activity_id, state, created_at, updated_at, percent_done, activity_errors, _links. Required: id.
list_all_constant_contact_contact_tags
List all contact tags in the Constant Contact account. Returns each tag with: tag_id, name, contacts_count, created_at, updated_at, and tag_source.
get_single_constant_contact_contact_tag_by_id
Get details for a single contact tag by id. Returns: tag_id, name, contacts_count, created_at, updated_at, tag_source. Required: id (tag_id).
create_a_constant_contact_contact_tag
Create a new contact tag in Constant Contact with a unique name. Returns the created tag with: tag_id, name, contacts_count, created_at, updated_at, and tag_source. Required: name.
update_a_constant_contact_contact_tag_by_id
Rename an existing contact tag by id. Returns the updated tag with: tag_id, name, contacts_count, created_at, updated_at, and tag_source. Required: id, name. Tag name max length is 255 characters.
delete_a_constant_contact_contact_tag_by_id
Delete a contact tag by id; asynchronously un-assigns the tag from all contacts and then deletes it. Returns: activity_id, state, created_at, updated_at, percent_done, activity_errors, _links. Required: id.
list_all_constant_contact_users
List the email addresses on your Constant Contact account. Returns each address's email_address, email_id, confirm_status, confirm_time, confirm_source_type, roles, and pending_roles; only addresses with a confirmed status can be used to send email campaigns.
create_a_constant_contact_user
Add an email address to a Constant Contact account. Returns: email_address, email_id, confirm_status.
list_all_constant_contact_account_summary
Get a summary of account details for a Constant Contact user account, including the organization name and account contact information. Returns: encoded_account_id, organization_name, contact_email, contact_phone, organization_phone, first_name, last_name, country_code, state_code, time_zone_id, website, physical_address, company_logo.
constant_contact_account_summary_bulk_update
Update the account details for a Constant Contact account, such as contact, organization, and location information. Returns: contact_email, contact_phone, country_code, encoded_account_id, first_name, last_name, organization_name, organization_phone, state_code, time_zone_id, website.
list_all_constant_contact_activities
List bulk activity statuses in Constant Contact. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, source_file_name, percent_done, activity_errors, status, _links. Max 500 results per page.
get_single_constant_contact_activity_by_id
Get the status report for a single bulk activity in Constant Contact by id. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, source_file_name, percent_done, activity_errors, status, _links. Required: id.
constant_contact_summary_company_logos_bulk_update
Update the company logo for the Constant Contact account. Returns the CompanyLogo object including url, external_url, and internal_id. The logo references either a MyLibrary image (internal_id) or an external image (external_url).
list_all_constant_contact_summary_company_logos
Get the company logo for the Constant Contact account. Returns the CompanyLogo object including url, external_url, and internal_id, or an empty 204 response when no logo is set for the account.
constant_contact_summary_physical_addreses_bulk_update
Update the physical address of a ConstantContact account. Returns: address_line1, address_line2, address_line3, city, state_code, state_name, postal_code, country_code. Required: address_line1, city, country_code. Use state_code for US/CA addresses and state_name for all other countries.
create_a_constant_contact_summary_physical_addrese
Create the physical address for a ConstantContact account. Returns: address_line1, address_line2, address_line3, city, state_code, state_name, postal_code, country_code. Required: address_line1, city, country_code. Use state_code for US/CA addresses and state_name for all other countries.
list_all_constant_contact_summary_physical_addreses
Get the physical address on record for a ConstantContact account; it displays in the footer of every email sent from the account. Returns: address_line1, address_line2, address_line3, city, state_code, state_name, postal_code, country_code.
list_all_constant_contact_user_privileges
List the user privileges associated with your Constant Contact access token as an array of privilege objects. Returns: privilege_id, privilege_name. Includes all privileges, even ones the V3 API does not currently use.
create_a_constant_contact_default
Create a new Constant Contact event with default settings, a registration form, and a landing page; it is created in DRAFT status. Returns: description, title, name, event_id, campaign_id, event_start, registration_url, status, and 29 more. No required parameters — name, start_time, end_time, and placeholder_campaign_id have defaults if omitted.
create_a_constant_contact_event_copy
Create a deep copy of an existing Constant Contact event, including its settings, registration forms, and landing pages; the copy is created in DRAFT status. Returns the new event object including event_id, name, status, event_start, event_end, and registration_url. Required: event_id, target_event_name. DELETED events cannot be copied.
get_single_constant_contact_event_by_id
Get details for a single ConstantContact event by id. Returns the event object including event_id, title, description, event_start, event_end, status, and registration_url. Required: id, event_id.
list_all_constant_contact_events
List ConstantContact events with event details. Returns: name, event_id, event_start, event_end, status, registration_url. Max 100 per page.
update_a_constant_contact_event_by_id
Update an event in Constant Contact by id, partially applying only the fields provided in the body (event_settings, location_type). Only events in DRAFT or ACTIVE status can be updated; COMPLETE, CANCELED, and DELETED events cannot. Returns an empty 204 response on success. Required: id, event_start, event_end.
create_a_constant_contact_check_in_ticket
Check in one or more order tickets for a Constant Contact event by marking them as checked in. Returns an empty 204 response on success. Required: event_id, order_ticket_keys. The event must be in ACTIVE or COMPLETE status; CANCELLED tickets cannot be checked in.
constant_contact_registrations_payment_status_bulk_update
Update the payment status for one or more event track registrations in Constant Contact. Returns an empty 200 response on success; a 207 reports per-registration results when some fail. Required: event_id, track_id, registration_ids, payment_status. Only registrations with a payment method (PAYPAL, WEPAY, STRIPE, DOOR, CHECK) are processed. Only applies to registrations with a paid ticket; free registrations are rejected.
constant_contact_track_registrations_bulk_update
Update the registration status for one or more registrations in a Constant Contact event track. On success returns a 200 with no body; when some registrations fail to update, returns 207 with failed_registration_ids. Required: event_id, track_id, registration_ids, registration_status.
get_single_constant_contact_track_registration_by_id
Get registration details for a specific event track in Constant Contact. Returns: registration_id, contact_id, checkedIn_tickets, checkin_status, eligible_checkin_tickets, registration_date, registration_status, display_physical_tickets, contact, tickets, order_summary. Required: id, event_id, track_id, registration_id.
list_all_constant_contact_track_registrations
List registrations for a Constant Contact event track. Returns per registration: registration_id, first_name, last_name, email_address, registration_status, payment_status, tickets, total, and check-in details. Required: event_id, track_id.
create_a_constant_contact_undo_check_in_ticket
Undo check-in for one or more tickets of a Constant Contact event, marking them as not checked in; the event must be in ACTIVE or COMPLETE status. Returns an empty 204 response on success. Required: event_id, order_ticket_keys.
constant_contact_segment_names_bulk_update
Rename an existing Constant Contact segment by updating its name. Returns: name, segment_criteria, criteria, segment_id, created_at, edited_at. Required: segment_id and name.
create_a_constant_contact_segment
Create a new Constant Contact segment targeting a subset of contacts for a marketing campaign. Returns: name, segment_criteria, criteria, and 3 more fields. Required: name, segment_criteria. Requires name (must be unique) and segment_criteria as a JSON object; do not exceed 500 email campaigns or a 1825-day date range in the criteria.
delete_a_constant_contact_segment_by_id
Delete a segment from ConstantContact by id. Returns an empty 204 response on success. Verify the segment is not associated with a scheduled campaign before deleting. Required: id.
get_single_constant_contact_segment_by_id
Get a Constant Contact segment by id, including its contact-selection criteria. Returns: name, segment_criteria, criteria, segment_id, created_at, edited_at. Required: id. Details for deleted segments can also be retrieved.
list_all_constant_contact_segments
List all Constant Contact segments in the account, sortable by name ascending or most recently updated first. Returns: name, segment_criteria, criteria, segment_id, created_at, edited_at. Deleted segments are excluded from the results.
update_a_constant_contact_segment_by_id
Update a Constant Contact segment's name or contact-selection criteria by id. Returns: name, segment_criteria, criteria, segment_id, created_at, edited_at. Requires id, name, and segment_criteria — both body fields must be sent even if only one changes. Required: id, name, segment_criteria.
create_a_constant_contact_contact_custom_field
Create a custom field in Constant Contact to store extra contact data such as preferences or interests. Returns the created field with custom_field_id, label, name, type, metadata, version, choices, created_at, and updated_at. Requires label and type. Accounts support up to 100 custom fields.
delete_a_constant_contact_contact_custom_field_by_id
Delete a custom field from a ConstantContact account by id. Returns an empty 204 response on success. Required: id.
get_single_constant_contact_contact_custom_field_by_id
Get details for a single custom field in Constant Contact by id. Returns: custom_field_id, label, name, type, metadata, version, choices, updated_at, created_at. Required: id.
list_all_constant_contact_contact_custom_fields
List all custom fields defined in the Constant Contact account. Returns each field with custom_field_id, label, name, type, metadata, version, choices, created_at, and updated_at. Max 100 per page.
update_a_constant_contact_contact_custom_field_by_id
Update an existing custom field in Constant Contact by id. Returns the updated field with custom_field_id, label, name, type, metadata, version, choices, created_at, and updated_at. Requires label and choices; any omitted properties are overwritten with null. Required: id.
get_single_constant_contact_contact_export_by_id
Retrieve Exported Contacts File. Required: id. The id is the file id from the export activity's _links.results.href (/v3/contact_exports/{id}), not the activity_id.
list_all_constant_contact_contacts_contact_id_xrefs
List cross-referenced V2 and V3 contact IDs in Constant Contact. Returns: sequence_id, contact_id. Migration-only endpoint for V2-to-V3 migration, not intended for regular or repeated use. Required: sequence_ids.
create_a_constant_contact_activities_add_list_membership
Create a bulk activity in Constant Contact that adds contacts to one or more lists. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, and 3 more fields. Required: source, list_ids. Requires source and list_ids. Each contact can join up to 50 lists; activities are queued and processed asynchronously.
create_a_constant_contact_activities_contact_delete
Bulk delete Constant Contact contacts by contact_ids (up to 500) or list_ids (up to 50; all list members are deleted). Returns the queued activity's activity_id, state, percent_done, and activity_errors. Processes asynchronously.
create_a_constant_contact_activities_contact_export
Create a Constant Contact contact-export activity that writes contacts and their details to a CSV file. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, activity_errors, status, _links. Requires a JSON body specifying which contacts and fields to export.
create_a_constant_contact_activities_contacts_file_import
Import Constant Contact contacts from a CSV file as an asynchronous background job that adds or updates them. Returns: activity_id, state, started_at, completed_at, source_file_name, percent_done, and 5 more. Required: file, list_ids. CSV max 40,000 lines / 4 MB; set sms_permission_to_send (not_set or explicit) when importing SMS numbers.
create_a_constant_contact_activities_remove_list_membership
Remove contacts from one or more Constant Contact lists by creating a bulk remove-contacts activity. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, activity_errors, status, _links. Required: source, list_ids. The activity is queued for asynchronous processing.
create_a_constant_contact_activities_contacts_json_import
Import Constant Contact contacts from a JSON payload as an asynchronous background job that adds new or updates existing contacts. Returns the queued activity: activity_id, state, percent_done, activity_errors, and status. Required: import_data, list_ids. Payload capped at 4 MB.
create_a_constant_contact_activities_contacts_taggings_add
Create an asynchronous Constant Contact activity that adds tags to contacts matching your source filter. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, activity_errors, status, _links. Required: source, tag_ids. Use the returned activity link to check status.
create_a_constant_contact_activities_contacts_taggings_remove
Create an asynchronous Constant Contact activity that removes one or more tags from contacts matching your source filter. Returns: activity_id, state, started_at, completed_at, created_at, percent_done, status, _links, and 2 more. Required: source, tag_ids. Source types are mutually exclusive; use the returned activity link to poll status.
create_a_constant_contact_activities_contacts_tags_delete
Create an asynchronous Constant Contact bulk activity that deletes up to 500 tags; deleted tags are automatically removed from tagged contacts. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, activity_errors, status, _links. Required: tag_ids.
create_a_constant_contact_activities_custom_fields_delete
Delete up to 100 custom fields in a Constant Contact account by submitting their ids. Returns: activity_id, state, started_at, completed_at, created_at, updated_at, percent_done, activity_errors, _links. Required: custom_field_ids. The delete activity is queued and processed asynchronously.
create_a_constant_contact_activities_list_delete
Delete up to 100 contact lists in a Constant Contact account by queueing a bulk activity. Returns the queued activity with activity_id, state, percent_done, and activity_errors. Required: list_ids. Processing is asynchronous.
list_all_constant_contact_hashtags_groups
List saved hashtag groups in Constant Contact, the reusable hashtag collections users organize for social posts. Returns: _links, hashtag_groups, page. Max 5 per page; pages are 0-based.
list_all_constant_contact_social_connections
List all social network accounts connected to the Constant Contact account, with support for multiple accounts per network. Returns the connections array; each connection includes account_info (display_name, username, network, image_url, account_url) and connection_status (is_active_user, has_token, token_is_valid, rate_limited, error, status).
create_a_constant_contact_social_post
Create a ConstantContact social media post targeting one or more social profiles, saved as DRAFT or scheduled via status. Returns: campaign_id, name, profile_posts, scheduled_time, status. Required: status, profile_posts. SCHEDULED posts require scheduled_time in ISO-8601 format.
list_all_constant_contact_social_profiles
List all social media profiles connected to the Constant Contact account, such as Facebook Business Pages, LinkedIn Company Pages, and Instagram Business accounts. Returns: accessible, account_info, connected, handle, image_url, name, network, network_profile_id, network_user_id, profile_id, settings, url, oauth2_implicit.
constant_contact_activitie_abtests_bulk_delete
Delete the A/B test on a Constant Contact email campaign activity. Only A/B tests with a current_status of Draft can be deleted; deleting reverts the activity type from A/B Test back to NewsLetter and uses the original subject line. Returns an empty 204 response on success. Required: campaign_activity_id.
create_a_constant_contact_activitie_abtest
Create an A/B test for a Constant Contact email campaign activity. Returns: alternative_subject, test_size, winner_wait_duration. Requires campaign_activity_id, alternative_subject, test_size, and winner_wait_duration; the campaign must be a DRAFT, with test_size from 5–50 and winner_wait_duration of 6, 12, 24, or 48 hours. Required:…
get_single_constant_contact_activitie_abtest_by_id
Get the A/B test details for a Constant Contact email campaign activity. Returns: alternative_subject, test_size, winner_wait_duration. Currently A/B tests support subject lines only. Required: id.
create_a_constant_contact_activitie_non_opener_resend
Create a resend to non-openers campaign activity for a Constant Contact email campaign. Returns: resend_subject, delay_days, delay_minutes, resend_date, resend_request_id. Required: campaign_activity_id, resend_subject. Only one resend per campaign; delay_days and delay_minutes are mutually exclusive (resend 12 hours to 10 days after send).
delete_a_constant_contact_activitie_non_opener_resend_by_id
Delete (unschedule) a resend to non openers activity for a Constant Contact email campaign. Returns an empty 204 response on success. Required: id, campaign_activity_id, resend_request_id.
list_all_constant_contact_activitie_non_opener_resends
Get details about a resend to non-openers campaign activity in Constant Contact. Returns: resend_subject, delay_days, delay_minutes, resend_date, resend_request_id, resend_status. Required: campaign_activity_id. An empty list is returned when no resend activity exists for the campaign.
list_all_constant_contact_activitie_previews
Get the HTML preview of a Constant Contact email campaign activity to verify how it looks before sending. Returns: campaign_activity_id, from_email, from_name, preheader, preview_html_content, preview_text_content, subject, and 2 more. Required: campaign_activity_id. The preview HTML is a JSON-encoded string that must be decoded before use.
constant_contact_activitie_schedules_bulk_delete
Delete the schedule of an email campaign activity in Constant Contact to unschedule it. Returns an empty 204 response on success. Required: campaign_activity_id. Only activities in SCHEDULED status can be unscheduled; unscheduling reverts the activity to the status it held prior to scheduling.
create_a_constant_contact_activitie_schedule
Schedule a Constant Contact email campaign activity to send immediately (set scheduled_date to "0") or on a specific date. Returns: scheduled_date. Required: campaign_activity_id, scheduled_date. Only primary_email activities in DRAFT, DONE, or ERROR status can be scheduled.
list_all_constant_contact_activitie_schedules
Get the current schedule for a Constant Contact email campaign activity by id. Returns the schedule record with its scheduled_date — the date Constant Contact will send the activity to contacts; an empty array is returned when the activity is not in SCHEDULED status. Required: campaign_activity_id.
get_single_constant_contact_activitie_send_history_by_id
Get the send history of an email campaign activity in ConstantContact. Returns one entry per send with send_id, contact_list_ids, segment_ids, count, run_date, send_status, and reason_code, in ascending order by send date. Required: id. Works only for primary_email and resend role activities.
create_a_constant_contact_activitie_test
Send a test email for a Constant Contact email campaign activity to verify how it will look before sending it to contacts. Returns an empty 204 response on success. Required: campaign_activity_id, email_addresses. Test emails do not process dynamic content; up to 50 test emails per day and 5 recipients per send.
create_a_constant_contact_automations_workflow
Create a new Constant Contact automation workflow by defining its trigger (for example, contacts joining a list or a contact birthday). Simplest trigger: {"type":"ListJoin"}. Returns: id, name, description, structured_tags, status, active_definition, draft_definition, name_explicitly_set, oauth2_implicit.
get_single_constant_contact_automations_workflow_by_id
Get a single Constant Contact automation workflow by id. Returns: id, name, description, structured_tags, status, active_definition, draft_definition, name_explicitly_set, oauth2_implicit. Required: id.
list_all_constant_contact_automations_workflows
List all Constant Contact automation workflows available on the account. Returns workflow records with id, name, description, status, structured_tags, and their active and draft definitions.
update_a_constant_contact_automations_workflow_by_id
Update a Constant Contact automation workflow by id. Returns: id, name, description, structured_tags, status, active_definition, draft_definition, name_explicitly_set, oauth2_implicit. Required: id.
list_all_constant_contact_campaign_detail_p_contact_opens
List each time a contact opens a link on a Constant Contact landing page campaign, with contact details reported most recent activity first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 results per page.
list_all_constant_contact_campaign_detail_p_unique_contact_adds
List the contacts added to a Constant Contact account from a specific landing page, ordered with the most recent activity first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 per page.
list_all_campaign_detail_p_unique_contact_clicks
List unique contacts that clicked a link on a Constant Contact landing page, most recent first. Returns: tracking_activities, _links, oauth2_implicit. Required: campaign_activity_id. Max 500 per page; a contact may appear more than once.
list_all_constant_contact_campaign_detail_p_unique_contact_opens
List unique contact opens for a ConstantContact landing page, one record per contact that opened a link on the campaign activity, most recent activity first. Returns tracking_activities with contact_id, email_address, device_type, created_time, and sms_channel, plus _links.next pagination. Required: campaign_activity_id. Max 500 per page.
list_all_campaign_detail_p_unique_contact_sms_optins
List Constant Contact landing page contacts that clicked a link to opt in to SMS text messages, most recent activity first. Returns per contact: contact_id, tracking_activity_type, email_address, first_name, created_time, and sms_channel details. Required: campaign_activity_id. Max 500 per page.
list_all_campaign_detail_p_unique_contact_updates
List contacts that updated their contact data via a Constant Contact landing page, with the most recent activity first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 per page.
list_all_constant_contact_contact_lists_list_id_xrefs
List cross-referenced V2 and V3 contact list IDs in Constant Contact for V2-to-V3 migration. Returns: xrefs, oauth2_implicit. Required: sequence_ids (comma delimited, max 500 ids). Migration-only endpoint — use sparingly, as Constant Contact will deprecate it.
list_all_constant_contact_contact_report_activity_details
Get tracking activity details for a single Constant Contact contact, sorted in descending activity date order. Returns: tracking_activities, _links. Required: contact_id. Specify either tracking_activities_list or tracking_activity_type (mutually exclusive); max 100 per page.
get_contact_report_activity_summary_by_id
Get the Constant Contact activity summary for a contact: the recent campaign activities (emails) sent to that contact and the actions the contact took on each email, covering the most recent 200 campaigns. Returns: contact_id, campaign_activities, _links. Required: id, start, end, contact_id.
list_all_constant_contact_contact_report_open_and_click_rates
Get the average open and click rates for bulk email sends to a Constant Contact contact over a date range. Returns: contact_id, included_activities_count, average_open_rate, average_click_rate. Required: contact_id, start, end. The date range cannot exceed 5 years.
list_all_constant_contact_contacts_counts
Get the total contacts count for a Constant Contact account along with contact-consent counts for each consent state. Returns: total, explicit, implicit, pending, unsubscribed, new_subscriber.
update_a_constant_contact_contacts_resubscribe_by_id
Send a confirmation resubscribe email to an unsubscribed Constant Contact contact and add them to the contact lists you specify; the contact is not resubscribed until they confirm, and the resubscribe email can only be sent once per contact. Returns a success response with no body. Required: id, list_ids.
get_contacts_sms_engagement_history_by_id
Get SMS engagement history for a contact in ConstantContact, including SMS consent and advertising frequency details. Returns: contact_id, sms_channel_id, sms_channel_history_id, insert_time, history_details. Required: id.
list_all_constant_contact_email_report_links
Get the Constant Contact email links report for an email campaign activity, showing the number of unique contacts that clicked each link and the click-segmentation action for each link. Returns: campaign_activity_id, link_click_counts, oauth2_implicit. Required: campaign_activity_id.
list_all_constant_contact_email_reports_campaign_performances
List campaign performance statistics for email campaigns in Constant Contact for a given date range. Returns: errors, top, bottom.
create_a_constant_contact_email
Create a new Constant Contact email campaign. Returns the created campaign including campaign_activities, campaign_id, name, current_status, created_at, updated_at, type, and type_code. from_email must be verified; custom HTML must include [[trackingImage]]. Required: name, email_campaign_activities.
delete_a_constant_contact_email_by_id
Delete an email campaign in Constant Contact by id, including its associated email campaign activities. Returns an empty 204 response on success. Required: id. Campaigns with a Scheduled status cannot be deleted; deleted campaigns are restorable in the Constant Contact UI.
get_single_constant_contact_email_by_id
Get details about a single Constant Contact email campaign by id, including its campaign activities. Returns: campaign_activities, campaign_id, created_at, current_status, name, type, type_code, updated_at. Required: id.
list_all_constant_contact_emails
List Constant Contact email campaigns, including deleted ones by default. Returns campaigns with campaign_id, name, current_status, type, type_code, created_at, and updated_at. Does not include campaign activity details.
update_a_constant_contact_email_by_id
Rename a Constant Contact email campaign by id. Returns: campaign_activities, campaign_id, created_at, current_status, name, type, type_code, updated_at. Cannot rename campaigns with a Removed status. Required: id, name.
get_single_constant_contact_emails_activity_by_id
Get a single Constant Contact email campaign activity by id, including its email content, metadata, and styling. Returns: campaign_activity_id, campaign_id, role, contact_list_ids, current_status, format_type, from_email, from_name, subject, and 11 more. Activities with a REMOVED status cannot be retrieved. Required: id, campaign_activity_id.
update_a_constant_contact_emails_activity_by_id
Update a Constant Contact email campaign activity by sending the full activity with your changes. Returns: campaign_activity_id, current_status, format_type, from_email, and 16 more. Required: id, from_email, from_name, reply_to_email, subject. Only DRAFT or Done primary_email activities can be updated; PUT overwrites missing top-level properties.
list_all_constant_contact_emails_campaign_id_xrefs
Look up the V3 campaign_id and campaign_activity_id for each V2 email campaign ID in Constant Contact to migrate locally stored V2 data to the V3 format. Returns an xrefs array with the V3 identifiers. Migration-only endpoint; not for regular or repeated use. Required: v2_email_campaign_ids.
list_all_constant_contact_stats_email_campaign_activities
Get performance tracking statistics for up to ten Constant Contact email campaign activities. Returns results with campaign_id, campaign_activity_id, stats counts (em_sends, em_opens, em_clicks, em_bounces and more), and last_refresh_time, plus errors for activities with no stats. Required: campaign_activity_ids (max 10).
list_all_constant_contact_stats_email_campaigns
Get Constant Contact email campaign performance stats for one or more campaigns. Returns results with campaign_id, stats (em_opens, em_clicks, em_sends), percents (open, click, bounce), and last_refresh_time, plus errors for any partial failures. Required: campaign_ids. A 404 is returned for all campaigns if any id is invalid.
list_all_summary_reports_email_campaign_summaries
List Constant Contact email campaign summary reports with aggregate interaction statistics for up to 500 campaigns, sorted by last_sent_date descending. Returns: bulk_email_campaign_summaries, aggregate_percents, _links. Max 500 per page.
list_all_constant_contact_tracking_bounces
List the email bounces report for a Constant Contact email campaign activity, most recent bounces first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 per page.
list_all_constant_contact_tracking_clicks
List email click tracking activities for a Constant Contact email campaign — each contact link click with its date, time, and device type, sorted most recent first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 per page.
list_all_constant_contact_tracking_didnotopens
List Constant Contact contacts that were sent a specific email campaign activity but did not open it. Returns tracking_activities items with contact_id, campaign_activity_id, tracking_activity_type, email_address, first_name, last_name, created_time, and deleted_at, plus _links for pagination. Required: campaign_activity_id. Most recent activity…
list_all_constant_contact_tracking_forwards
List each time a contact forwarded a Constant Contact email campaign activity using the forwarding link in the email footer. Returns: tracking_activities, _links, oauth2_implicit. Required: campaign_activity_id. Sorted most recent first; max 500 per page.
list_all_constant_contact_tracking_opens
List each time a contact opened a specific email campaign activity in Constant Contact, with the most recent activity first. Returns open activities with contact_id, email_address, device_type, tracking_activity_type, and created_time. Required: campaign_activity_id. Max 500 per page.
list_all_constant_contact_tracking_optouts
List the Constant Contact contacts that clicked an email campaign activity's unsubscribe link to opt out of future emails. Returns the report page with tracking_activities entries (contact email address, unique ID, opt-out date/time) and _links. Required: campaign_activity_id. Max 500 per page, most recent opt-outs first.
list_all_constant_contact_tracking_sends
List the contacts that a Constant Contact email campaign activity was sent to, most recent first. Returns: tracking_activities, _links. Required: campaign_activity_id. Max 500 per page.
list_all_constant_contact_tracking_unique_opens
Get the unique opens report for an email campaign activity in Constant Contact — the last time each contact opened it, most recent first. Returns tracking_activities with contact_id, email_address, first_name, last_name, device_type, and created_time, plus _links.next for pagination. Required: campaign_activity_id. Max 500 per page.
create_a_constant_contact_account_operations_sync
Send a Constant Contact v3 API request on behalf of a managed client account in your partnership. The request body defines the proxied call (URL, HTTP method, payload, query parameters, path parameters, and headers), so non-partner v3 API methods can be used this way. Returns the response body of the proxied v3 request, which varies with the….…
constant_contact_account_plans_bulk_update
Update the billing plan details for a client's Constant Contact account under your partner account. Returns: plan_type, current_tiers, billing_status, billing_day_of_month. Required: encoded_account_id.
get_single_constant_contact_account_plan_by_id
Get the billing plan details for a client's Constant Contact account. Returns: plan_type, current_tiers, billing_status, billing_day_of_month. Required: id.
create_a_constant_contact_contacts_unsubscribe
Unsubscribe contacts from a Constant Contact partner client account. Returns: unsubscribed_count. Required: encoded_account_id, update_source. Max 500 email_addresses per call; global_unsubscribe accepts only one address.
create_a_constant_contact_partner_account
Create a new Constant Contact client account under your partner account, set up its billing plan, and add the client to the default contact list. Returns: encoded_account_id, provision_uuid. Requires contact_email, country_code, state_code, and login_name. New accounts are free trials for up to 60 days. Required: contact_email, country_code,…
list_all_constant_contact_partner_accounts
List all Constant Contact client accounts under your partner account, filterable by account_type (all/managed/unmanaged). Returns site_owner_list records with encoded_account_id, organization_name, site_owner_name, billing_status, subscriber_count, and last_login_date, plus _links.next for paging. Max 50 per page; limit outside 10–50 is ignored.
constant_contact_status_cancels_bulk_update
Cancel the billing plan for a client Constant Contact account under your partner account. Returns: reason_id, effective_date. Required: encoded_account_id.
create_a_constant_contact_subscription_test
Trigger a test webhook notification to validate a Constant Contact partner webhook subscription; Constant Contact then POSTs example data to the topic's callback URI. Returns: topic_id, hook_uri, topic_name, topic_description, and 2 more. Required: topic_id.
list_all_constant_contact_summary_reports_sms_campaign_summaries
List Constant Contact SMS campaign summary details, including how many contacts uniquely interacted with each campaign and aggregate tracking stats, sorted by last_sent_date descending. Returns: campaign_id, campaign_name, last_sent_date, unique_counts, campaign_type. Max 50 per page. Required: start_at.
list_all_constant_contact_webhooks_subscriptions
List Constant Contact partner webhook topic subscriptions used to receive billing event notifications. Returns: topic_id, hook_uri, topic_name, topic_description.
get_single_constant_contact_webhooks_subscription_by_id
Get a Constant Contact partner webhook topic subscription by id. Topics: 1 (billing tier upgrade), 2 (tier downgrade), 3 (account cancelled), 4 (account disabled). Returns: topic_id, hook_uri, topic_name, topic_description. Required: id.
update_a_constant_contact_webhooks_subscription_by_id
Subscribe a Constant Contact application to a webhook topic or update its callback URI by id. Failed notifications retry for up to an hour. Returns: topic_id, hook_uri. Required: id.
delete_a_constant_contact_webhooks_subscription_by_id
Unsubscribe a Constant Contact partner application from webhook event notifications by deleting a topic subscription. Returns an empty 204 response on success. Required: id.
create_a_constant_contact_users_sso
Create a new SSO-enabled user under a Constant Contact partner client account. Returns an empty 201 response on success. The client account must have the Single Sign On for all users…. Required: encoded_account_id, first_name, last_name, role_name, contact_email, login_name, external_id, external_provider.
Why Truto
Why use Truto’s MCP server for Constant Contact
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 950+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
Unified APIs
Unified APIs for Constant Contact
Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.
Unified Marketing Automation API
How It Works
From zero to integrated
Start with Constant Contact in a free sandbox, usually ready within one business day. No boilerplate, no maintenance burden.
Link your customer’s Constant Contact account
Use Truto’s frontend SDK to connect your customer’s Constant Contact account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Constant Contact
Truto’s Proxy API is a 1-to-1 mapping of the Constant Contact API. You call us, we call Constant Contact, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Constant Contact’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Constant Contact on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
What authentication method does Constant Contact use?
Constant Contact uses OAuth 2.0 for authentication. Truto handles the full OAuth flow, token storage, and automatic refresh so your team never manages credentials directly.
Which Unified APIs does Truto support for Constant Contact?
Truto maps Constant Contact to the Unified Marketing Automation API (covering Contacts, Lists, and Tags) and the Unified User Directory API (covering Users and Roles). Specific tools for Constant Contact are built on request.
Can I sync custom fields between my product and Constant Contact?
Yes. Constant Contact's API v3 supports custom fields on contacts. You can create and map custom fields — such as donation amounts, appointment dates, or ticket types — so your users can leverage them as merge tags in their email templates.
How does Constant Contact handle rate limits?
Constant Contact's API v3 enforces rate limits (typically 10,000 requests per day and 4 requests per second). Truto manages retries and backoff automatically, so your integration stays within limits without manual throttling logic.
Does the integration support bulk contact operations?
Yes. Constant Contact's API v3 supports bulk JSON imports for contacts, which is critical for initial onboarding syncs and large list updates. Truto can orchestrate these bulk operations through the Unified Marketing Automation API.
How are opt-in and permission states handled to maintain deliverability?
Constant Contact strictly tracks opt-in source and permission status on every contact. When creating or updating contacts through the integration, you must correctly set these fields to protect your end user's sender reputation and comply with CAN-SPAM and GDPR.
Constant Contact
Get Constant Contact integrated into your app
Our team understands what it takes to make a Constant Contact integration successful. A short, crisp 30 minute call with folks who understand the problem.