Upsert a contact record by email

Update an existing record or insert a new contact record using the email address that you specify using the following logic:

  • If the email address exists in the list, only the first record matching that email address is updated with the data you provide.
  • If the email address is not already in the list, a new record is added.

Please take note that this means that any duplicate records are NOT updated.


Name Parameter
Data Type Description
Authorization: Header False Required String (Bearer {access token}) Pass the authentication token that was granted when you authorized access
listid Path False Required String The listid of the list.
email Query False Required String The email address of the contact to update.
async Query N Optional String Defines whether this request is synchronous or asynchronous. The endpoint is synchronous by default, but with some very large lists may timeout. If a list you are working with is timing out when using this endpoint, this can be set to "Y" or "y" for an async response.
Body False Required String A JSON object with name/value pairs that represent the information to be updated or inserted. Example: {"firstname":"John", "lastname":"Smith"}




Default synchronous response:

A successful request results in an HTTP 200 response with a JSON object like the following:

The jobId can then be exchanged for a result using the Get List Upload Status endpoint


Code Examples


Grant Type Password
Grant Type Code
Grant Type Refresh
Account API
Get Account Information
Create New Account User(s)
Delete Account User(s)
Delete Account User by Email
Get email senders
Fact API
Upload Custom Event
Get Custom Event Upload Status
List API
Get List of Assets
Download a List
Create a New List
Update a List
Get List Upload Status
Get List Rejected Records
Delete a List
Delete Records from List
Get Hard Bounce List
Get Spam Complaint List
Get Opt-Out List
Update Out-Out List
Get Opt-Outs by Subscription Category
Content API
Get Logo List
Get a Logo
Add a Logo
Update a Logo
Delete a Logo
Get Header List
Get a Header
Add a Header
Update a Header
Delete a Header
Get Footer List
Get a Footer
Add a Footer
Delete a Footer
Update a Footer
Get Image List
Get an Image
Add an Image
Update an Image
Delete an Image
Get Media List
Get Media File
Add a Media File
Add a Media Link
Update Media File
Delete a Media Object
Get Form List
Get Classic Form URLS
Get Landing Page List
Get Landing Page
Delete Landing Page
Get Landing Page URLs
Get List of Programs
Reporting API
Get Message Report
Get Message Report Drilldown
Get Message Report by Time Period
Get Media Report
Get Media Message Report
Get a Media Report Drilldown
Get a Media Timeline Report
Get Form Report
Get Landing Page Report
Email Campaign API
Get Message List
Send a Message
Resend a message
Add new template or draft message
Update template or draft message
Delete a Message
Get Message Report
Get Message Report Drilldown
Get Message Report by Time Period
Get Message HTML
Contact API
Add a Contact
Get Contact Record
Upsert a contact record by email
Update a contact by record ID
Delete a contact
Get contact record ID based on cookie value
Get contact from list based on cookie ID or e-mail
Get contact fact and score data
Get subscription categories
Opt in/Opt out subscription category by email address
Get subscription category opt-ins by email
Opt in/Opt out multiple subscription categories by email address
Get SEO keywords
Get a new SEO report
Frequently Asked Questions