SharpSpring has a distinct API organization. This article will detail the parts of the SharpSpring API.
|

Additional API Information
This article details specific schema content about SharpSpring's API. However, given the size and scope of the API, information is broken up and is contained in different articles. Each article focuses on a specific function of SharpSpring's API. Additional API information can be found in the following articles:
Schema
The overall organization of the SharpSpring API is as follows:
Table |
Module |
||
Account | Core | ||
ActiveListMember | Core | ||
Campaign | Core | ||
Client | Core | ||
CreateResult | Core | ||
DealStage | Core | ||
DeleteResult | Core | ||
Core | |||
EmailEvent | Core | ||
EmailJob | Core | ||
EmailListing | Core | ||
EmailSend | Core | ||
EmailSendEvent | Core | ||
Event | Core | ||
Field | Core | ||
FormEventHistory | Core | ||
Lead | Core | ||
List | Core | ||
ListMember | Core | ||
ListMembership | Core | ||
ListTag | Core | ||
Opportunity | Core | ||
OpportunityLead | Core | ||
RemovedListMember | Core | ||
ScheduleSend | Core | ||
ScheduleSendQueue | Core | ||
UnsubscribeCategory | Core | ||
UpdateResult | Core | ||
UserProfile | Core |
Core Module
Core SharpSpring CRM API Functionality.
Account
An account is an organization or person that is associated with an opportunity.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
ownerID | int | 18 | Optional | |
accountName | varchar | 255 | Required | |
industry | varchar | 255 | Optional | |
phone | varchar | 255 | Optional | |
annualRevenue | int | 18 | Optional | |
numberOfEmployees | int | 18 | Optional | |
website | varchar | 255 | Optional | |
yearStarted | int | 18 | Optional | |
billingCity | varchar | 255 | Optional | |
billingCountry | varchar | 255 | Optional | |
billingPostalCode | varchar | 50 | Optional | |
billingState | varchar | 255 | Optional | |
billingStreetAddress | varchar | 255 | Optional | |
shippingCity | varchar | 255 | Optional | |
shippingCountry | varchar | 255 | Optional | |
shippingPostalCode | varchar | 50 | Optional | |
shippingState | varchar | 255 | Optional | |
shippingStreetAddress | varchar | 255 | Optional |
ActiveListMember
Contains lead information of active members belonging to a particular list.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
listID | int | 18 | Optional | |
companyName | varchar | 50 | Optional | |
leadID | int | 18 | Optional | |
firstName | varchar | 50 | Optional | |
lastName | varchar | 50 | Optional | |
emailAddress | varchar | 150 | Optional |
Campaign
A campaign is a marketing project that is tracked in SharpSpring.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
campaignName | varchar | 255 | Required | |
campaignType | varchar | 255 | Optional | |
campaignAlias | varchar | 150 | Optional | |
campaignOrigin | varchar | 255 | Optional | |
qty | int | 18 | Optional | |
price | double | 18 | Optional | |
goal | double | 18 | Optional | |
otherCosts | double | 18 | Optional | |
startDate | date | Optional | ||
endDate | date | Optional | ||
isActive | tinyint | 1 | Optional |
Client
Contains information on agency instances managed by the partner instance.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
companyName | varchar | 255 | Optional | |
streetAddress | varchar | 255 | Optional | |
zipCode | int | 18 | Optional | |
country | varchar | 50 | Optional | |
state | varchar | 50 | Optional | |
city | varchar | 50 | Optional |
CreateResult
Contains information about the success of a create operation, an array of any errors associated with the operation, and the ID of the newly created record.
|
Name |
Type | Length | Is Required |
success | tinyint | 1 | Optional | |
error | hash | 255 | Optional | |
id | int | 18 | Optional |
DealStage
A deal stage is a custom state for your opportunity pipeline. As opportunities progress, the deal stage is changed until the opportunity is finally won or lost.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
dealStageName | varchar | 255 | Required | |
description | varchar | 255 | Optional | |
defaultProbability | double | 18 | Optional | |
weight | int | 18 | Optional | |
isEditable | tinyint | 1 | Optional |
DeleteResult
Contains information about the success of a delete operation, and an array of any errors associated with the operation.
|
Name |
Type | Length | Is Required |
success | tinyint | 1 | Optional | |
error | hash | 255 | Optional |
Email
HTML emails created in SharpSpring.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
html | text | Required | ||
emailName | varchar | 255 | Required | |
subject | varchar | 255 | Required | |
fromName | varchar | 255 | Required | |
fromEmail | varchar | 255 | Required | |
replyTo | varchar | 255 | Optional | |
unsubCategory | int | 18 | Optional | |
contactManager | tinyint | 1 | Optional | |
repeatable | tinyint | 1 | Optional | |
fromLeadOwner | tinyint | 1 | Optional |
EmailEvent
Contains information regarding particular lead's actions with particular emails sent in an email job.
|
Name |
Type | Length | Is Required |
leadID | int | 18 | Optional | |
emailID | int | 18 | Optional | |
emailJobID | int | 18 | Optional | |
createDate | timestamp | 255 | Optional | |
emailAddress | varchar | 150 | Optional |
EmailJob
Associates data of a given jobID with emailIDs and recipientIDs.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
emailID | int | 18 | Optional | |
isList | tinyint | 1 | Optional | |
isActive | tinyint | 1 | Optional | |
recipientID | int | 18 | Optional | |
sendCount | int | 18 | Optional | |
confirmedSend | tinyint | 1 | Optional | |
allowDuplicates | tinyint | 1 | Optional | |
createTimestamp | timestamp | 255 | Optional |
EmailListing
Contains information about a group of emails, including the ID, HTML content, subject line, and thumbnail image.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
createTimestamp | timestamp | 255 | Optional | |
title | varchar | 255 | Optional | |
subject | varchar | 255 | Optional | |
thumbnail | varchar | 255 | Optional |
EmailSend
Contains data about particular email jobs, such as opens, clicks, and unsubscribe metrics.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
emailID | int | 18 | Optional | |
workflowID | int | 18 | Optional | |
sendCount | int | 50 | Optional | |
statistics | hash | 255 | Optional | |
domains | hash | 255 | Optional | |
numUnsubscribeReasons | array | 50 | Optional | |
uniqueOpens | int | 50 | Optional | |
uniqueClicks | int | 50 | Optional |
EmailSendEvent
Contains information about actions a lead took with an email job.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
contactID | int | 18 | Optional | |
type | varchar | 50 | Optional |
Event
Contains information related to SharpSpring user events, similar to the Life of the Lead.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
leadID | int | 18 | Required | |
eventName | varchar | 255 | Required | |
whatID | int | 18 | Optional | |
whatType | varchar | 255 | Optional | |
eventData | text | 255 | Optional | |
eventSource | text | 255 | Optional | |
createTimeStamp | timestamp | 255 | Required |
Field
Contains metadata for a SharpSpring field. This includes both lead and opportunity fields. The systemName is a key that can be specified in any POST to create or update an object.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
relationship | varchar | 255 | Required | |
systemName | varchar | 255 | Optional | |
label | varchar | 255 | Required | |
source | varchar | 255 | Optional | |
dataType | varchar | 255 | Required | |
dataLength | int | 18 | Required | |
isRequired | tinyint | 1 | Required | |
isCustom | tinyint | 1 | Required | |
isActive | tinyint | 1 | Required | |
isAvailableInContactManager | tinyint | 1 | Required | |
isEditableInContactManager | tinyint | 1 | Required | |
isAvailableInForms | tinyint | 1 | Required |
FormEventHistory
Ties emailAddresses to trackingIDs. It is useful for de-duping contacts in the CRM.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
trackingID | varchar | 50 | Optional | |
emailAddress | varchar | 255 | Optional | |
createTimestamp | timestamp | 255 | Optional |
Lead
A lead is a prospect who is possibly interested in your product. As a lead progresses through your pipeline, their status changes from unqualified to qualified. A lead can be converted into a contact, opportunity, or account.
If you wish to update custom fields for a lead, specify the custom field's systemName as the key in your lead object. In order to get a list of system names, first retrieve members of the Field table.
|
Name |
Type | Length | Is Required |
id | bigint | 20 | Optional | |
accountID | bigint | 20 | Optional | |
ownerID | bigint | 20 | Optional | |
campaignID | bigint | 20 | Optional | |
leadStatus | picklist | Optional | ||
leadScore | smallint | 6 | Optional | |
leadScoreWeighted | smaillint | 6 | Optional | |
persona | string | 128 | Optional | |
active | tinyint | 1 | Optional | |
firstName | varchar | 50 | Optional | |
lastName | varchar | 50 | Optional | |
emailAddress | varchar | 150 | Required | |
companyName | varchar | 100 | Optional | |
title | varchar | 255 | Optional | |
street | varchar | 255 | Optional | |
city | varchar | 255 | Optional | |
country | varchar | 255 | Optional | |
state | varchar | 50 | Optional | |
zipcode | varchar | 50 | Optional | |
website | varchar | 255 | Optional | |
phoneNumber | varchar | 255 | Optional | |
trackingID | varchar | 255 | Optional | |
officePhoneNumber | varchar | 255 | Optional | |
phoneNumberExtension | varchar | 255 | Optional | |
mobilePhoneNumber | varchar | 255 | Optional | |
faxNumber | varchar | 255 | Optional | |
description | text | Optional | ||
industry | varchar | 255 | Optional | |
isUnsubscribed | tinyint | 1 | Optional | |
updateTimestamp | timestamp | Optional |
List
A segmented audience of leads in SharpSpring.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
name | varchar | 255 | Optional | |
memberCount | int | 18 | Optional | |
removedCount | int | 18 | Optional | |
createTimestamp | timestamp | 255 | Optional | |
description | varchar | 255 | Optional |
ListMember
A mapping table that corresponds leads in SharpSpring to the list they are members of.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
listID | int | 18 | Optional | |
memberID | int | 18 | Optional | |
isRemoved | tinyint | 1 | Optional |
ListMembership
Shows by ID all of the lists a lead is a member of, as well as when they were added to the list.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
name | varchar | 255 | Optional | |
status | varchar | 50 | Optional | |
createTimestamp | timestamp | 255 | Optional |
ListTag
A table of all list tags in an instance of SharpSpring. List tags are used to group similar lists together for aggregate list sends, automation, and reporting.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
label | varchar | 50 | Optional | |
objectType | varchar | 50 | Optional |
Opportunity
An opportunity represents a potential deal that has an expected value. An opportunity can be associated with a lead or account, as well as a campaign.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
ownerID | int | 18 | Required | |
dealStageID | int | 18 | Required | |
accountID | int | 18 | Optional | |
campaignID | int | 18 | Optional | |
opportunityName | varchar | 255 | Required | |
probability | double | 18 | Optional | |
amount | double | 18 | Optional | |
isClosed | tinyint | 1 | Optional | |
isWon | tinyint | Optional | ||
isActive | tinyint | 1 | Optional | |
closeDate | timestamp | 255 | Required | |
originatingLeadID | int | 18 | Optional | |
primaryLeadID | int | 18 | Optional |
OpportunityLead
A mapping table that represents an association between an opportunity and lead. Each opportunity in SharpSpring can consist of multiple leads.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
opportunityID | int | 18 | Required | |
leadID | int | 18 | Required |
RemovedListMember
A table containing information on leads removed from a particular list.
|
Name |
Type | Length | Is Required |
listMemberID | int | 18 | Optional | |
listID | int | 18 | Optional | |
isRemoved | tinyint | 1 | Optional | |
isUnsubscribed | tinyint | 1 | Optional | |
hardBounced | tinyint | 1 | Optional | |
leadID | int | 18 | Optional | |
firstName | varchar | 50 | Optional | |
lastName | varchar | 50 | Optional | |
emailAddress | varchar | 150 | Optional |
ScheduleSend
An email send that is scheduled to be performed in SharpSpring. A listID or listTagID must be specified. The send must either be scheduled to send immediately, or a date/time must be provided.
|
Name |
Type | Length | Is Required |
emailID | int | 18 | Required | |
listID | int | 18 | Required | |
listTagID | int | 18 | Required | |
immediate | tinyint | 1 | Optional | |
date | date | 255 | Optional | |
hours | int | 18 | Optional | |
minutes | int | 18 | Optional | |
meridiem | varchar | 255 | Optional | |
sendDuplicate | tinyint | 1 | Optional |
ScheduleSendQueue
Contains information about email jobs sending in the Schedule Events queue.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
active | tinyint | 1 | Optional | |
fromemail | varchar | 150 | Optional | |
fromname | varchar | 50 | Optional | |
senddate | timestamp | 255 | Optional | |
startdate | timestamp | 255 | Optional | |
subject | varchar | 150 | Optional |
UnsubscribeCategory
Consists of the different email categorizations that SharpSpring users can label emails with, and also the categories that recipients can choose to unsubscribe from.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
companyProfileID | int | 18 | Optional | |
label | varchar | 50 | Optional |
UpdateResult
Contains information about the success of an update operation, and also an array of any errors associated with the operation.
|
Name |
Type | Length | Is Required |
success | tinyint | 1 | Optional | |
error | hash | 255 | Optional |
UserProfile
Consists of SharpSpring user accounts. This ID can be used in the lead owner field in the lead table, as well as in the opportunity table.
|
Name |
Type | Length | Is Required |
id | int | 18 | Optional | |
firstName | varchar | 50 | Required | |
lastName | varchar | 50 | Required | |
displayName | varchar | 100 | Required | |
emailAddress | varchar | 100 | Required | |
isActive | tinyint | 1 | Required | |
isReseller | tinyint | 1 | Optional | |
userTimezone | varchar | 255 | Optional | |
phone | varchar | 255 | Optional |