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 KEYSSANDBOX 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>