Request demo Log in

API.


API User Guide

About this guide.

This handbook gives you all the information you need to know about the sales-i API and how it works.

The sales-i API is available using securely over https. Calls to the interface must be from a valid authenticated sales-i user. The user authentication period is subject to a timeout. Generally, the API accepts GET and POST methods to perform its required actions and data returned is in XML format or JSON format.

The authentication mechanism uses an encrypted cookie on the client to maintain the session, which means the method you use to access our API should be able to behave like a standard web/http client. Most programming languages have libraries which support this kind of functionality. sales-i is Software-as-a-Service (SaaS), meaning the application goes through full regression and unit testing before any release. In the unlikely event that our software does not function as expected, we operate the following support procedures.

Table of contents.

The Basics
Authentication
Adding New Call History Notes
Export CRM Data
Export Campaign Manager Data
Contacts
Opportunties
Customers
Prospects

For help and support.

Email: support@sales-i.com

You can email us 24 hours a day – ideal for non-urgent questions.

Telephone: 847-868-8175 (US) or 0345 508 7355 (UK)

You can call our main call center number for any help or support when using our API.

The basics.

API endpoints mentioned throughout this document use the server: https://api.sales-i.com/.

When you’re ready to start developing your application please contact sales-i support and ask for a dedicated API user account to be created use with your application.

If passing any querystring parameters on any API call, please ensure that you have correctly URL encoded them. More information on URL encoding can be found here: http://www.w3schools.com/tags/ref_urlencode.asp

If your application is passing any POST body in XML, please ensure you have encoded any reserved characters with their correct XML entity references. See http://www.freeformatter.com/xml-escape.html for more information.

Authentication.

sales-i uses server side sessions to maintain authenticated user information. This means that a call to the sales-i API can only happen once successful authentication has taken place. The user will remain authenticated until the session timeout occurs.

To authenticate and to use other API functionality you should request a dedicated API user account from sales-i. Access to data stored within sales-i is subject to the restrictions set by a Power User in the sales-i control panel.

The easiest way to try out the sales-i API is with the Postman app. This will allow you to test using the API and inspect the data that is returned:

Please visit: http://www.getpostman.com/

Authentication variables do not need to be sent every time a call is made to the interface.

If you make a call to the API and the timeout period is reached, an <Exception> is thrown and you will need to handle this by re-authenticating.

Firstly, construct the XML fragment to be posted to the API to authenticate:

<AuthData>

<UserName>example-username</UserName>

<Password>example-password</Password>

<CustomerMode>false</CustomerMode>


</AuthData>

To authenticate your API users, POST this XML to the following endpoint:

Method: POST

https://api.sales-i.com/wcf/v24/xml/Auth/User

Authentication call options.

PARAMETER COMPULSORY? DESCRIPTION
Username Yes The username of your sales-i API user.
Password Yes The password of your sales-i API users.
CustomerMode No true does not return cost, profit or GP. false returns cost, profit and GP.

On successful authentication sales-i will return an XML fragment, which contains certain configuration parameters. This is a truncated version:

<ConfigObject

xmlns=”http://schemas.datacontract.org/2004/07/sales_i.wcf.Config”

xmlns:i=”http://www.w3.org/2001/XMLSchemainstance”>

<AuthToken>50FB5862-DC23-468F-B7745A52E7B039F9</AuthToken>

<AvailableClients xmlns:a=”http://schemas.datacontract.org/2004/07/Generic. BL”>…</AvailableClients>

<AvailableDrills>…</AvailableDrills>

<BranchInUse>false</BranchInUse>

<ClientImage>img/logos/clients/logo.png</ClientImage>

<ClientLocale>US</ClientLocale>

<CurrencySymbol>$</CurrencySymbol>

<CustomerMode>false</CustomerMode>

<DateDefaults>…</DateDefaults>

<FullPictureDisplayTypes/>

<FullPictureMeasurements/>

<LeakageDisplayTypes>…</LeakageDisplayTypes>

<LeakageMeasurements>…</LeakageMeasurements>

<ParentAccountInUse>true</ParentAccountInUse>

<PasswordExpired>false</PasswordExpired>

<PeriodDescriptions>…</PeriodDescriptions>

<SalesComparisonGraph>…</SalesComparisonGraph>

<SalesGapsDisplayTypes/>

<SalesGapsMeasurements>…</SalesGapsMeasurements>

<SalesRepInUse>true</SalesRepInUse>

<SnapshotInUse>true</SnapshotInUse>

<TerritoryInUse>false</TerritoryInUse>

<Top5AccountsGraph>…</Top5AccountsGraph>

<TrendsDisplayTypes/>

<TrendsMeasurements>…</TrendsMeasurements>

<UserFirstname>Natalie</UserFirstname>

<UserSurname>Davies</UserSurname>

</ConfigObject>

Dependent upon how your application needs to use the sales-i API, you may need some or all of this information. In the rest of this API, the XML fragment returned following a successful auth is referred to as the Auth Config Object. If Authentication fails, the cloud will return the <Exception/> XML fragment that will have a <Message/> node with the reported issue. For example:

  <Message i:type=”x:string”>Invalid username or password</Message>

 

Adding new call history notes.

Before you add a note to sales-i via the API you will need to process the pre-requisites. It is a good idea to familiarize yourself with adding notes through the sales-i web application and the iOS & Android apps.
The steps in brief are:
Query the API to obtain the customerId for the account you want to add the note to. Request the Note Config Object from the API, the Note Config Object contains options required by sales-i that will enable you to record a new note. Finally, collate an XML fragment and POST it to the sales-i API.

Step 1: query the API to obtain the sales-i customerId
You will be searching for the AccountNumber (not the ParentAccountNumber) or Customer Name.

Customer search call options:

PARAMETER DESCRIPTION
searchStr This is your customer account number or name.
accountType Deprecated, but please include the key without a value.
searchBy

P – prospect, C – customer or B – both

The API will return the results from the call and you will need to filter the XML to the SearchResult node, this contains your one or more results. This is a truncated version:

<SearchResult diffgr:id=”SearchResult1″ msdata:rowOrder=”0″>

<RowNumber>1</RowNumber>

<ResultCustomerID>741</ResultCustomerID>

<ResultParentAccountNumber>C00741</ResultParentAccountNumber>

<ResultAccountNumber>C00741</ResultAccountNumber>

<ResultName>CUSTOMER ABC</ResultName>

<ResultAddress>57 GREEN LANE, BIRMINGHAM, B40 4FY</ResultAddress>

<postcode>B40 4FY</postcode>

<ResultTelephone>0121 457 3333</ResultTelephone>

<ResultContactID>0</ResultContactID>

</SearchResult>

Step 2: query the API for the note configuration object for the customer/account

The Note Config Object contains the options that you will need to filter and post back the Call Note you would like to record against the Contact and Account.

Method: GET

https://api.sales-i.com/wcf/v24/xml/CRM/Notes/Configuration/?customerId={sales-iCustomerId}

Customer search call options:

PARAMETER DESCRIPTION
customerID This is the id of your customer account.

The data that is returned contains various lists, options and defaults. The easiest way to visualize this data is to use the Postman Chrome app: http://www.getpostman.com/

You can also refer to the Add/Update Note in our iOS or Android apps.

You will need to parse the results of the Note Config Object and set the defaults required in Step 3.

Note Config Object example (this is a truncated version):

<EditNoteConfig xmlns=”http://schemas.datacontract.org/2004/07/Generic.BP.CRM.Notes” xmlns:i=”http://www.w3.org/2001/XMLSchema-instance”>

<CallDurationOptions>…</CallDurationOptions>

<CallOutcomeLabel>Call outcome</CallOutcomeLabel>

<CallOutcomeOptions>…</CallOutcomeOptions>

<CallTypeLabel>Call Type</CallTypeLabel>

<CallTypeOptions>…</CallTypeOptions>

<Contacts>…</Contacts>

<DefaultFollowUpDate xmlns:a=”http://schemas.datacontract.org/2004/07/Generi c.BP.Date”>…</DefaultFollowUpDate>

<DefaultUser>200144</DefaultUser>

<NextActionLabel>Next Action</NextActionLabel>

<NextActionOptions>…</NextActionOptions>

<Users>…</Users>

</EditNoteConfig>

Step 3: build the XML fragment to send to sales-i

The XML fragment should contain the following nodes (all nodes are required but do not necessarily need to be populated – see table below):

<Note>

<NoteId>0</NoteId>

<CustomerId>741</CustomerId>

<CallType>187</CallType>

<CallOutcome>97</CallOutcome>

<NextAction>102</NextAction>

<CallDate>20130424T120200</CallDate>

<FollowUpDate/>

<CallDuration>15</CallDuration>

<AllocatedUserId>205777</AllocatedUserId>

<NotifyAllocatedUser>true</NotifyAllocatedUser>

<ContactId>87</ContactId>

<NotifyContact>false</NotifyContact>

<NoteComment>Quoted the customer please see reference 5006.</NoteComment>

</Note>

PARAMETER COMPULSORY? DESCRIPTION
NotedID Yes To add a note the NoteId should be zero, update requires a NoteId.
CallType Yes The CallType options are configured in the Record card setup within sales-i and are available in the Notes Config Object.
CallOutcome No (Please send an empty node) The CallOutcome options are configured in the Record card setup within sales-i and are available in the Notes Config Object.
NextAction No (Please send an empty node) The NextAction options are configured in the Record card setup within sales-i and are available in the Notes Config Object.
CallDate Yes Answer to query is provided. Change request is completed. Enhancement request is documented and forwarded to Product Management for prioritization.
FollowUpDate No (Please send an empty node) Set FollowUpDate if a follow-up call is required. The follow-up will then be visible in MyCalls. ISO 8601 format. For example: 20130424T120200 (YYYY MM DD T HH MM SS) Y = Year, M = Month, D = Day, T (literal) = time zone designator, H = Hour, M = Minute, S = Second.
CallDuration Yes The number of minutes to record against the call note. This must be a zero or a positive number.
AllocatedUserID Yes The ID of the user to allocate the note to and their IDs are available in the Users node of the Notes Config Object. There is also a DefaultUser node that identifies the default allocated User for the selected Account.
NotifyAllocatedUser Yes True or false. If true, sales-i will email the allocated User informing them that a new note has been assigned to them. The note details are included in the email.
ContactID Yes MyCalls notes need to be allocated to an Account Contact. The list of Contacts and their IDs are available in the Contacts node of the Notes Config Object.
NotifyContact Yes True or false If true, this will email the allocated Contact with the details of the note.
NoteComment Yes This is the note detail/text/comment. UTF-8 plain text CRLF for new line Maximum of 1024 characters.

You will need to POST the completed XML fragment to the following URL as plain text:

Method: POST
https://api.sales-i.com/wcf/v24/xml/CRM/Notes/Add/

If successful, you will receive confirmation that the record has been created – sales-i will return the saved noteId.

Export CRM data.

The sales-i API provides a method to extract data from your cube using a number of configurable parameters. This method allows you to programmatically extract CRM data including; customers, contacts, notes, opportunities and simple Variance Enquiry (previously known as “Leakage”) information from sales-i on a periodic/scheduled basis. This will allow you to keep additional business systems up to date with the latest information from sales-i.

Before attempting to use this method, please evaluate the sales-i web application CRM export component. This is a virtual application to the method here and can help visualize what can be achieved through the parameter options. Specifically, review the Advanced section which allows you to extract data greater than a specific ID from or to a date based on customer, contact, note or opportunity information. The method is quite flexible and allows you to pull data to suit your needs. If you need assistance with a specific workflow, please talk to our support team who will be able to put you in touch with our development support team who will help you to figure out your exact requirements.The export works in three steps:

1. Create the export request – Post an xml configuration fragment and get a report queue id back.
2. Check the export request – Get the status of the report in the queue given the report id to check.
3. Get the export request – Get the exported data when the report is active.

The next table shows you the parameters that you can optionally include in the posted XML fragment. Please note: some of these options have dependencies, some of which we cover on the next couple of examples but a complete list is included at the end of this section.

XML fragment parameters (true or false).

PARAMETER COMPULSORY? DESCRIPTION
IncludeCustomer No Default, always included. Includes sales-i customer ID and customer information, address, telephone number etc.
IncludeContact No Include contacts for every customer. Includes the sales-i contact ID and contact information.
IncludeOpportunities No Include opportunity information for every customer. Includes the sales-i opportunity ID.
IncludeNotes No Include notes for every customer. Includes the sales-i note ID.
IncludeLeakage No Include financial leakage information for every customer.

Let’s have a look at a few example exports:
Method is POST:
https://api.sales-i.com/wcf/v24/xml/Export/Create
If you POST the following XML to the URL method shown above, you will receive all Customer and Prospect information. Note: the C & P included with CustomerTypes.

<ExportConfig>

<CustomerTypes>C,P</CustomerTypes>

</ExportConfig>

The following will return just Customers and related Contact information:

<ExportConfig>

<CustomerTypes>C</CustomerTypes>

<IncludeContact>true</IncludeContact>

</ExportConfig>

Once we have created our import requests we need to check the queue to see if the export has been generated.

Method is GET:

https://api.sales-i.com/wcf/v24/xml/Export/Check? reportId={reportId}

When we get a status of Active back from the check:

Method is GET:

https://api.sales-i.com/wcf/v24/xml/Export/Get? reportId={reportId}

The data returned will look something like this:

<Customers>

<Customer>

<Name></Name>

<Address1></Address1>

….

<Contacts>          

<Contact>.. contact fields ..</Contact>

<Contact></Contact>

</Contacts>

<Opportunities>

<Opportunity> .. opps fields.. </Opportunity>

<Opportunity></Opportunity>

</Opportunities>

<Notes>

<Note></Note>

</Notes>

<Financial>

<R1>

<Date>1/1/2013 – 1/4/2013</Date>

<By>Profit Margin</By>

<Value>10</Value>

</R1>

<R2>

<Date>1/1/2011 – 1/4/2011</Date>

<By>Profit Margin</By>

<Value>5</Value>

</R2>

<Difference>

<By>Profit Margin</By>

<Value>5</Value>

</Difference>

</Financial>

</Customer>

<Customer>

<Contacts/>

<Opportunities/>

<Notes/>

<Financial/>

</Customer>

<Customers>

Now, let’s look at a more complicated example.

Let’s say I have written a piece of middleware that updates an internal system with notes from sales-i. All I want from the sales-i API is the last set of notes since I last queried the API. The API accepts a salesiId and idField, which will allow me to send a noteId which will return all related data including notes with a noteId greater than the noteId provided. In this instance, I can send the last noteId I have cached and just receive everything newer. This saves time and makes the data easier to parse.

So, this fragment asks the API for all Customers and Notes where the noteId is greater than 715. This allows me to update my third-party application with the latest notes. I will then cache the last noteId I receive ready for the next time my middleware calls the sales-i API.

<ExportConfig>

<CustomerTypes>C</CustomerTypes>

<IncludeNotes>true</IncludeNotes>

<salesiId>715</salesiId>

<idField>note</idField>

</ExportConfig>

The noteId is the internal sales-i ID that is returned by your customer cube. This does not relate to IDs that come from your Back Office system.

It’s now time to talk about the Export Configuration Object. The API accepts parameters that you can return to extract the correct data. The parameters are described in the Export Configuration Object.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Export/Configuration

You will receive something similar to this (this is a truncated version to demonstrate the ValueToShow element):

<ExportConfig>

<CustomerTypes>

<a:ValuePair>

<a:Key>C</a:Key>

<a:Value>Customer</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>P</a:Key>

<a:Value>Prospect</a:Value>

</a:ValuePair>

</CustomerTypes>



<ValueToShow>

<a:ValuePair>

<a:Key>SalesCost</a:Key>

<a:Value>Cost</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>ProfitMargin</a:Key>

<a:Value>Gross Profit (GP)</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>Profit</a:Key>

<a:Value>Profit (value)</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>SalesValue</a:Key>

<a:Value>Sales Value</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>Quantity</a:Key>

<a:Value>Quantity</a:Value>

</a:ValuePair>

<a:ValuePair>

<a:Key>TransactionCount</a:Key>

<a:Value>Transaction Count</a:Value>

</a:ValuePair>

</ValueToShow>

</ExportConfig>

So, if we wanted to include financial information we would need to include the ValueToShow option. For example, if we wanted the API to return Sales Value for our financial output we would set the ValueToShow to the key SalesValue.

Here is an example API XML fragment to return Customers including their respective financial information by sales value:

<ExportConfig>

<CustomerTypes>C</CustomerTypes>

<IncludeLeakage>true</IncludeLeakage>

<Range1From>2015-01-01</Range1From>

<Range1To>2015-04-01</Range1To>

<Range2From>2013-01-01</Range2From>

<Range2To>2013-04-01</Range2To>

<ValueToShow>SalesValue</ValueToShow>

</ExportConfig>

Note: we have to include dependencies of a feature, such as IncludeLeakage, the Range from and to and the ValueToShow before we see a result

So, by now you will see that you can mix and match elements and some have dependencies (further options). These dependencies are important. If they are not included, the export will run as if the main functions are switched off.

There is a restriction with the API. If you are planning on using the salesiId field or the dateField options, you will notice you can only apply these to one of the functions. For example, you cannot return all opportunities with a decision date greater than 2013-04-04 AND customers with a salesiId greater than 715. It is one or the other. If you did want more complicated result sets, you would need to extract the largest set of data and parse locally for your requirements using the middleware you use to interact with the sales-i API.

This table describes the dependencies for each function/parameter option:

PARAMETER COMPULSORY? DESCRIPTION
IncludeCustomer No salesiId and customer can be supplied as a starting point.
dateField and customer_added or customer_updated can be provided with DateFrom and DateTo.

Date format is: YYYY-MM-DD
IncludeContact No salesiId and customer can be supplied as a starting point.
dateField and customer_added or customer_updated can be provided with DateFrom and DateTo.
Date format is: YYYY-MM-DDmat is: YYYY-MM-DD
IncludeOpportunities No salesiId and opportunities can be supplied as a starting point.
dateField and opportunities_decision_date can be provided with DateFrom and DateTo.
Date format is: YYYY-MM-DD
IncludeNotes No salesiId and note can be supplied as a starting point.
dateField and one of note_added, note_updated, note_call_date or note_followup_date can be provided with DateFrom and DateTo.
Date format is: YYYY-MM-DD
IncludeLeakage No Range1 From Date Range1 To Date
Range2FromDate Range2ToDate
ValueToShow with one of SalesCost, ProfitMargin, Profit, SalesValue, Quantity and TransactionCount.
Date format is: YYYYMM-DD

Here are a few more examples, which will help you realize the functionality:

To export all customers and notes but include financial Leakage information by profit, comparing the first four months of 2015 to the first four months of 2014. Starting from noteId 1245:

<ExportConfig>

<CustomerTypes>C</CustomerTypes>

<IncludeNotes>true</IncludeNotes>

<IncludeLeakage>true</IncludeLeakage>

<Range1From>2014-01-01</Range1From>

<Range1To>2014-04-01</Range1To>

<Range2From>2015-01-01</Range2From>

<Range2To>2015-04-01</Range2To>

<ValueToShow>Profit</ValueToShow>

<salesiId>1245</salesiId>

<idField>note</idField>

</ExportConfig>

This next one is a date example. This will export all opportunities with a decision date of 7th July 2015 or more. This also includes contact associated with the customer:

<ExportConfig>

<CustomerTypes>C</CustomerTypes>

<IncludeOpportunities>true</IncludeOpportunities>

<IncludeContacts>true</IncludeContacts>

<DateField>opporunities_decision_date</DateField>

<DateFrom>2015-07-07</DateFrom>

<DateTo>2050-01-01</DateTo>

</ExportConfig>

Another date example that will export all notes added today (7th July 2015) for both customers and prospects:

<ExportConfig>

<CustomerTypes>C,P</CustomerTypes>

<IncludeNotes>true</IncludeNotes>

<DateField>note_added</DateField>

<DateFrom>2015-07-07</DateFrom>

<DateTo>2015-07-07</DateTo>

</ExportConfig>

 

Export campaign manager data.

The sales-i API provides a method to extract Campaign Manager data. The Campaign Manager in sales-i allows users to create customer and contact lists from complex analysis based on the Enquiry engine and the dynamic CRM saved search module. A Campaign must have been configured within sales-i to be able to use these API calls.

The campaign export works in a similar manner to the CRM extract and consists of the following steps:

List:

This returns a list of available Campaigns that exist for the user in sales-i.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Campaigns/Export/List

Create:

A call to generate the latest customer Campaign data. This call returns a reportID.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Campaigns/Export/ Create?campaignId={campaignId}

Check:

Checks to see if the reportId has been processed. This can be called every 60 seconds or so to see if the data is available for download. Returns a status of ACTIVE when ready to move on to the final step.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Campaigns/Export/Check? reportId={reportId}

Get:

When the Campaign check returns ACTIVE the data can be downloaded from sales-i.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Campaigns/Export/Get? reportId={reportId}

 

Contacts.

The sales-i API provides the following end-points to manage your contacts:

Get:

Returns a contact of a given id.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Contacts/{id}

Add:

Adds a new contact to sales-i.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Contacts/Add

Update:

Updates an existing contact.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Contacts/Update

Fields:

Gets a list of available fields that can be searched on. This is also a list of the fields that make up a contact.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Contacts/Fields

Search:

Provides functionality to search for contacts given a set of criteria.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Contacts/Export

This is what the search configuration objects looks like:

Content-Type = application/xml

<Search>

<Selection>

<Criteria>

<Field>{fieldname}</Field>

<Direction>{Include/Exclude}</Direction>

<Match>{Is/Contains/Range}</Match>

<Value>{value}</Value>

<Range>

<From>{value}</From>

<To>{value}</To>

</Range>

</Criteria>

</Selection>

</Search>

PARAMETER COMPULSORY? DESCRIPTION
Field Yes The field to search on.
Direction Yes Include/Exclude.
Match Yes Is/Contains/Range
Value No The value to search for.
Range No A Range selection.
From No The from range.
To No The to range.

Go to the fields end-point of an entity to get the list of available search fields.

As an example of how to use the search functionality, say I want to find all contacts with an email address, I would use the following fragment:

<Search>

<Selection>

<Criteria>

<Field>Email</Field>

<Direction>Include</Direction>

<Match>Contains</Match>

<Value>@</Value>

</Criteria>

</Selection>

</Search>

If I wanted to expand my search to get contacts with an email address that also have a preference for email communications.

<Search>

<Selection>

<Criteria>

<Field>Email</Field>

<Direction>Include</Direction>

<Match>Contains</Match>

<Value>@</Value>

</Criteria>

<Criteria>

<Field>EmailPreferences</Field>

<Direction>Include</Direction>

<Match>Is</Match>

<Value>Opt-In</Value>

</Criteria>

</Selection>

</Search>

Opportunities.

The sales-i API provides the following end-points to manage your opportunities:

Get:

Returns an opportunity of a given id.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Opportunity/{id}

Add:

Adds a new opportunity to sales-i.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Opportunity/Add

Update:

Updates an existing opportunity.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Opportunity/Update

Fields:

Gets a list of available fields that can be searched on. This is also a list of the fields that make up an opportunity .

Method: GET

https://api.sales-i.com/wcf/v24/xml/Opportunity/Fields

Search:

Provides functionality to search for opportunities given a set of criteria.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Opportunity/Export

Please see the contact example to understand how the search works.

Customers.

The sales-i API provides the following end-points to manage your customers:

Get:

Returns a customers of a given id.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Customers/{id}

Add:

Adds a new customer to sales-i.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Customers/Add

Update:

Updates an existing customer.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Customers/Update

Fields:

Gets a list of available fields that can be searched on. This is also a list of the fields that make up a customer.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Customers/Fields

Search:

Provides functionality to search for customers given a set of criteria.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Customers/Export

Please see the contact example to understand how the search works.

Prospects.

The sales-i API provides the following end-points to manage your prospects:

Get:

Returns a prospect of a given id.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Prospects/{id}

Add:

Adds a new prospect to sales-i.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Prospects/Add

Update:

Updates an existing prospect.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Prospects/Update

Fields:

Gets a list of available fields that can be searched on. This is also a list of the fields that make up a prospect.

Method: GET

https://api.sales-i.com/wcf/v24/xml/Prospects/Fields

Search:

Provides functionality to search for prospects given a set of criteria.

Method: POST

https://api.sales-i.com/wcf/v24/xml/Prospects/Export

Please see the contact example to understand how the search works.

Please get in touch if you need any further examples.


Last updated: Tuesday December 4 2018

“Research shows that an average salesperson costs companies $450 per day to employ. For a few dollars more (as sales-i costs just a few dollars per user per day) sales-i provides a profitable focus for sales activities so that sales time is not wasted.”

Gerry Brown Senior Analyst at Bloor

Related Content

To find out more book your online demo here.

Book demo

Contact us

Close