DOC Migration from eSampling to Recommendations


When producing this version of our APIs VitalSource chose to produce two endpoints that replace the deprecated eSampling CRM API.

In place of the prior single API we now have a POST endpoint for sending in sampling requests that includes a few more fields. To get information about your sampling history we have a GET endpoint that allows you to specify which time-frame you are requesting.

The primary differences are:

  • Key based authentication not IP based
  • POST to send us a sampling request
  • GET to see what we have received from you
  • More parameters you CAN pass on a sampling request
    • Minor changes to field names, for what is now a POST sampling request


Recommendations - Create

Send US/Canada Sampling URL:


Send UK Sampling URL:


Request Headers 

Content-Type: application/xml
Accept: application/xml


Field Map from eSampling API (deprecated) to Recommendations API

eSampling CRM param

Recommendation param

field type


Source *deprecated    
CampaignCode campaign-code string Yes
ProductList product-list array Yes
ProfessorId professor-id string Yes
ProfessorEmail professor-email string Yes
ProfessorFirstName professor-first-name string No
ProfessorLastName professor-last-name string No
n/a professor-school string No
n/a professor-school-id numeric No
n/a professor-department string No
ProfessorState professor-state string No
n/a professor-country string No
n/a publisher-div-id numeric No
n/a publisher-div-descrip string No
n/a publisher-order string No
SalesRepPhoneNumber sales-rep-phone-number string No
SalesRepFirstName sales-rep-first-name string No
SalesRepLastName sales-rep-last-name string No
SalesRepCompany sales-rep-company string No
SalesRepEmail sales-rep-email string No
 n/a territory-id numeric No
 n/a territory-desc string No


Full documentation for the recommendations API can be found here 


Engagement - Details

The engagement API is designed to request your entire data set of sampling requests. This API is simple to use. The parameters are designed to assist you in specifying your request time window.




Full documentation for the engagement API can be found here



Was this article helpful?
0 out of 0 found this helpful