Add Contact

HYPER DRIVE PRO CRM - API REFERENCE
CONTACT FUNCTIONS / ADDCONTACT
For more information on our products and services please visit:
http://HyperDriveCRM.com  | http://RiderRewards.com | http://MoreThanRewards.com

Need help integrating with our products and services?
Give us a call at 414-326-4100 or email Support@MoreThanRewards.com/
Ask to speak to Jason Brethorst regarding API partnerships and integrations.  

WE HAVE AN API FOR JUST ABOUT ANYTHING
All More Than Rewards products are built using REST API architecture, therefore you'll be able to do ANYTHING within our products and services a REST call, you just need to know which one to use.  If there is something that your trying to do but are not clear just give Jason a call via his direct number at 414-467-6624 or speak to your account manager to learn more.

TEST SANDBOX API KEYS

SANDBOX ACCOUNT ID :  2175
SANDBOX API KEY :  1E7F03ACAEDE1CAD0C567DC14319821C



AddContact

This API end point will add a contact to the Hyper Drive Pro CRM system by More Than Rewards.   For more information on HyperDrive CRM.    Adds a contact to the database via an https form post.  A successful post will return a success message and the contactid for the new contact.  

Note About Duplicates:
This API will add a contact to the Hyper Drive Pro CRM System, which could result in a duplicate contact being added if the contact is already in the database.  To prevent duplicate contacts we recommend looking up the contact first via "GetContact()" API then if a contact record exist use the UpdateContact()" API instead of the  AddContact()" API below.   If you do find a duplicate you need to make sure you DO NOT change the assigned Team Member, sales person, or deal stage, if you do it could cause contacts to be reassigned to the incorrect sales person.

Post Url

Field
Max Length*
Required
Notes
response_type

No
Default results will be returned in XML. Set this field value to json to return results in JSON format  (as of Jan 1st 2018 we are disconnecting XML support, and moving to 100% json support instead, please use json when possible)
accountid

Yes
Must be numeric. Account ID for this account.
apikey

Yes
API Key for this account. Found in Settings
teammemberid

No
The team member ID is the employee of the dealership this contact / deals belong to.   If you do not know this information you can use 0 and the contact will be assigned to the account owner.    This Must be numeric. Team Member ID.   If a team member is selected that is not part of the stores database, the new contact will be put into the database that the user shares and assigned team member ID 0.  If you wish to assign a contact to a particular employee you can lookup their ID before the submit, GetTeamMembers()
firstname
50
Yes
Database requires both first and last name
lastname
50
Yes
Database requires both first and last name
birthday
10
No
Birthday year is optional. Use only formats MM/DD or MM/DD/YYYY. Zero pad leading digits, so month and day are always 2 digits. January 5th is 01/05.   If the birthday is not in this exact format the update will fail, therefore it's important you clean up your data to match this format before pushing a birthday into the system.
otherfirstname
50
No

otherlastname
50
No

otherbirthday
10
No
Birthday year is optional. Use only formats MM/DD or MM/DD/YYYY. Zero pad leading digits, so month and day are always 2 digits. January 5th is 01/05.  If the birthday is not in this exact format the update will fail, therefore it's important you clean up your data to match this format before pushing a birthday into the system.
company
50
No

address
50
No

city
50
No

state
20
No
Recommended that this be the 2 digit state code for US addresses
postalcode
20
No

phone1
20
No
Will automatically be formatted to (xxx) xxx-xxxx
phone1note
20
No
Recommended that description is used if known (work, home, mobile, etc…)
phone2
20
No
Will automatically be formatted to (xxx) xxx-xxxx
phone2note
20
No

phone3
20
No
Will automatically be formatted to (xxx) xxx-xxxx
phone3note
20
No

phone4
20
No
Will automatically be formatted to (xxx) xxx-xxxx
phone4note
20
No

fax
20
No
Will automatically be formatted to (xxx) xxx-xxxx
email
75
No

otheremail
75
No

custom1
50
No
Please use this field for the "Rewards Number" only.
custom2
50
No
Please use this field for the "Deal - Value" only.
custom3
50
No
Please use this field for the "Deal Inventory - Updated" only.
custom4
50
No
Please use this field for the "Trade - Value" only.
custom5
50
No
Please use this field for the "Trade - VIN" only.
custom6
50
No
Please use this field for the "Trade - Make" only.
custom7
50
No
Please use this field for the "Trade - Model" only.
custom8
50
No
Please use this field for the "Trade - Year" only.
custom9
50
No
Please use this field for the "Trade - Color" only.
custom10
50
No
Please use this field for the "Trade - Odometer" only.
custom11
50
No
Please use this field for the "Deal - Stock Number" only.
custom12
50
No
Please use this field for the "Deal - VIN" only.
custom13
50
No
Please use this field for the "Deal - VIN" only.
custom14
50
No
Please use this field for the "Deal - Model" only.
custom15
50
No
Please use this field for the "Deal - Year" only.
custom16
50
No
Please use this field for the "Deal - Color" only.
custom17
50
No
Please use this field for the "Deal - Odometer" only.
custom18
50
No
Please use this field for the "Deal - New or Used" only.
custom19
50
No
Please use this field for the "Deal - Create Date" only.
custom20
50
No
Please use this field for the "Deal - Close Date" only.
memo
50
No
Brief memo for contact. This is not a note, but a brief memo that shows up on the contact’s page. Recommended less than 100 characters.
category
50
No
Must match the name of an existing Category exactly and it's case sensitive, it must be one of the following Deal Stages (Any mismatch will result in the category not being assigned) :  

0 - New Lead Entry
1 - Greet
2 - Probe
3 - Identify Machine
4 - Presentation
5 - Sit Down
6  - Write Up
7 - Deposit
8 - F&I
9 - Delivered


category2
50
No
Must match the name of an existing Category2 exactly (case sensitive). Any mismatch will result in the category2 not being assigned.

ACTIVE
BACK BURNER
HOT
LOST
WON


* By default we recommend using "ACTIVE" - if this is a new lead.

source
50
No
Must match the name of an existing Source exactly (case sensitive). Any mismatch will result in the source not being assigned.

- Unassigned

* This field is used as the deal assignment source.  We recommend you use the string "- Unassigned" to unassigned a contact from a deal, however you can select team members and use their first and last name if you wish to assign this contact to a particular deal.    The format is  "First Name" "SPACE" "Last Name" -  Example:   "John Doe"
othersystemid
32
No

Do Not Update - This is the customer ID found within 3rd party databases such as Dealer Systems, Websites or other vendor systems.  
addednote

No
When a contact is added via the API, a note is added to the contact record. The default is “Contact Added via API”. You can override the default note with this field.

Note About Field Lengths
* An error will not result if Max Length is exceeded, data will be trimmed to this length.  

Note Our HTTP Response Headers 
We realize some developers are used to http header codes returning pass/fail values.   Our http headers will always return a pass value.  You must look at the actual body response to determine pass/fail not the header.   Therefore we recommend using the actual response messages below to determine if your repose was received.

Triggering Additional - Automatic Follow Up Actions , Emails , Text Marketing When Adding a Contact
You can also trigger an "Action Macro" after a deal is inserted, for example, you want to schedule a series of follow-ups after a deal, you'll insert the contact, then call the RunAction("Lead") macro which will execute the "Lead Macro".  You can created unlimited "macros" which various "follow-up rules" tied to them.   In this example it's called "Lead" and it may do stuff like, add a note, set appointment, schedule a series of follow-ups, send automatic emails, text ext..    this is all done via the macros.  So if you want to to have some kind of "action" happen after a contact is added you'll want to also pass the correct macro ID so the correct actions can be applied.   For more information on action please refer to the API Documentation.

Sample Results

Success Message

<?xml version="1.0"?>
<results>
 <message>Success</message>
 <contactid>15631</contactid>
</results>

Sample Failure Message

<?xml version="1.0"?>
<results>
 <error>Authentication failed</error>
</results>