SavedQueriesService

General Purpose

To get, add, update or delete a patron’s saved queries.

Requirements

Voyager 7.x and higher.

Input URL Syntax

This service expects to receive an XML document via POST method.

http://server:port/vxws/SavedQueriesService

Input XML Example

This service expects to receive via POST method a ServiceParametersDocument containing a patronIdentifier and the parameters defined below:

  • action – defines which action the service is to provide. Must be one of “get” or “add” or “update” or “delete”. If the action parameter is “add” then the ServiceParametersDocument must also contain the following parameters:
    • searchType
    • searchString
    • searchPage

If the action parameter is “update” then the ServiceParametersDocument must also contain a definedParameter of QueryiesType containing the savedSearchId, new HitsFlag and intervalId of each saved query to update.
If the action parameter is “delete” then the ServiceParametersDocument must contain the following parameter:

savedSearchIds – contains one or more

Example:

<?xml version="1.0" encoding="UTF-8"?>
<ser:serviceParameters xmlns:ser="http://www.endinfosys.com/Voyager/serviceParameters">
   <ser:parameters>
      <ser:parameter key="action">
         <ser:value>delete</ser:value>
      </ser:parameter>
      <ser:parameter key="savedSearchIds">
         <ser:value>354</ser:value>
      </ser:parameter>
   </ser:parameters>
   <ser:patronIdentifier lastName="Patel" patronHomeUbId="1@QA20012DB20020613131313" patronId="562">
      <ser:authFactor type="B">150</ser:authFactor>
   </ser:patronIdentifier>
</ser:serviceParameters>

Output XML Example

This service will return a VoyagerServiceDataDocument wrapping a SavedQueriesType element, which contains the patron’s saved queries, and other information necessary to display the patron’s saved queries.

Example:

<?xml version="1.0" encoding="UTF-8" ?>
<voyagerServiceData xmlns="http://www.endinfosys.com/Voyager/serviceParameters" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <serviceData xsi:type="pat:savedQueriesType" xmlns:pat="http://www.endinfosys.com/Voyager/patronPreferences">
    <pat:queryIntervals>
      <pat:interval>
        <pat:id>1</pat:id>
        <pat:code>Never</pat:code>
        <pat:days>-1</pat:days>
      </pat:interval>
      <pat:interval>
        <pat:id>2</pat:id>
        <pat:code>Daily</pat:code>
        <pat:days>1</pat:days>
      </pat:interval>
      <pat:interval>
        <pat:id>3</pat:id>
        <pat:code>Weekly</pat:code>
        <pat:days>7</pat:days>
      </pat:interval>
      <pat:interval>
        <pat:id>4</pat:id>
        <pat:code>Bi-weekly</pat:code>
        <pat:days>14</pat:days>
      </pat:interval>
      <pat:interval>
        <pat:id>5</pat:id>
        <pat:code>Monthly</pat:code>
        <pat:days>30</pat:days>
      </pat:interval>
    </pat:queryIntervals>
    <pat:queries>
      <pat:query>
        <pat:savedSearchId>374</pat:savedSearchId>
        <pat:searchType>BASIC</pat:searchType>
        <pat:searchString>Keyword Anywhere OR with Relevance(war)</pat:searchString>
        <pat:limitString/>
        <pat:limitFlag/>
        <pat:newHitsFlag>Y</pat:newHitsFlag>
        <pat:intervalId>2</pat:intervalId>
        <pat:searchPage>version=7&amp;searchArg=war&amp;searchCode=GKEY|*&amp;searchType=1&amp;recCount=10</pat:searchPage>
      </pat:query>
      <pat:query>
        <pat:savedSearchId>861</pat:savedSearchId>
        <pat:searchType>BASIC</pat:searchType>
        <pat:searchString>All Fields(car)</pat:searchString>
        <pat:limitString/>
        <pat:limitFlag/>
        <pat:newHitsFlag>N</pat:newHitsFlag>
        <pat:intervalId>1</pat:intervalId>
        <pat:searchPage>version=7&amp;searchArg=car&amp;searchCode=GKEY^*&amp;searchType=1&amp;recCount=10</pat:searchPage>
      </pat:query>
    </pat:queries>
  </serviceData>
</voyagerServiceData>