Product
Product API includes operations to get pricing and inventory in real time
API | Description |
---|---|
POST product/pricing?customerNumber={customerNumber} |
Product pricing returns SPA adjusted customer pricing, MSRP, dealer authorized flag, available and on order quantities. SPA information includes flag indicating pricing is SPA adjusted, SPA description, flag indicating there is a SPA restriction, SPA restriction description. SPA restrictions can include expiration date, min/max quantities. |
POST product/availability?customerNumber={customerNumber} |
Product availability returns quantity available given a list of warehouse numbers and item numbers |
GET product/search?customerNumber={customerNumber}&itemNumber={itemNumber}&partNumberType={partNumberType}&manufacturer={manufacturer}&catalogName={catalogName}&categoryPath={categoryPath}&includeObsolete={includeObsolete}&searchText={searchText}&useAndOperator={useAndOperator}®ion={region}&page={page}&pageSize={pageSize} |
Product search allows for search for products by item number, manufacturer, general search text against descriptions |
GET product/detail?customerNumber={customerNumber}&itemNumber={itemNumber}&partNumberType={partNumberType}®ion={region} |
Get detail about a product |
CustomConfig
Get list of custom configurations
API | Description |
---|---|
GET customconfig/list?customerNumber={customerNumber} |
Get list of custom configurations |
Address
Provides an api to handle operations on lists of addresses Addresses are stored in a collection key'd by a "CollectionKey" which is a string defined by the calling application.
Rma
Allow for creation of RMAs
API | Description |
---|---|
POST rma?customerNumber={customerNumber} |
Create RMA |
VendorOrder
API | Description |
---|---|
GET vendororder/subscription/{subscriptionId} |
Get vendor usage by invoice |
Spa
Allow for creation of SPA agreements
API | Description |
---|---|
POST spa |
Create SPA agreement |
GET spa/summary?customerNumber={customerNumber}&salesOrg={salesOrg}&dealId={dealId}&endUser={endUser}&mfgCode={mfgCode}&validOn={validOn}&controlNumber={controlNumber}&description={description}&agreementTypes={agreementTypes} |
SPA summary |
POST spa/detail |
Get agreement detail by agreement number |
Invoice
Invoice API allows your application to interface with ScanSource backend ERP system in real time Includes operations to get invoice summary and detail
API | Description |
---|---|
GET invoice/summary/{customerNumber}?page={page}&pageSize={pageSize}&salesOrderNumber={salesOrderNumber}&invoiceNumber={invoiceNumber}&poNumber={poNumber}&fromDate={fromDate}&toDate={toDate} |
Get Invoice Summary allows customers to get a paged list of invoices. Search parameters can be specified to search by serial numbers and mac addresses within a given date range |
GET invoice/list/{customerNumber}?page={page}&pageSize={pageSize}&salesOrderNumber={salesOrderNumber}&invoiceNumber={invoiceNumber}&poNumber={poNumber}&fromDate={fromDate}&toDate={toDate} |
Get Invoice List allows customers to get a paged list of invoices with details. |
GET invoice/detail/{customerNumber}/{invoiceNumber}?excludeSerialTracking={excludeSerialTracking} |
Invoice Detail - returns details about an invoice including serial and tracking numbers |
GET invoice/pdf/{customerNumber}/{invoiceNumber} |
Get PDF of invoice |
SystemCentral
System Central API allows you to search for System Central logs and pull summary information
API | Description |
---|---|
GET systemcentral/summary/{customerNumber}?page={page}&pageSize={pageSize}&logNumber={logNumber}&poNumber={poNumber}&status={status}&fromDate={fromDate}&toDate={toDate} |
Get Summary allows customers to get a paged list of System Central logs. Search parameters can be specified to search by log number, po number, statuses within a given date range |
Tracking
Allow for creation of SPA agreements
Cart
Provides an api to handle the back-end for a single or multiple cart per user shopping cart system, as well as optionally providing the back-end for the checkout process. The carts are stored in a collection for each user key'd by a "cartCollectionKey" which is a string defined by the calling application. Each cart collection has a current cart. When a new cart is created, it becomes the current cart.There are methods to switch the current cart to another cart in the collection.There are methods which operate on the current cart, and also many equivalent methods that can work on any cart in the collection based on the cartID. CartID is not necessary on methods which operate on the collection's current cart.
API | Description |
---|---|
GET cart/{cartCollectionKey}?cartId={cartId} |
Returns current cart for the given cartCollectionKey optional id returns cart specified in cart collection |
GET cart/exists/{cartCollectionKey} |
Determines if cart collection exists and contains carts |
POST cart/{cartCollectionKey}?currentCart={currentCart} |
Create new cart in cart collection, optionally set as current cart Creates new cart collection if one does not exist |
PUT cart/{cartCollectionKey}?updateCartItems={updateCartItems} |
Update cart in cart collection |
POST cart/copy/{cartCollectionKey}/{cartId}?currentCart={currentCart} |
Copy existing cart to new cart Optionally set new cart as current cart |
DELETE cart/{cartCollectionKey}?cartId={cartId} |
Delete current cart or specific cart |
GET cart/list/{cartCollectionKey}?name={name} |
Returns an array of carts contained by the collection matching the received "cartCollectionKey". This method can be used for client applications to display a list of carts for the user to select as their current cart for systems which allow multiple carts per user. |
POST cart/item/{cartCollectionKey}?cartId={cartId} |
Add cart item to current cart or specified cartId |
PUT cart/item/{cartCollectionKey}/{cartId} |
Update cart item |
DELETE cart/item/{cartCollectionKey}/{itemId}?cartId={cartId} |
Delete current cart item or specific cart item |
DELETE cart/clear/{cartCollectionKey} |
Delete all carts in cart collection |
GET cart/hascurrent/{cartCollectionKey} |
Indicates if cart collection has current cart |
PUT cart/switch/{cartCollectionKey}/{cartId} |
For client applications which allow multiple carts per user, provides a way to switch what is considered the user's current cart to the cart matching the given cartID. |
POST cart/move/{sourceCollectionKey}/{destinationCollectionKey}/{cartId} |
Moves a cart from one collection to another. This could be used by a caller for many purposes such as providing a way to move a cart from one user to another, or to provide the server-side implementation of an approval queue by creating a collectionKey for the queue, and moving the cart to the queue collection upon submission. |
POST cart/checkoutinfo/{cartCollectionKey}?cartId={cartId} |
Add or update checkout info to current cart or cart specified by cartId |
GET cart/checkoutinfo/{cartCollectionKey}?cartId={cartId} |
Get checkout info from current cart or specified cart by cartId |
CiscoDart
Allow for creation of SPA agreements
API | Description |
---|---|
GET ciscodart/summary?customerNumber={customerNumber} |
Cisco Dart summary |
GET ciscodart/detail?dealId={dealId} |
Cisco Dart detail |
SalesOrder
Sales Order API allows your application to interface with ScanSource backend ERP system in real time Includes operations to create orders, get available shipping options with freight amounts, get tracking info, get order detail and cancel orders
WebHook
WebHooks - subscribe to receiving callbacks when specific events fire
API | Description |
---|---|
GET webhooks |
Returns list of webhooks currently subscribed to |
POST webhooks |
Subscribe to webhook to start receiving event notifications |
DELETE webhooks/{Id} |
Delete a webhook |
POST api/WebHook |
No documentation available. |
VendorQuote
API | Description |
---|---|
GET vendorquote/{vendor}/{quoteNumber} |
Get vendor quote |
GET vendorquote/list/{vendor}?dealId={dealId}&dealName={dealName}"eName={quoteName}&status={status}&fromDate={fromDate}&toDate={toDate} |
Get list of quotes |
Customer
Customer api is used to get customer credit information, and payers
API | Description |
---|---|
GET customer/creditdata/{customerNumber}/{region} |
Returns customer status, revenue, credit limit, for a given customer |
GET customer/payers/{customerNumber}/{businessUnit} |
Returns list of payers for a given customer |
GET customer/{customerNumber} |
GET customer, Validates customer exists by customerNumber and returns name |
PartnerProfile
Get list of custom configurations
API | Description |
---|---|
GET partnerprofile?APIKey={APIKey}&developerEmail={developerEmail} |
Get partners profile |
GET partnerprofile/validate?developerEmail={developerEmail}&customerNumber={customerNumber}&url={url} |
Determines if partner profile is valid for specific api / resource |
VendorUsage
API | Description |
---|---|
GET vendorusage/{vendor}/{bid}/{invoiceNumber} |
Get vendor usage by invoice |