Document
API | Description |
---|---|
POST api/Document/Add |
Add one document to an activity by posting json document model object, for this site, customer and activity. Required form data: CustomerId or CustomerRefCode, ActivityId |
GET api/Document?siteOwnerId={siteOwnerId}&customerId={customerId}&documentId={documentId} |
Fetch the document for this customer and site. Required: SiteOwnerId, CustomerId, DocumentId. |
GET api/Document?siteOwnerId={siteOwnerId}&customerId={customerId}&customerRefCode={customerRefCode}&filterType={filterType} |
Fetch the available document list information for this customer and site. Required: SiteOwnerId, CustomerId OR CustomerRefCode. |
POST api/Document |
Add documents to an activity by posting multipart/form-data for this site, customer and activity. Required form data: SiteOwnerId, CustomerId or CustomerRefCode, ActivityId |
Customer
API | Description |
---|---|
GET api/Customer/Search/{searchString} |
Search active customers by name via search string |
GET api/Customer/ContactEmail?siteOwnerId={siteOwnerId}&contactEmail={contactEmail} |
Get list of Customers by SiteOwnerId and contact email address |
PUT api/Customer |
Update a customer entry in Exsalerate, or if it doesn't exist create customer. This is an all or nothing update, meaning you can't do partial updates (patch). If you do not provide a property it will be set to empty. Required: CustomerName, AssignedToEmail. |
POST api/Customer |
Create a new customer for a specific site owner. Required: CustomerName, AssignedToEmail. Returns: CustomerId |
GET api/Customer?siteOwnerId={siteOwnerId} |
Get total Customer count for a SiteOwnerId |
GET api/Customer?siteOwnerId={siteOwnerId}&refCode={refCode} |
Get Customer by SiteOwnerId and Reference Code |
GET api/Customer?siteOwnerId={siteOwnerId}&page={page}&modifiedSince={modifiedSince}&phase={phase} |
Get a Paged list of active companies by siteownerid (100 at time). Page starts at 0. Optionally provide a modified date to filter by only those modified since. Optionally provide a phase to filter by matching phase name. |
SiteOwner
API | Description |
---|---|
POST api/SiteOwner |
Create a new Site Owner in Exsalerate. Required: CompanyName, Phone, Country. |
GET api/SiteOwner |
Returns Site Owner Information. |
Turnover
API | Description |
---|---|
PUT api/Turnover |
Update turnover entries in Exsalerate - by LinkId This is an all or nothing update, meaning you can't do partial updates (patch). If you do not provide a property it will be set to empty. Note: Optional GrossMarginValue/GrossMarginPercent - only provide one or other not both. Exsalerate will calculate the other field. Required: SiteOwnerId, LinkId, Year, Month, Amount |
CustomerAddress
API | Description |
---|---|
GET api/CustomerAddress?siteOwnerId={siteOwnerId}&customerId={customerId} |
Get the primary address for this customer. Required: SiteOwnerId, CustomerId |
PUT api/CustomerAddress |
Update the primary address for a customer. This is an all or nothing update, meaning you can't do partial updates (patch). If you do not provide a property it will be set to empty. Required: SiteOwnerId, CustomerId or RefCode |
POST api/CustomerAddress |
Create a new Customer Address. Required: SiteOwnerId, CustomerId or RefCode |
Contact
API | Description |
---|---|
GET api/Contact?siteOwnerId={siteOwnerId}&customerId={customerId} |
List all Contacts for a customer. Required: SiteOwnerId, CustomerId. |
POST api/Contact |
Create a new Contact for a customer. Required: SiteOwnerId, CustomerId, FirstName, LastName. |
PUT api/Contact |
Update a contact entry in Exsalerate, or if it doesn't exist create contact. This is an all or nothing update, meaning you can't do partial updates (patch). If you do not provide a property it will be set to empty. Contact is located by either refcode or name. Customer is located by either CustomerID or CustomerRefCode. Required: SiteOwnerId, CustomerId or CustomerRefCode, FirstName, LastName. |
SiteUser
API | Description |
---|---|
POST api/SiteUser |
Create a new Site User in Exsalerate. The new user will be emailed welcome instructions to initiate their password. required: All properties. |
GET api/SiteUser?userId={userId}&userName={userName} |
Validate this user is an active site user in Exsalerate |
Activity
API | Description |
---|---|
GET api/Activity?siteOwnerId={siteOwnerId}&startDate={startDate}&endDate={endDate}&salesRep={salesRep}&accountManager={accountManager}&customerRefCode={customerRefCode} |
Fetch Activity Detail Report data |
GET api/Activity?siteOwnerId={siteOwnerId} |
Fetch Activity Types |
PUT api/Activity?siteOwnerId={siteOwnerId}&activityId={activityId}¬es={notes} |
Append notes to an existing activity |
POST api/Activity |
Create a new activity for a specific customer Required: SiteOwnerId, Subject, ActivityType. Returns: ActivityId |
Calendar
API | Description |
---|---|
GET api/Calendar?siteOwnerId={siteOwnerId} |
Query if Add In has calendar control |
PUT api/Calendar?siteOwnerId={siteOwnerId}&hasControl={hasControl} |
Set Add In calendar control |
POST api/Calendar |
Create a new calendar activity for a specific customer Required: SiteOwnerId, Subject, ActivityType, ActivityDateTime, RecurrenceType Agenda - Notes for everyone, Description - Internal notes for your team only, RecurrenceType: 0 - none, 1 - Daily, 2 - Weekly, 3 - Monthly RecurrenceRepeats: repeat x times , RecurrenceInterval: every x recurrence type. Eg: Every 2 Days repeats 3 times Returns: ActivityId |
DELETE api/Calendar?siteOwnerId={siteOwnerId}&uniqueId={uniqueId}&activityDateTime={activityDateTime}&allInstances={allInstances} |
Delete a calendar activity. Optionally, all recurring instances. |
PUT api/Calendar |
Update an existing calendar activity via the unique id This is an all or nothing update, meaning you can't do partial updates (patch). If you do not provide a property it will be set to empty. By default only this instance (by date/time and unique ID) is modified. To also modify all subsequent recurrences, set the AllInstances to true. To modify the date/time set the ActivityModifiedDateTime parameter. |