v1

latestSwagger 2.0Private2026-08-04128286690.5 KB
Contacts

Create or Update a Contact

Use this method to create a new contact or update an existing contact. In the request body, this method requires including the list_memberships array as well as either the contact's email_address string or sms_channel object which includes the contact's SMS number. The information you specify determines if a new contact is either created (the email address or SMS number does not already exist in the account), or if an existing contact is updated (the email address or SMS number already exists). The SMS product feature does not need to be enabled to include a contacts SMS details.

Updates to existing contacts are partial updates. This method only updates the contact properties you include in the request body. Updates append new contact lists or custom fields to the existing list_memberships or custom_fields arrays.

If email_address is specified: <div class="Msg"><p class="note-text">Only use this method when a contact gives you their explicit permission to send them an email. It is a violation of anti-spam and telemarketing laws, as well as a serious violation of the Constant Contact Terms of Service to use the Opt-in features of the API to opt a contact back in without his or her own action and consent.</p></div>

If sms_channel is specified: <div class="Msg"><p class="note-text">Only use this method when a contact gives you their explicit permission to send them an SMS. It is a violation of anti-spam and telemarketing laws, as well as a serious violation of the Constant Contact Terms of Service to use the Opt-in features of the API to opt a contact back in without his or her own action and consent.</p></div>

When this method creates a new contact, it returns a 201 response code.When this method updates an existing contact, it returns a 200 response code. Updating a deleted contact restores the contact.

The method automatically modifies the contact's permission_to_send and opt_in_source properties depending on the Confirmed Opt-In Constant Contact account setting:

If Confirmed Opt-in is enabled, this method automatically sets the permission_to_send property as pending_confirmation for new contacts. If Confirmed Opt-in is disabled, this method automatically sets the permission_to_send property as explicit and the opt_in_source property as Contact for new contacts. Updated contacts have their permission_to_send property set as explicit.

post/contacts/sign_up_form

Request body

email_addressstring

The email address for the contact. This method identifies each unique contact using their email address. If the email address exists in the account, this method updates the contact. If the email address is new, this method creates a new contact.

first_namestring

The first name of the contact.

last_namestring

The last name of the contact.

job_titlestring

The job title of the contact.

company_namestring

The name of the company where the contact works.

phone_numberstring

The phone number for the contact.

list_membershipsstring[] required

The contact lists you want to add the contact to as an array of up to 50 contact <code>list_id</code> values. You must include at least one <code>list_id</code>.

anniversarystring

The anniversary date for the contact. For example, this value could be the date when the contact first became a customer of an organization in Constant Contact. Valid date formats are 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.

birthday_monthinteger

The month value for the contact's birthday. Valid values are from 1 through 12. The <code>birthday_month</code> property is required if you use <code>birthday_day</code>.

birthday_dayinteger

The day value for the contact's birthday. Valid values are from 1 through 31. The <code>birthday_day</code> property is required if you use <code>birthday_month</code>.

Example request

{
  "email_address": "jdodge@example.com",
  "first_name": "Jake",
  "last_name": "Dodge",
  "job_title": "Musician",
  "company_name": "Acme Corp.",
  "phone_number": "(555) 555-1212",
  "list_memberships": [
    "07936f78-662a-11eb-af0a-fa163e56c9b0"
  ],
  "custom_fields": [
    {
      "custom_field_id": "1618ae62-4752-11e9-9c8a-fa163e6b01c1",
      "value": "Tesla S 2017"
    }
  ],
  "anniversary": "11-15-2006",
  "birthday_month": 11,
  "birthday_day": 24,
  "street_address": {
    "kind": "home",
    "street": "1601 Trapelo Rd",
    "city": "Waltham",
    "state": "Massachusetts",
    "postal_code": "02451",
    "country": "United States"
  },
  "sms_channel": {
    "sms_address": "7815551212",
    "dial_code": "1",
    "country_code": "US",
    "sms_channel_consents": [
      {
        "sms_consent_permission": "pending_confirmation",
        "consent_type": "promotional_sms",
        "consent_medium_type": "LF",
        "consent_medium_url": "https://lp.constantcontactpages.com/su/iPtuMuh",
        "consent_medium_details": "Contact used our landing page to consent to SMS.",
        "advertised_frequency": 1,
        "advertised_interval": "weekly"
      }
    ]
  }
}

Response

Contact successfully updated.

contact_idstring uuid

The unique identifier for the contact that the V3 API created or updated.

actionstring

Identifies if the V3 API created a new contact or updated an existing contact.

Example response

{
  "contact_id": "ab7ab702-b935-11e9-8a58-fa163e6b01c1"
}