Constant Contact v2

Provides integration with Constant Contact to query and manage contacts, lists, campaigns, activities, and other supported account resources through the V3 API.

Revision History

0.0.1.9 - Initial release.

Connection

Use this Connection to store the application credentials and account authorization used by all Constant Contact Methods.

Property Type Description
ClientId String Required identifier of your registered Constant Contact application.
ClientSecret Masked Required application secret.
AccessToken Masked Access token generated when you connect your account.
RefreshToken Masked Refresh token used to renew account access. Reconnect if the refresh grant is rejected.
Scopes String Required space-separated authorization scopes. Defaults to account_read contact_data campaign_data offline_access. Include offline_access for token renewal and the scopes required by your selected operations.
BaseUrl String Must be https://api.cc.email/v3, which is also the default. Other API URLs are rejected.

Setup Notes

  1. Register a Constant Contact application and obtain its client identifier and secret.
  2. Register the Flowgear OAuth callback URL with the application. Use an HTTPS callback URL; HTTP is accepted only for loopback development.
  3. Create a Constant Contact Connection and enter ClientId, ClientSecret, and the required Scopes.
  4. Complete OAuth authorization for the Constant Contact account.
  5. Save and test the Connection.

The Connection test reads account privileges. It does not change account data or send email. Template selection does not test credentials or account permissions.

Authorization attempts expire after ten minutes. Start a new attempt if authorization expires or the callback configuration or client identifier changes. Reconnect with the appropriate consent if you need additional scopes; refreshing a token does not grant new permissions.

Methods

Select an operation template for the Method you need. The template populates OperationId and exposes the operation's route and query values in Options, request body fields in Items where applicable, and expected response fields. Use the template-selected identifier rather than the provider's textual operation name.

Query

Reads supported account resources using GET operations, including contacts, lists, tags, custom fields, campaigns, activity status, segments, events, and reporting. The Node handles supported paging automatically.

Parameter Type Description
Connection Connection Constant Contact account Connection.
OperationId String Required template-selected identifier for a Query operation.
Options Object Declared route and query values. Supply all values required by the selected template.
Return Type Description
Response Array Provider-shaped response rows. Contacts, lists, tags, custom fields, campaigns, and activity-status collections return one row per member. Other collection operations can return one envelope per page, retaining collection fields and totals. CSV export content is returned in Content. Query rows do not include mutation metadata.

Valid empty collections return no rows. A documented no-content response also returns no rows. An unexpected empty or malformed response fails the Node.

Create

Runs supported POST operations, including creating contacts, lists, custom fields, campaign drafts, bulk activities, and other account resources. Operations with a request body send one request per Items row.

Parameter Type Description
Connection Connection Constant Contact account Connection.
OperationId String Required template-selected identifier for a Create operation.
Options Object Declared route and query values for the selected operation.
Items Array Request objects matching the selected template. Required for operations with a request body; omit it for bodyless operations.
Return Type Description
Response Array One result per request, preserving provider fields and adding Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request.

Contact creation requires create_source and a name, email_address object, or sms_channel. Supply consent values deliberately; the Node does not default them. Custom-field creation requires label, type, and the metadata or choices applicable to the field.

Campaign draft creation requires exactly one email_campaign_activities object using custom HTML with format_type set to 5. Include [[trackingImage]] in html_content and use confirmed sender and reply-to addresses.

Update

Runs supported PUT and PATCH operations to update account resources. Check the selected operation's semantics before submitting a replacement request.

Parameter Type Description
Connection Connection Constant Contact account Connection.
OperationId String Required template-selected identifier for an Update operation.
Options Object Declared route and query values, including required resource identifiers. The same values apply to every input row.
Items Array Update request objects matching the selected template. Required for operations with a request body; omit it for bodyless operations.
Return Type Description
Response Array One result per request, preserving provider fields and adding Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request.

Contact PUT replaces contact values. Omitted scalar values can be cleared, while omitted subresources follow Constant Contact's preservation rules. When renaming a list with PUT, include its current favorite value even if the template marks it optional.

Delete

Deletes the resource identified by the selected template and Options. It runs once and does not accept Items.

Parameter Type Description
Connection Connection Constant Contact account Connection.
OperationId String Required template-selected identifier for a Delete operation.
Options Object Declared route and query values identifying the resource to delete.
Return Type Description
Response Array One result containing any provider response fields and Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. The request records the supplied Options.

List and tag deletion can return an accepted asynchronous activity. Use Query to check activity status; acceptance does not establish completion.

Action

Schedules a campaign activity, cancels its schedule, or sends an explicitly requested test email.

Parameter Type Description
Connection Connection Constant Contact account Connection.
OperationId String Required template-selected identifier for an Action operation.
Options Object Declared route and query values identifying the campaign activity.
Items Array Scheduling or test-send request objects. Omit it for a bodyless cancellation operation.
Return Type Description
Response Array One result per request with provider fields and Flowgear.IsSuccess, Flowgear.Message, and Flowgear.Request. Schedule response arrays are grouped under Schedules. Bodyless requests record Options.

Use scheduled_date set to the string "0" for immediate sending. Test-send requests accept at most five recipients. A successful response does not confirm email delivery, and the Node does not poll for completion.

Usage Notes

  • Use the selected template's exact provider field names. Unknown Options and paging controls are rejected. Do not supply limit, cursor, or include_count; paginated operations also reserve page, page_size, offset, next, and prev.
  • String and integer collections use CSV strings in templates and response fields. Quote values containing commas, quotes, or line breaks, and double embedded quotes. An empty string represents an empty collection; "" represents one empty string. Object arrays remain structured. Omitted and null values retain their distinct meanings.
  • Fields representing provider-defined JSON or recursive automation structures use JSON text. Supply valid JSON text for these fields; the Node converts it to JSON before sending the request.
  • Query fetches the first page when the Method starts and later pages as the output is consumed. Operations with request bodies send the first input row when the Method starts and later rows as output is consumed. An empty connected Items input sends no requests.
  • Inspect Flowgear.IsSuccess for write results. Business rejections produce failed rows and allow later input rows to continue. Setup, authentication, and transport failures stop execution. An invalid first input fails the Node; later invalid inputs produce failed rows.
  • Flowgear.Request preserves the original input row before CSV or JSON conversion. Bodyless writes run once and record their Options instead.
  • Sequential requests within one invocation are paced below four requests per second. Concurrent Workflows must also respect Constant Contact account limits. Short, explicit throttling can be retried within a bounded budget; daily quota exhaustion and ambiguous write failures stop execution.

See also