iVvy Developer API
  • API Documentation
  • Getting Started
    • Obtaining Keys
    • Creating the request
      • Method/URI Header
      • Request Headers
        • Standard Headers
        • Custom Headers
      • Signing the request
      • Query Parameters
    • Test Ping
    • Interpreting the response
      • Collections
      • Pagination
      • Filtering
      • Exceptions
      • Response Headers
      • Dates
    • Batch
      • Run
      • Progress
      • Result
      • Restart
      • Repost
    • Use Cases
      • CRM Systems
      • Financial Accounting Systems
      • Point Of Sale
      • Property Management Systems
  • Contacts & Companies
    • Get Contact List
    • Get Contact
    • Get Contact Note List
    • Add or Update Contact
    • Get Contact Custom Field Definition
    • Get Company Custom Field Definition
    • Get Subscription Group List
    • Add Contacts To Subscription Group
    • Remove Contacts From Subscription Group
    • Get Company List
    • Get Company
    • Get Company Note List
    • Add or Update Company
    • Add or Update Lead
    • Add or Update Contact Note
    • Add or Update Company Note
  • Event
    • Add or Update Event
    • Get Event List
    • Get Event
    • Get Registration
    • Get Registration List
    • Get Attendee
    • Get Attendee List
    • Get Invited Contact List
    • Invite Contacts
    • Get Sponsorship List
    • Get Speaker List
    • Get Session List
    • Create Login Token
  • Venue
    • Venue Setup Data
      • Get Venue
      • Get Venue List
      • Get Venue Room List
      • Get Venue Room Option List
      • Get Venue Rate Plan List
      • Get Venue Rate Plan Rate List
      • Get Venue Rate Plan Room Rate List
      • Get Resource List
      • Get Resource Availability
      • Get Menu List
      • Get Beverage Package List
      • Get Function Space List
      • Get Space Blockout List
      • Get Function Space Category List
      • Get Function Space Availability
      • Get Function Space Hire Plan Rate List
      • Get Function Space Hire Plan Rate
      • Get Cost Center List
      • Get Session Type List
      • Get Revenue Template List
      • Get Tax List
      • Add or Update Function Space
      • Get Event Type List
      • Add or Update Function Space Category
      • Add or Update Guest Room
      • Get Booking Custom Field List
      • Get Space Hire Plans
      • Get Venue Package List
      • Get Venue Package
    • Booking Data
      • Convert Lead To Opportunity
      • Add or Update Opportunity
      • Get Booking
      • Get Booking List
      • Get Booking List For Account
      • Get Booking Notes
      • Get Booking Session List
      • Get Booking Session Menu List
      • Get Booking Changelog List
      • Get Booking Attendee (By Hash)
      • Get Booking Attendee List
      • Get Booking Release Schedule
      • Add or Update Booking
      • Change Booking Status
      • Add Items To Booking
      • Add Payment To Booking
      • Add Refund To Booking
      • Add or Update Booking Attendee
      • Add or Update Booking Note
      • Add or Update Booking Session
      • Add or Update Booking Session Beverage
      • Add or Update Booking Session Menu
      • Add or Update Booking Session Resource
      • Remove Booking Session
      • Remove Booking Session Beverage
      • Remove Booking Session Menu
      • Remove Booking Session Resource
      • Get Space Blockout List
      • Add or Update Blockout Space
      • Remove Blockout Space
      • Get Booking Tax List
      • Add or Update Opportunity Note
      • Upload Booking Document
    • Booking Accommodation Data
      • Get Booking Accommodation List
      • Add or Update Booking Accommodation
      • Remove Booking Accommodation
      • Get Booking Room Reservation List
      • Add or Update Booking Room Reservation
      • Update Room Reservation Guest Contact
      • Remove Booking Room Reservation
      • Confirm Booking Room Reservation
      • Cancel Booking Room Reservation
      • Change Status of Booking Room Reservation
      • Add or Update Room Counts
      • Add or Update Room Dynamic Rates
      • Remove Room Dynamic Rates
      • Add or Update Rate Plan Booking Rules
  • Partner
    • Get Venue List
    • Get Venue
  • Invoice
    • Get Invoice List
    • Get Invoice
    • Get Options
    • Add Payment
    • Get Credit Note List
    • Get Credit Note
  • Account
    • Add or Update Cost Center
    • Get Cost Center List
    • Get Email Log List
    • Add Error Report
    • Get Account User List
  • CRM
    • Get Lead List
    • Get Opportunity List
    • Get Opportunity Note List
    • Get Task List
    • Get Activity List
    • Get Lead Stage List
    • Get Lead Type List
    • Get Lead Quality List
    • Get Lead Source List
    • Get Lead Channel List
    • Get Lead Note List
    • Add or Update Activity Purpose
    • Add or Update Activity
    • Add or Update Task
    • Add or Update Lead Quality
    • Add or Update Lead Stage
    • Add or Update Lead Channel
    • Add or Update Lead Type
    • Add or Update Lead Source
    • Add or Update Lead Note
  • Notifications
    • Company Endpoint
    • Contact Endpoint
    • CRM Endpoint
    • Invoice Endpoint
    • Booking Endpoint
    • Event Endpoint
  • Development Reference
    • Calculating md5
    • HMAC-SHA1
    • JSON Encoding
    • Timestamp Format
    • Date Format
    • Time Format
    • Address Format
    • URLEncoding
    • Timezone List
  • Announcements
    • Room Reservation Contact Changes
    • Contact Customfield Changes
    • Booking Accommodation API Changes
Powered by GitBook
On this page
  • Add or Update Contact
  • Example Request: Adding a contact
  • Example Request: Updating a contact
  • Returns
  • Email Status
  • Sms status
  • External URL Field
  1. Contacts & Companies

Add or Update Contact

Add or Update Contact

POST [PlatformAddress]/api/1.0/contact?action=addOrUpdateContact

Add or update contact details

Request Body

Name
Type
Description

externalId

string

Reference to the ID of the contact in an external system.

id

integer

The contact's identifier. (Leave empty to add new contact)

firstName

string

The contact's first name (required when id is missing)

LastName

string

The contact's last name (required when id is missing)

email

string

The contact's email address. Must be a valid email. (required when id is missing)

phone

string

The contacts phone number.

groups

string

The array of subscription groups to set for the contact. Note: This list will override any groups currently set for the contact.

customFields

string

The array of custom fields to set on the contact. Each field will be validated depending on the type of field that is set.

companies

string

The array of companies to set on the contact. Each value will be validated depending on the type of field as well as it will verify that the given company exists or not.

status

enum

The contact's email subscription status.

smsStatus

enum

The contact's sms subscription status.

updateIfExists

boolean

Whether or not to update the contact by firstName, lastName and email when id parameter is missing.

externalUrls

array

This is an array of External URL field objects of the contact (a maximum of 3 objects allowed). When set to null, it will remove all externalUrls from the contact.

{
  "id":33884
}

Example Request: Adding a contact

{
  "firstName": "Bobby",
  "lastName": "Smith",
  "email": "bobbysmith@hotmail.com",
  "groups": [
    {
      "groupId": 10
    }
  ],
  "customFields": [
    {
      "fieldId": 33443,
      "value": "No"
    }
  ],
  "companies": [
    4,
    5
  ],
  "status": 2,
  "smsStatus": 2,
  "externalId" : "12345",
  "externalUrls" : [
        {
            "ref": "example1",
            "label": "Example One",
            "url": "https://example1.com"
        },
        {
            "ref": "example2",
            "label": "Example Two",
            "url": "https://example2.com"
        },
        {
            "ref": "example3",
            "label": "Example Three",
            "url": "https://example3.com"
        }
    ],
    "privacyConsent": true
}

Example Request: Updating a contact

Note : the groups will be set to only group 10, destroying the existing value

{
  "id":33884,
  "firstName":"Bobby",
  "groups":[{"groupId":10}],
  "customFields":[{"fieldId":33443,"value":"No"}],
  "companies":[4,5],
  "status": 2,
  "smsStatus": 2,
}

This call takes values for a contact, and either

  1. Updates the values for that contact (after you have provided an id in the parameters), or

  2. Adds the contact to the system (if the id parameter is missing)

The result of this call will contain the status of the result (either true or false) and the contact identifier of the updated or newly created contact.

The properties of the contact currently supported are:

  • firstName

  • lastName

  • email

  • phone

  • groups

    • This is an array of group objects with the ‘groupId’ key.

  • customFields

    • This is an array of custom field objects with ‘fieldId’ and ‘value’ keys

  • Companies

    • This is an array of companies Ids

  • status

  • smsStatus

  • externalUrls

  • privacyConsent

    • Whether or not giving privacy consent for this contact.

Returns

Property
Description

success

If the contact was successfully added or updated

id

The unique identifier for the contact

message

Message of the failure (if success was false)

Email Status

The status is the record of whether the contact has opted in to email communication.

#

Description

1

Subscribed

2

Unsubscribed

3

Bounced

5

No Marketing

Sms status

The sms status is the record of whether the contact has opted in to sms communication.

#

Description

1

Subscribed

2

Unsubscribed

3

Failed

4

No Marketing

External URL Field

An External URL field is an object with the following details.

Property
Type
Required
Description

ref

string

required

The unique reference key of the external URL

url

string

optional

The url link (https) scheme eg. https://example.com When the value is null, the external url record will be removed based on the provided reference key.

label

string

optional

The label of the URL to display.

PreviousGet Contact Note ListNextGet Contact Custom Field Definition

Last updated 5 months ago

The current status of the email susbcription in contact. The value of this field will be

The current status of the sms susbcription in contact. The value of this field will be

This is an array of External URL field objects of the contact (a maximum of 3 objects allowed). When set to null, it will remove all externalUrls from the contact.

one of the following current status
one of the following current status
ExternalUrl field