addAccountEmailAddress
ChatGPTUse this method to add a new email address to a Constant Contact account. If the email address you are adding already exists in the account the API will return a 409 conflict error. When you add a new email address to an account, Constant Contact automatically sends an email to that address with a link to confirm it. After a user clicks that link, the account email status changes from UNCONFIRMED to CONFIRMED. You can use confirmed account email addresses in the email campaign from_email and reply_to_email headers. For more use case information, see [Add an Account Email Address](/api_guide/account_post_emails.html) in the API guide.
addPhysicalAddress
ChatGPTUse this method to add the address where the account's organization physically resides. The physical address is required to send emails and displays on the footer of every email that is sent from the account. The country (country_code) where the account organization resides determines whether you use the state_code to specify United States (US) and Canada (CA) addresses, or use the state_name to specify all other countries.
bulkImportContactsJSON
ChatGPTUse this method to create an asynchronous background job that adds new contacts or updates existing contacts by importing a JSON payload. This method requires a request body that contains the contact data you are importing and the contact lists to which you want to add the imported contacts. A contact's data must include an email address and/or sms_number. The sms_number must be a US phone number to associate with the contact's SMS-enabled phone. Valid formats are 1231231234 or 123-123-1234 (the country code must be valid). Importing a new contact using this method automatically sets the contact's email permission_to_send property to implicit and the opt_in_source property as Account. Importing an existing contact only updates the contact properties you include in the request. For each contact, you can import up to three addresses and three phone numbers. International phone numbers are currently not supported. To import custom fields, prefix the custom field name with cf: and add it as a contact property. For example, use the property name cf:first_name if you have a custom field named first_name. The custom field must already exist in the Constant Contact account you are using. Each contact can contain up to 25 custom fields. To include a contact's sms_number, if the contact provided explicit permission to receive SMS messages, you must set the sms_permission_to_send property to explicit and specify the date of consent using the sms_consent_date column header. If explicit permission was not provided, set sms_permission_to_send to not_set (the sms_consent_date is not required). If the sms_consent_date is not set, SMS messages cannot be sent to contacts and sms_permission_to_send defaults to not_set. Valid value formats for sms_consent_date include MM/DD/YYYY, M/D/YYYY, YYYY/MM/DD, YYYY/M/D, YYYY-MM-DD, YYYY-M-D,M-D-YYYY, or M-DD-YYYY. The request body payload has a maximum size of 4 megabytes (MB). If the request body exceeds 4 MB, this method only imports the first 4 MB and drops the remaining data. Use the activity URL to check the status of the import activity request.
check_campaign_schedule_readiness
ChatGPTCheck if an email campaign activity is ready to be scheduled for sending. Returns status and scheduling URL. Only DRAFT status campaigns can be scheduled.
createEmailCampaignUsingPOST
ChatGPTUse this tool to create a new email campaign. You must include a tracking image ([[trackingImage]]) in the email body in order for Constant Contact to report on the email performance. The request body must contain the name property and the email_campaign_activities array. The name must be unique. The email_campaign_activities array contains the main content of your email campaign and must include format_type, from_name, from_email, reply_to_email, subject, and html_content properties. The from_email address you use must use a verified email address for the account. Quality requirement for default output: when the user asks to create an email campaign and does not explicitly request a plain or minimal draft, default to a polished, production-ready HTML marketing email, not a schema-valid stub. Treat any included HTML example as the minimum visual quality bar, not just a valid payload sample. Strong preference: generate professionally styled HTML with substantial inline CSS and a clear design system. Prefer: a background color and constrained content container, strong heading hierarchy and readable body typography, intentional spacing and section padding, card or panel structure where appropriate, styled CTA buttons and links, polished image treatment, responsive-friendly table or hybrid email-safe layout patterns, and a coherent visual layout that looks intentionally designed. Avoid as the default: barebones bodies with only one or two inline styles, placeholder-looking copy, or a simple heading-plus-paragraph structure when richer HTML is feasible from the information already available. User-discovery requirement: before creating the campaign, strongly prefer gathering enough context to make the email effective. Ask about the users business goal/campaign objective, audience, brand style, and desired call to action when that information is missing and asking is practical. Frame this as improving performance and relevance, not as a blocker. Examples: What is the business goal of this email? Who is the audience? What action do you want readers to take? Do you want it to feel promotional, editorial, or transactional? Are there brand colors, logo, product images, or offers to include? It is very important to personalize the email. If a business website is provided, use it to infer brand style, tone, colors, and destination links. If a logo or image is provided, incorporate it into the email. If neither is provided, clearly label the output as a best-effort draft. If the user has not supplied this context and immediate creation is still necessary, create the best possible polished draft using reasonable assumptions, but optimize for a credible business-ready layout rather than a minimal example. Behavioral rule: The assistant should assume the user wants a visually designed email that supports a real business objective. Visual polish does not satisfy this requirement on its own. Unless the user explicitly requests a placeholder, starter draft, mockup, or “just make something,” the assistant must collect the minimum campaign brief — goal, audience, CTA — before creating the campaign. If any of these are missing, ask first. Do not use generic filler strategy or copy as a substitute for the brief. Tool Requirement: After creating an email campaign, always use the html preview tool get_campaign_html_preview inspect the rendered result.
createList
ChatGPTCreate a new contact list resource
getPhysicalAddress
ChatGPTUse this method to get the address where the account's organization physically resides. The physical address is required to send emails and displays on the footer of every email that is sent from the account.
get_campaign_html_preview
ChatGPTGet the HTML preview of an email campaign activity. Returns decoded HTML content ready to render, along with email metadata (subject, from email, preheader, etc.).
public_render_subject_line_score
ChatGPTRender an interactive subject line score UI component that suggests better subject lines.
putList
ChatGPTUpdates an existing contact list resource, specified by list_id Path Parameters: - list_id: Unique ID of the contact list to update
putPhysicalAddress
ChatGPTUse this method to update the organization's physical address for the Constant Contact user account. The physical address is required to send emails and displays on the footer of every email that is sent from the account. To get the current physical address, make a GET call to /account/summary/physical_address. The country (country_code) where the account organization resides determines whether you use the state_code to specify United States (US) and Canada (CA) addresses, or use the state_name to specify all other countries. For more details, see [Put (update) the Physical Address for the Account](/api_guide/account_address_put.html). You must have the role of Account Owner assigned to update account level details.
renameEmailCampaignUsingPATCH
ChatGPTUse this method to rename an email campaign. The name is not visible to contacts. The name must be unique and cannot exceed 80 characters. You cannot rename email campaigns that have a Removed status. Path Parameters: - campaign_id: The unique identifier for an email campaign.
retrieveEmailAddresses
ChatGPTUse this method to return a collection of email addresses for the account associated with your access token. When you Create an Email Campaign, you must use an account email address with a CONFIRMED status in the email campaign from_email and reply_to_email headers. Use the query parameters to filter results. You can filter using confirm_status, role_code, or email_address. For example, searching with confirm_status=CONFIRMED returns all confirmed email addresses in the account. This method only supports one query parameter at a time. updateEmailCampaignActivityUsingPUT
ChatGPTUse this method to update an email campaign activity by including the complete email campaign activity with your changes in the request body. The request body requires the from_name, from_email, reply_to_email, and subject properties. You can only update email campaign activities that have the primary_email role and that are in DRAFT or Done status. When you use a PUT method to update a resource, the V3 API overwrites any properties that are missing in the request body. However, the V3 API does not overwrite subresources that you omit in the request body or missing properties in subresources. This method considers physical_address_in_footer, document_properties, html_content, and permalink_url subresources of the email campaign activity. Path Parameters: - campaign_activity_id: The unique ID for the email campaign activity you are updating.