Our v3 API is now available! Learn more by visiting the v3 developer portal.

Create a Toolkit Account

Use this endpoint to create (POST) a Constant Contact Toolkit account. Newly created accounts are free 60 day trial accounts that give the user the opportunity to try Constant Contact before buying. Trial accounts have limits depending on the services that are included. Learn more about trial account limitations here.

Please note that this endpoint uses basic authentication, and requires the partners username and password be included in each call.

Important All test accounts used in validating your account creation integration must use "@nullmailer.com" as the domain.

NOTE: This endpoint is available only to approved Constant Contact Technology Platform partners selling Toolkit accounts. Learn more here. It also uses basic authentication as documented on this page.


Click a method to view its documentation



Create a Constant Contact Toolkit account using this endpoint. You must provide the following information when creating an account:

  • username
  • password (except if using Single Sign On)
  • organization name
  • first and last name of the account owner
  • email address
  • phone number
  • If country is US or CA, 2 letter state or province code (not required for non-US/CA countries)
  • 2 letter country code

NOTE: You must be set up for either single- or partner-billing in order to create Toolkit accounts.

Using single-billing?

In order to set up a new account for single-billing, you must set both managed_site_owner and single_billing to true in the request payload.

Using single sign on?

If you are using Single Sign On (SSO), do not provide a password when creating user accounts. Instead, supply the following parameter-value pairs in the POST request payload:

  • idp_provider - unique identified for the partner, provided by Constant Contact when approved for SSO
  • idp_provider_id - The unique identifier for the Toolkit account owner

Autogenerate OAuth 2.0 access token

You have the option of generating an OAuth 2.0 access token for each account during the account creation process. Generating an access token when you create each account eliminates the need for new users to go through the OAuth grant access flow when they first login to your Constant Contact integration.

Set the oauth2_token_provided query parameter to true to generate an OAuth 2.0 access token for the account during provisioning. The oauth2_token is returned in the response.

GDPR Settings

When creating accounts for users who have opted-out of any marketing communications, you can pass along that preference to us so that Constant Contact will not send any marketing communications to this account. Use the gdpr_opt_out property, set to true in the request payload.

POST: https://api.constantcontact.com/v2/partner/accounts







REQUIRED; The API key for the application; key must have Partner level API access




Boolean, An OAuth 2.0 access token is generated for the user account if set to true, and returned in the response

Example JSON Request BodyTOP

    "username": "account_username",
    "organization_name": "My organization",
    "first_name": "Robert",
    "last_name": "Jones",
    "email": "rjones@example.com",
    "phone": "555-555-5555",
    "state_code": "MA",
    "password": "password",
    "country_code": "US",
    "website": "http://your.company.website",
    "single_billing": true,
    "managed_site_owner": true,

Response CodesTOP




Request was successful - the account was created


Bad Request: either JSON was malformed or there was a data validation error


Authentication failure


Unsupported method, only POST is supported


Unsupported accept header value, must be application/json


Username must be unique; username specified is already in use


Unsupported content-type in the header, use application/json


Internal server error occurred



type(max length)




Specifies the currency in which the account is billed; valid values are:

  • en_US - US Dollars (default)
  • en_GB - British Pounds


string (2)

REQUIRED. Standard 2 letter ISO 3166-1 code of the country associated with the account


string (80)

REQUIRED. Email address associated with the account


string (80)

REQUIRED. First name of the account owner



For GDPR; when creating an account for user who has opted out of your marketing communications, pass that preference to Constant Contact using gdpr_opt_out=true. Constant Contact will not send marketing communications to this account using this setting.


string (80)

Unique ID for the owner of the Constant Contact account


string (20)

Unique identifier for the partner, use with Single Sign on implementation; REQUIRED when using Single Sign on authentication; do not use password with SSO.


string (255)

The unique identifier for the account owner; REQUIRED when using Single Sign on authentication.


string (80)

REQUIRED. Last name of the account owner



When managed=true, a partner can login to the user's account through the Partner Console. If single_billing=true, managed_site_owner is automatically set to true, even if it is set to false in the request payload. This is done to avoid getting an account into an unknown state.



The OAuth 2.0 access token linked to the user account; is generated during account creation if oauth2_token_provided = true


string (80)

REQUIRED. Name of the organization associated with the account


string (80)

Partners can use this field to provide a unique identifier when provisioning an account for billing/reporting purposes.


string (80)

REQUIRED when not using Single Sign On. Password for the account being created; the password is not returned in response payload for security reasons; Do not use password if using SSO authentication, instead use idp_provider and idp_provider_id instead. Password limitations are:

  • minimum of 6 characters long
  • Can contain alphnumeric characters A-Z, a-z, 0-9
  • Can contain only the following special characters: @ . - _
  • It cannot contain: ` ! ~ # % ^ : ; | " / ? < >


string (25)

REQUIRED. Phone number associated with the account, must have a minimum of 5 numbers, and a maximum of 25



Set single_billing=true for the account to be billed using single_billing. Your partner account must be set up for single_billing in order to enable this feature. See your account manager for more information.


string (80)

REQUIRED if country_code is US or CA; must be a standard 2 letter (capitalized) code of the US state or Canadian province of the address. Leave blank for non-US/CA countries.


string (50)

REQUIRED. The username used to log in to the account being created; usernames must be unique, and must only contain the following characters a-z, 0-9, @, ., -, and _


string (255)

Takes a valid URL starting with http:// or https:// for your website, eliminating the need for your end users to provide this information.

Example ResponseTOP

   "id": "123562789", 
   "organization_name":"My organization",
   "single_billing": true,
   "managed_site_owner": true,