Web Service Type:

SOAP

Web Service Location:

Click to Select

WSDL Location:

Click to Select

Supported Methods:

Info
Search
Search (EDS)
Search (EHIS)
Browse
AuthoritySearch
GetClusters

Making Requests with SOAP

EBSCOhost offers a SOAP protocol for the EBSCOhost Integration Toolkit Web Service API. 'SOAP' is an acronym for "Simple Object Access Protocol". SOAP provides a way for two different applications on two different platforms to easily exchange data.

SOAP uses XML to exchange data. The exchange of data can be referred to as a "transaction". A typical input-output transaction works as follows:

  1. Client sends an XML message to server requesting data.
  2. Server receives message, and retrieves data.
  3. Server sends an XML message containing requested data back to the client.
  4. Client processes returned data.

This format provides a very concrete and standardized way of communication between applications. Many different platforms and programming languages support SOAP.

The SOAP protocol requires an AuthorizationHeader for authentication. To learn how to authenticate a SOAP request, refer to the SOAP Header section.

Using SOAP with the EBSCOhost API

Back to Top

The EBSCOhost SOAP API has a WSDL, or Web Services Description Language, file available. The Web Services Description Language is an XML based language, and provides a model for describing web services. The WSDL is always located here:

http://eit.ebscohost.com/Services/SearchService.asmx?WSDL

The WSDL document provides all of the information needed to make a request to the EBSCOhost API. The API is always available at this address:

http://eit.ebscohost.com/Services/SearchService.asmx

In order to successfully make a request to the EBSCOhost API, you must have an EIT profile. If you do not have an EIT profile, however, you may contact your Account Manager for details on acquiring one.

SOAP Basics

Back to Top

There are two parts to a SOAP message:

  • The SOAP Header - This will contain authentication data for the EBSCOhost API.
  • The SOAP Body - This will contain the request to the EBSCOhost API.
For more information on SOAP itself, and to find out the basics about SOAP, these links may be helpful:

The SOAP Header

Back to Top

The SOAP Header will contain the AuthorizationHeader, which is what the EIT SOAP Web Service API uses to authenticate users. The SOAP Header, with the EIT Authorization Header, must look like this:

<soap:Header>
  <eit:AuthorizationHeader soap:mustUnderstand="1" xmlns:eit="http://epnet.com/webservices/SearchService/2007/07/">
    <eit:Profile>[Your EIT Profile ID]</eit:Profile>
    <eit:Password>[Your  Profile Password]</eit:Password>
  </eit:AuthorizationHeader>
</soap:Header>

These are the parameters which may be used in the AuthorizationHeader:

Name
Description
Required
Values
Profile The profile used for authentication. This must be an EIT enabled profile. Required if using profile authentication. -
Password The password used for profile authentication. Required if using profile authentication. -
AuthType Indicates if using IP Authentication or Profile Authentication.

Default: profile
No profile,
ip
IpProfile The profile used for authentication. Required if using IP authentication. -
IpAddress The IP address used for authentication. Required if using IP authentication. -

The SOAP Body

Back to Top

The SOAP Body is where the actual request to data from the EBSCOhost API will go. The SOAP Body must look like the following:

<soap:Body>
  <!-- The EBSCOhost API method being called goes here -->
</soap:Body>

Inside of the Body, one of the EBSCOhost API methods is called. For more information on each of the methods, see:

A sample of a SOAP request and response for each method is given.

The Full SOAP Message

Back to Top

In order to complete the SOAP Request, the SOAP Header and SOAP Body must be combined. Both the SOAP Header and SOAP Body get put in the SOAP Envelope. The full message must look like the following:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" >
  <soap:Header>
    <eit:AuthorizationHeader soap:mustUnderstand="1" xmlns:eit="http://epnet.com/webservices/SearchService/2007/07/">
      <eit:Profile>[Your EIT Profile ID]</eit:Profile>
      <eit:Password>[Your  Profile Password]</eit:Password>
    </eit:AuthorizationHeader>
  </soap:Header>
  <soap:Body>
    <!-- The EIT Web Service method being called goes here -->
  </soap:Body>
<soap:Envelope>
	
This message may then be sent to the SOAP EBSCOhost API, and the data requested will be returned in XML format.