Legacy Pubeasy Retail SOAP API Programmers Reference
Contents
1. Overview
This document explains in detail the semantics of the function calls you can make using the Legacy Pubeasy Retail Soap API web service. In this document you will learn:
- How Pubeasy's Retail SOAP API syntax works
- How to interpret the result information sent back to you from the Legacy Pubeasy Retail SOAP API web service.
2. Legacy Pubeasy API Summary
There are a total of five Legacy Pubeasy Retail APIs that can be implemented. A summary of the five API's that can be implemented is as follows:
Pull - Data will be extracted from the database
Push - Data will be uploaded into the database
In addition to the five APIs mentioned previously, there are two other optional APIs that may be implemented. These two APIs serve no other purpose but to aid
developers in implementing the five Legacy Pubeasy Retail APIs. These two additional APIs are as follows:
-
Check Login Information API- This API was added to aid developers in verifying that they are
providing the correct login information to the Legacy Pubeasy Retail SOAP API web service.
3. Bibliographic Information API
3.1 Summary
This API can be used to request bibliographic information, including price and availibility, for a specified query string. Bibliographic results that are returned from
this request will contain any products matching the provided query string.
3.2 bibliograph SOAP Request
The bibliograph SOAP request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user |
| query_string |
string |
The XML string that contains the parameters to search with (See below for the xml query_string format)
|
'Query_String' format - <query_string>
The query_string parameter is an xml string representation of the bibliograph API search parameters. The table below lists all the valid name-value pairs that can be
used in a bibliograph request and describes how these parameters will modify the results. Below is the Query_string with only one parameter:
|
Column Name
|
Description
|
Definition
|
| isbn |
International Standard Book Number (10 or 13 digits) |
VARCHAR2 (13) |
The following is an example of a valid query_string parameter.
<query_string>
<isbn>0123456789</isbn>
</query_string>
The response results can be made more specific by including a region parameter in query_string. Below is the Query_string with two parameters
|
Column Name
|
Description
|
Definition
|
| isbn |
International Standard Book Number (10 or 13 digits) |
VARCHAR2 (13) |
| region |
Region should be either Ame-America or Eur-Europe/UK |
VARCHAR2(3) |
Example of Query_string with 2 parameters:
<query_string>
<isbn>0123456789</isbn>
<region>AME</region>
</query_string>
3.3 bibliograph SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 RESULTS FOUND |
FAILURE |
The bibliograph request found no matching products within the Pubeasy Database. Please alter your query_string.
|
| -1 INCORRECT LOGIN INFORMATION |
FAILURE |
The login information provided in the bibliograph request was incorrect or invalid. Please see thecheck_loginrequest for more information
|
| -2 USER DOES NOT HAVE REQUIRED PRIVILEGES |
FAILURE |
The user provided does not have the required privileges enabled to execute an online product search.
|
| <biblio> ... </biblio> |
SUCCESS |
See the Biblo XML string format below for a description of the xml string returned when there are matching products found
|
'Biblio' XML string format - <biblio>
The data returned is an xml string representation of the bibliographic data matching the query_string from the request. Each matching product will be wrapped with
<biblio> ... </biblio> tags. In the case of multiple matches, there will be multiple items returned. The table below lists each column name that will be
returned in each biblio composite:
|
Column Name
|
Description
|
Definition
|
| affiliate |
Name of Pubeasy Affiliate |
VARCHAR2(50) |
| affiliate_id |
Unique identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| isbn |
Product ID (International Standard Book Number) |
VARCHAR2(13) |
| title |
Product Description |
VARCHAR2(70) |
| author |
Product Author |
VARCHAR2(200) |
| available |
Product Availability Code (refer toAPPENDIX D)
|
VARCHAR2(2) |
| availability_description |
Product Availability Description (refer toAPPENDIX D)
|
VARCHAR2(120) |
| sub_title |
Extra Product Description |
VARCHAR2(300) |
| long_title |
Holds the long title for the product |
VARCHAR2(600) |
| publisher |
Publisher's Name |
VARCHAR2(160) |
| medium |
Replacement for Binding (seeAPPENDIX J)
|
VARCHAR2(5) |
| publication_date |
Publication Date Of Product (format returned will be YYYYMMDD) |
DATE |
| next_isbn |
Alternative Product ID (If the current products is no longer available this would be populated with an alternative ISBN that is now available)
|
VARCHAR2(13) |
| other_edition |
Alternative Binding Of Product ID |
VARCHAR2(10) |
| currency |
Currency Code |
VARCHAR2(4) |
| price |
Published Price Of Product |
NUMBER(7,2) |
| series |
Series Description |
VARCHAR2(40) |
| order_allowed |
Flag To Allow Order to be Placed Against Product |
VARCHAR2(1) |
| pack_size |
Binders Pack Size |
NUMBER(4,0) |
| link_to_marketing |
A flag indicating if the product provides a link to a marketing site |
VARCHAR2(1) |
| marketing_site_url |
The URL of the publishers marketing site for this product |
VARCHAR2(200) |
| price_type |
Price Type Code (refer toAPPENDIX L)
|
VARCHAR2(1) |
| price_type_desc |
Price Type Description (seeAPPENDIX L)
|
VARCHAR2(35) |
| edition |
Edition number, numeric only |
NUMBER(4,0) |
The following is an example of xml results data returned from a bibliograph request:
<biblio>
<affiliate>Test Bowker Affiliate</affiliate>
<affiliate_id>0</affiliate_id>
<author>Charles Dickens</author>
<availability_description>Refer to another supplier</availability_description>
<available>RF</available>
<currency>USD</currency>
<edition></edition>
<isbn>0123456789</isbn>
<link_to_marketing></link_to_marketing>
<long_title></long_title>
<marketing_site_url></marketing_site_url>
<medium>BA</medium>
<next_isbn></next_isbn>
<order_allowed>N</order_allowed>
<other_edition></other_edition>
<pack_size>1</pack_size>
<price>14.95</price>
<price_type></price_type>
<price_type_desc></price_type_desc>
<publication_date></publication_date>
<publisher>Chronicle Books</publisher>
<series></series>
<sub_title></sub_title>
<title>Hard Times</title>
</biblio>
4. Order Status Query API
4.1 Summary
This API can be used to request the status of any order placed by a given account. The order status query results that are returned from this request will contain any
orders matching the provided query string.
4.2 order_status_query SOAP Request
The order_status_query SOAP request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user |
| query_string |
string |
The XML string that contains the parameters to search with (See below for the xml query_string format)
|
'Query_String' format - <query_string>
The query_string parameter is an xml string representation of the order_status_query API search parameters. The table below lists all the valid name-value pairs that
can be used in a order_status_query request and describes how these parameters will modify the results:
|
Column Name
|
Description
|
Definition
|
| affiliate_id |
Unique Identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| isbn |
International Standard Book Number (10 or 13 digits) |
VARCHAR2 (13) |
| order_ref |
A full or partial customer or line reference. This must be entered if the ISBN is not entered |
VARCHAR2 (14) |
| from_date |
From Date (All DATE fields, unless otherwise specified, must be provided in the format YYYYMMDD, such that January 1, 2006 would be 20060101)
|
DATE |
| to_date |
To Date (All DATE fields, unless otherwise specified, must be provided in the format YYYYMMDD, such that January 1, 2006 would be 20060101)
|
DATE |
The following is an example of a valid query_string parameter.
<query_string>
<affiliate_id>0</affiliate_id>
<isbn>0123456789</isbn>
<from_date>20060525</from_date>
<to_date>20060801</to_date>
</query_string>
4.3 order_status_query SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 RESULTS FOUND |
FAILURE |
The order_status_query request found no matching orders within the Pubeasy Database. Please alter your query_string
|
| -1 INCORRECT LOGIN INFORMATION |
FAILURE |
The login information provided in the order_status_query request was incorrect or invalid. Please see thecheck_loginrequest for more information
|
| -2 USER DOES NOT HAVE REQUIRED PRIVILEGES |
FAILURE |
The user provided does not have the required privileges enabled to execute an order status query |
| -3 AFFILIATE WITH ID <affiliate_id> DOES NOT EXIST |
FAILURE |
The affiliate_id provided in the query string is not a valid Pubeasy affiliate_id |
| -4 AFFILIATE <affiliate_id> DOES NOT HAVE THIS FEATURE ENABLED |
FAILURE |
The Pubeasy affiliate provided in the query string does not support the Order Status Query Feature
|
| -5 REQUEST TIMED OUT |
FAILURE |
Order Status Query Request timed out before a response could be returned. Please try again later |
| -6 AN ERROR OCCURRED DURING REQUEST |
FAILURE |
An unknown error occurred during this request. Please try again later |
|
-7 ORDER QUERY PROCESSING NOT AVAILABLE AT AFFILIATE WITH ID: <affiliate_id>
|
FAILURE |
Order Status Query processing is currently unavailable at this Affiliate. Please try again later |
| <order_query_result> ... </order_query_result> |
SUCCESS |
See the Order_Query_Result XML string format below for a description of the xml string returned when there are matching orders found
|
'Order_Query_Result' XML string format - <order_query_result>
The data returned is an xml string representation of the order data matching the query_string from the request. Each matching order query result will be wrapped with
<order_query_result> ... </order_query_result> tags. In the case of multiple matches, there will be multiple items returned. The table below lists each
column name that will be returned in each order_query_result composite:
|
Column Name
|
Description
|
Definition
|
| record_number |
Unique Query Line Number, this is a sequential number identifying each result record (Populated by Pubeasy)
|
NUMBER(4,0) |
| affiliate_id |
Unique identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| query_number |
Unique Query Number (Populated By Pubeasy) |
NUMBER(8,0) |
| result_number |
Unique Query Line Number, this is a sequential number identifying each result record (Populated by Affiliate's Software)
|
NUMBER(4,0) |
| isbn |
Product ID (International Standard Book Number) |
VARCHAR2(13) |
| title |
Product Description |
VARCHAR2(70) |
| author |
Product Author |
VARCHAR2(200) |
| price |
Published Price Of Product |
NUMBER(7,2) |
| quantity |
Quantity Of Product Ordered |
NUMBER(6,0) |
| order_reference |
Originator's Transaction Order Reference (PO Number) |
VARCHAR2(14) |
| invoice_no |
Document Reference (Invoice number) |
VARCHAR2(8) |
| invoice_date |
Document Date (Invoice Date) |
DATE |
| status_code |
This is a code that reflects the current order status of this record (refer to APPENDIX H) |
VARCHAR2(4) |
| order_status |
This is a description of the status code (refer toAPPENDIX H)
|
VARCHAR2(100) |
| pod_signature |
Proof Of Delivery Signature |
VARCHAR2(30) |
| pod_date |
Proof Of Delivery Date |
DATE |
| availability_code |
Product Availability Code (refer toAPPENDIX D)
|
VARCHAR2(2) |
| availability_desc |
Product Availability Description (refer toAPPENDIX D)
|
VARCHAR2(120) |
| availability_date |
If the availability code requires the additional information of a date then this column will contain the date in the format of 'Mon-YYYY'
|
VARCHAR2(8) |
| carrier_code |
This is the Carrier Code |
VARCHAR2(3) |
| carrier_name |
This is the name of the Carrier |
VARCHAR2(80) |
| tracking_no1 |
This is the tracking number for the Carrier code |
VARCHAR2(30) |
| shipper_code |
This is the Shipper Code |
VARCHAR2(3) |
| shipper_name |
This is the name of the Shipped |
VARCHAR2(80) |
| tracking_no2 |
This is the tracking number for the Shipper code |
VARCHAR2(30) |
| price_type |
Price Type Code (refer toAPPENDIX L)
|
VARCHAR2(1) |
| price_type_desc |
Price Type Description (refer toAPPENDIX L)
|
VARCHAR2(100) |
| discount_applied |
Discount percentage, up to three decimal places |
NUMBER(6,3) |
| order_confirmation_number |
Affiliate provided number that uniquely identifies order |
VARCHAR2(40) |
| order_date |
Date order was originally placed (YYYYMMDD) |
DATE |
| <multi_tracking_info>...</multi_tracking_info> |
Support multi-tracking info. It intends to replace tracking_no1 and tracking_no2. If the MULTI_TRACKING_INFO field is not populated by the API then the current
tracking fields tracking_no1, tracking_no2 would be still used. This implies that any unmodified API implementations would continue to work without change. If the
MULTI_TRACKING field is populated then any data in the current tracking fields listed above will be ignored. multi_tracking_info requires affiliate patch level 33
or higher (refer tomulti_tracking_info)
|
VARCHAR2(4000) |
The following is an example of xml results data returned from a order_status_query request:
<order_query_result>
<record_number>1</record_number>
<affiliate_id>0</affiliate_id>
<query_number>761</query_number>
<result_number>1</result_number>
<isbn>0123456789</isbn>
<title>Hard Times</title>
<author>Charles Dickens</author>
<price>14.95</price>
<quantity>1</quantity>
<order_reference></order_reference>
<invoice_no></invoice_no>
<invoice_date></invoice_date>
<status_code>803</status_code>
<order_status>Order line invoiced, stock allocated and delivered</order_status>
<pod_signature></pod_signature>
<pod_date>20050102</pod_date>
<availability_code></availability_code>
<availability></availability>
<availability_date></availability_date>
<carrier_code></carrier_code>
<carrier_name></carrier_name>
<tracking_no1></tracking_no1>
<shipper_code>KAN</shipper_code>
<shipper_name>Kuehne & Nagel Ltd</shipper_name>
<tracking_no2>8276865x</tracking_no2>
<price_type>N</price_type>
<price_type_desc>Net</price_type_desc>
<discount_applied>20</discount_applied>
<order_confirmation_number>ABC123</order_confirmation_number>
<order_date>20041229</order_date>
<multi_tracking_info>
<multi_tracking>
<tracking_info>
<carrier_shipper_code>DHL</carrier_shipper_code>
<carrier_shipper_name>DHL International</carrier_shipper_name>
<tracking_number>123456</tracking_number>
<pod_date />
<pod_signature />
</tracking_info>
<tracking_info>
<carrier_shipper_code>UPS</carrier_shipper_code>
<carrier_shipper_name>UPS In America</carrier_shipper_name>
<tracking_number>87654</tracking_number>
<pod_date format="YYYYMMDD">20070202</pod_date>
<pod_signature>Mr Smith</pod_signature>
</tracking_info>
</multi_tracking>
</multi_tracking_info>
</order_query_result>
5. Back Order Status Query API
5.1 Summary
This API can be used to request the status of any back order placed by a given account. The back order status query results that are returned from this request will
contain any back orders matching the provided query string. Back Order queries differ from General Order Status queries in that they only look at back orders held and
allow a date range search to reduce the response.
5.2 back_order_status_query SOAP Request
The back_order_status_query SOAP request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user |
| query_string |
string |
The XML string that contains the parameters to search with (See below for the xml query_string format)
|
'Query_String' format - <query_string>
The query_string parameter is an xml string representation of the back_order_status_query API search parameters. The table below lists all the valid name-value pairs
that can be used in a back_order_status_query request and describes how these parameters will modify the results:
|
Column Name
|
Description
|
Definition
|
| affiliate_id |
Unique Identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| isbn |
International Standard Book Number (10 or 13 digits) |
VARCHAR2 (13) |
| order_ref |
A full or partial customer order or line reference. |
VARCHAR2 (14) |
| from_date |
From Date (All DATE fields, unless otherwise specified, must be provided in the format YYYYMMDD, such that January 1, 2006 would be 20060101)
|
DATE |
| to_date |
To Date (All DATE fields, unless otherwise specified, must be provided in the format YYYYMMDD, such that January 1, 2006 would be 20060101)
|
DATE |
The following is an example of a valid query_string parameter.
<query_string>
<affiliate_id>0</affiliate_id>
<isbn>0123456789</isbn>
<from_date>20060525</from_date>
<to_date>20060801</to_date>
</query_string>
5.3 back_order_status_query SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 RESULTS FOUND |
FAILURE |
The back_order_status_query request found no matching back orders within the Pubeasy Database. Please alter your query_string
|
| -1 INCORRECT LOGIN INFORMATION |
FAILURE |
The login information provided in the back_order_status_query request was incorrect or invalid. Please see thecheck_loginrequest for more information
|
| -2 USER DOES NOT HAVE REQUIRED PRIVILEGES |
FAILURE |
The user provided does not have the required privileges enabled to execute an back order status query
|
| -3 AFFILIATE WITH ID <affiliate_id> DOES NOT EXIST |
FAILURE |
The affiliate_id provided in the query string is not a valid Pubeasy affiliate_id |
| -4 AFFILIATE <affiliate_id> DOES NOT HAVE THIS FEATURE ENABLED |
FAILURE |
The Pubeasy affiliate provided in the query string does not support the Back Order Status Query Feature
|
| -5 REQUEST TIMED OUT |
FAILURE |
Back Order Status Query Request timed out before a response could be returned. Please try again later
|
| -6 AN ERROR OCCURRED DURING REQUEST |
FAILURE |
An unknown error occurred during this request. Please try again later |
|
-7 BACK ORDER QUERY PROCESSING NOT AVAILABLE AT AFFILIATE WITH ID: <affiliate_id>
|
FAILURE |
Back Order Status Query processing is currently unavailable at this Affiliate. Please try again later
|
|
<back_order_query_result> ... </back_order_query_result>
|
SUCCESS |
See the Back_Order_Query_Result XML string format below for a description of the xml string returned when there are matching back orders found
|
'Back_Order_Query_Result' XML string format -
<back_order_query_result>
The data returned is an xml string representation of the back order data matching the query_string from the request. Each matching back order query result will be
wrapped with <back_order_query_result> ... </back_order_query_result> tags. In the case of multiple matches, there will be multiple items returned. The
table below lists each column name that will be returned in each back_order_query_result composite:
|
Column Name
|
Description
|
Definition
|
| record_number |
Unique Query Line Number, this is a sequential number identifying each result record (Populated by Pubeasy)
|
NUMBER(4,0) |
| affiliate_id |
Unique identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| query_number |
Unique Query Number (Populated By Pubeasy) |
NUMBER(8,0) |
| result_number |
Unique Query Line Number, this is a sequential number identifying each result record (Populated by Affiliate's Software)
|
NUMBER(4,0) |
| isbn |
Product ID (International Standard Book Number) |
VARCHAR2(13) |
| title |
Product Description |
VARCHAR2(70) |
| author |
Product Author |
VARCHAR2(200) |
| price |
Published Price Of Product |
NUMBER(7,2) |
| quantity |
Quantity Of Product Back Ordered |
NUMBER(6,0) |
| order_reference |
Originator's Transaction Order Reference (PO Number) |
VARCHAR2(14) |
| order_date |
Date order was originally placed (YYYYMMDD) |
DATE |
| invoice_no |
Document Reference (Invoice number) |
VARCHAR2(8) |
| invoice_date |
Document Date (Invoice Date) |
DATE |
| availability_code |
Product Availability Code (refer toAPPENDIX D)
|
VARCHAR2(2) |
| availability_desc |
Product Availability Description (refer toAPPENDIX D)
|
VARCHAR2(120) |
| availability_date |
If the availability code requires the additional information of a date then this column will contain the date in the format of 'Mon-YYYY'
|
VARCHAR2(8) |
| price_type |
Price Type Code (refer toAPPENDIX L)
|
VARCHAR2(1) |
| price_type_desc |
Price Type Description (refer toAPPENDIX L)
|
VARCHAR2(100) |
| discount_applied |
Discount percentage, up to three decimal places |
NUMBER(6,3) |
The following is an example of xml results data returned from a bacK_order_status_query request:
<back_order_query_result>
<record_number>1</record_number>
<affiliate_id>0</affiliate_id>
<query_number>575</query_number>
<result_number>3</result_number>
<isbn>0123456789</isbn>
<title>Hard Times</title>
<author>Charles Dickens</author>
<price>14.95</price>
<quantity>3</quantity>
<order_reference></order_reference>
<order_date></order_date>
<invoice_no></invoice_no>
<invoice_date></invoice_date>
<availability_code>NP</availability_code>
<availability_desc>Not yet published</availability_desc>
<availability_date>20061215</availability_date>
<price_type>N</price_type>
<price_type_desc>Net</price_type_desc>
<discount_applied>20</discount_applied>
</back_order_query_result>
6. Invoice Request API
The Invoice Request API is not supported.
7. Raise Order API
7.1 Summary
This API can be used to place orders at any Pubeasy affiliate that you have an account with.
7.2 raise_order SOAP Request
The raise_order SOAP request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user |
| orders |
string |
The XML string that contains the order lines to be placed (See below for the xml orders format)
|
| order_ref |
string |
OPTIONAL: A string that contains the order_reference of every order line in the orders parameter. If this is not provided, a line_reference will be required for
each order line
|
| activity_code |
string |
OPTIONAL: This field will be used byPubeasy
|
'Orders' format - <orders>
The orders parameter is an xml string representation of the order lines to be placed. Within the orders composite, one or more order_lines composites must be present.
The table below lists all the valid name-value pairs that can be used in an a single order_lines composite:
|
Column Name
|
Description
|
Definition
|
| isbn |
International Standard Book Number (10 or 13 digits) |
VARCHAR2 (13) |
| record_dues |
Allow back orders to be recorded ('Y' or 'N') Note that a NULL entry will be read as N. |
VARCHAR2 (1) |
| part_supply |
Allow orders to be part supplied ('Y' or 'N') Note that a NULL entry will be read as N. |
VARCHAR2 (1) |
| order_quantity |
Quantity Of Product to order |
NUMBER (6) |
| order_line_reference |
Originator's Transaction Line Reference (Line PO Number). If an order_reference is specified without an order_line_reference, then the order_line_reference will
automatically be set to the order_reference.
|
VARCHAR2 (14) |
| special_instructions |
Special Instruction Text. If Populated, Order Will Be Delayed |
VARCHAR2 (1600) |
| affiliate_id |
Unique Indentifier of Pubeasy Affiliate |
NUMBER (8,0) |
| promotional_code |
Promotional Code, no special characters are allowed, such as $, @. No spaces are allowed
|
VARCHAR2 (50) |
The following is an example of a valid orders parameter.
<orders>
<order_lines>
<isbn>0835245373</isbn>
<record_dues>Y</record_dues>
<part_supply>Y</part_supply>
<order_quantity>1</order_quantity>
<order_line_reference>111111</order_line_reference>
<affiliate_id>501</affiliate_id>
</order_lines>
<order_lines>
<isbn>0123456789</isbn>
<record_dues>Y</record_dues>
<part_supply>Y</part_supply>
<order_quantity>5</order_quantity>
<order_line_reference>222222</order_line_reference>
<special_instructions>These are my special instructions</special_instructions>
<affiliate_id>502</affiliate_id>
<promotional_code>promo12345</promotional_code>
</order_lines>
</orders>
7.3 raise_order SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 RESULTS FOUND |
FAILURE |
The raise_order API failed to place any orders into the Pubeasy Database |
| -1 INCORRECT LOGIN INFORMATION |
FAILURE |
The login information provided in the raise_order request was incorrect or invalid. Please see thecheck_loginrequest for more information
|
| <result_order_lines> ... </result_order_lines> |
FAILURE/SUCCESS |
See the Result_Order_Lines XML string format below for a description of the xml string returned
|
'Result_Order_Lines' XML string format - <result_order_lines>
The data returned is an xml string representation of the status of each order_lines composite provided in the raise_order request. In the case where multiple
order_lines were part of the request, multiple result_order_lines composites will be returned. The table below lists each column name that will be returned in each
result_order_lines composite:
|
Column Name
|
Description
|
| status |
The status of the order line ('F' - Failed to be raised, 'S' - Successfully Raised) |
| description |
Description of the status |
| <order_lines> ... </order_lines> |
The original order_lines composite is embedded here |
The following is an example of xml results data returned from a raise_order request:
<result_order_lines>
<status>F</status>
<description>-2 USER DOES NOT HAVE REQUIRED PRIVILEGES AT AFFILIATE WITH ID 501</description>
<order_lines>
<isbn>0835245373</isbn>
<record_dues>Y</record_dues>
<part_supply>Y</part_supply>
<order_quantity>1</order_quantity>
<order_line_reference>111111</order_line_reference>
<affiliate_id>501</affiliate_id>
</order_lines>
</result_order_lines>
<result_order_lines>
<status>S</status>
<description>1 ORDER LINE RAISED SUCCESSFULLY</description>
<order_lines>
<isbn>0123456789</isbn>
<record_dues>Y</record_dues>
<part_supply>Y</part_supply>
<order_quantity>5</order_quantity>
<order_line_reference>222222</order_line_reference>
<special_instructions>These are my special instructions</special_instructions>
<affiliate_id>502</affiliate_id>
<promotional_code>promo12345</promotional_code>
</order_lines>
</result_order_lines>
8. Get Affiliate Information API
8.1 Summary
This API can be used to request information about all or individual Pubeasy Affiliates. Implementation of this API is purely optional, however information that it
provides, such as affiliate_id, is required by the
Order Status Query,
Back Order Status Query, and
Raise OrderAPIs.
8.2 get_affiliate_info SOAP Request
The get_affiliate_info SOAP request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user |
| query_string |
string |
OPTIONAL: This optional XML string contains the parameters to search with (See below for the xml query_string format)
|
'Query_String' format - <query_string>
The query_string parameter is an xml string representation of the get_affiliate_info API search parameters. The table below lists all the valid name-value pairs that
can be used in a get_affiliate_info request and describes how these parameters will modify the results. If the query_string is not provided, information from every
Pubeasy affiliate will be returned.
|
Column Name
|
Description
|
Definition
|
| name |
Name of Pubeasy Affiliate |
VARCHAR2(50) |
| affiliate_id |
Unique identifier of Pubeasy Affiliate |
NUMBER(8,0) |
The following is an example of a valid query_string parameter.
<query_string>
<name>Test Bowker Affiliate<name>
</query_string>
8.3 get_affiliate_info SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 RESULTS FOUND |
FAILURE |
The get_affiliate_info found no matching affiliates within the Pubeasy Database. Please alter your query_string
|
| -1 INCORRECT LOGIN INFORMATION |
FAILURE |
The login information provided in the get_affiliate_info request was incorrect or invalid. Please see thecheck_loginrequest for more information
|
| -2 USER DOES NOT HAVE REQUIRED PRIVILEGES |
FAILURE |
The user provided does not have the required privileges enabled to execute this request. Online search privileges must be enabled
|
| <affiliate> ... </affiliate> |
SUCCESS |
See the Affiliate XML string format below for a description of the xml string returned when there are matching affiliates found
|
'Affiliate' XML string format - <affiliate>
The data returned is an xml string representation of the affiliate data matching the query_string from the request, or all the affiliate data if no query string was
provided. Each matching affiliate result will be wrapped with <affiliate> ... </affiliate> tags. In the case of multiple matches, there will be multiple
items returned. The table below lists each column name that will be returned in each affiliate composite:
|
Column Name
|
Description
|
Definition
|
| affiliate_id |
Unique identifier of Pubeasy Affiliate |
NUMBER(8,0) |
| domain_name |
URL Address of Pubeasy Affiliate |
VARCHAR2(240) |
| name |
Name of Pubeasy Affiliate |
VARCHAR2(50) |
The following is an example of xml results data returned from a get_affiliate_info request:
<affiliate>
<affiliate_id>0</affiliate_id>
<domain_name>http://test.pubeasy.bowker.com/</domain_name>
<name>Test Bowker Affiliate</name>
</affiliate>
9. Check Login Information API
9.1 Summary
This API was added to aid developers in verifying that they are providing the correct login information to the Legacy Pubeasy Retail SOAP API web service. This API
should be used as a developer's first step during implementation of the Pubeasy Reatail SOAP APIs.
9.2 check_login SOAP Request
This request is called with the following parameters:
|
Name
|
Type
|
Description
|
| pin |
string |
A string that contains the login pin or ean |
| user_id |
string |
A string that contains the login user identification number |
| pwd |
string |
A string that contains the clear text password of the login user
|
9.3 check_login SOAP Response
Each time you issue a request to the Legacy Pubeasy Retail API service, a response is returned back to you. This section describes the meanings of the values returned
to you.
|
Return Value
|
Status
|
Description
|
| 0 |
FAILURE |
The result of 0 from a check_login request means that the login information provided was invalid.
|
| 1 |
SUCCESS |
The result of 1 from a check_login request means that the login information provided was valid.
|
9.4 Best Practices
This goal of this API is to aid the development process. It is recommended that the first API that developers try to implement is this one. This is because this API
only checks login information which is necessary for every other API to be called. Therefore it is recommended that you get this API working first before moving on to
any others.
10. WSDL and XML
10.1 WSDL Support
A WSDL file you can use with any development platform that supports web services can be found at the following URL:
Test and Live Legacy Legacy Legacy Pubeasy Retail Web Services
For your convenience, Pubeasy has implemented all web services on a test site, in addition to the live site. This will allow you to develop your web service clients
worry free. Use this environment as a test platform for your clients before you port them to the live Pubeasy site. Please use the following service endpoints:
-
Legacy Legacy Legacy Pubeasy Retail Web Service Live URLs (PROD)
- https://soap.pubnet.org/services/legacy/retailer/ (prefered, secure)
- http://soap.pubnet.org/services/legacy/retailer/ (fallback, if HTTPS is not possible)
-
Legacy Legacy Legacy Pubeasy Retail Web Service Test URLs (SANDBOX)
- https://sandbox-soap.pubnet.org/services/legacy/retailer/ (prefered, secure)
- http://sandbox-soap.pubnet.org/services/legacy/retailer/ (fallback, if HTTPS is not possible)
10.2 XML Formatting
Since some of the APIs require xml query strings to be embedded inside SOAP parameters, it must be noted that these xml strings must be escaped. For example, assume the
following tags, tag1 - tag4, represent an xml string to be passed in as part of the parameter query_string. The following illustrates how this needs to be accomplished:
...
<query_string>
<tag1>VALUE1</tag1>
<tag2>VALUE2</tag2>
<tag3>VALUE3</tag3>
<tag4>VALUE4</tag4>
</query_string>
...
The following table illustrates the reserved characters within XML that need to be escaped and their corresponding escaped values. Please note that these characters
will need to be escaped in your program if your development platform does not automatically do it already.
|
Reserved Character
|
Escaped Value
|
| < |
< |
| > |
> |
| & |
& |
Keep in mind, the same holds true for xml string responses sent back from the Legacy Pubeasy Retail SOAP API.
11. Promotional Code
11.1 Promotional code in order file
Promotional code would be present at the end of each order line (24th column, numbered from 1) in Pubeasy Order File. Below is the sample order file content with Promo
Code
'pro'
Sample order file content:
Header|23|20150818|XO|00230006
1|14193|39429|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9782759403165"|1|"1212"|N|N||80|0|||||"20150723"|12:00:00|||
2|14194|39430|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9782759403127"|1|"1213"|Y|N||25|0|||||"20150802"|01:32:48|||
3|14188|39425|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9780231136235"|1|"123"|Y|Y||27|0|||||"20150406"|09:21:31|||
4|14187|39424|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9780099268796"|1|"12345"|Y|Y||53.75|0|||||"20150331"|02:37:40|||
5|14190|39426|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9780231136563"|1|"124"|Y|Y||72.5|0|||||"20150721"|12:00:00|||
6|14192|39428|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9780231158572"|1|"test"|N|Y||26|0|||||"20150721"|12:00:00|||
7|14264|39492|P0000620|TEST_ORDER|"Perseus"|"Example@emailaddress.com"|"9781569752432"|1|"test5"|N|N||17.95|0|||||"20150817"|12:00:00||| "pro"
8|14191|39427|PSLOG1|PSLOG1|"Example Name"|"Example@emailaddress.com"|"9780231136570"|1|"123"|Y|Y||22.5|0|||||"20150406"|10:10:01|||
Trailer|8|8
12. Appendices
12.1 Apendix D - Product Availability Status Codes
|
Code
|
Description
|
| AB |
Publication abandoned |
| AD |
Apply Direct: item not available to trade |
| CB |
Click Book icon for Availability |
| CS |
Status uncertain: check with customer service |
| HK |
Paperback out of print: hardback available |
| I2 |
Import to Order, Available, Ship within 2 weeks |
| IP |
In print and in stock |
| IT |
Import to Order, Available |
| MB |
Managed back order |
| MD |
Manufactured on demand |
| NP |
Not yet published |
| OF |
This format out of print: other format available |
| OO |
On order from publisher |
| OP |
Out of print |
| OR |
Out of print: (to be) replaced by new edition |
| OS |
Out of Stock |
| PK |
Hardback out of print: paperback available |
| RE |
Awaiting reissue |
| RF |
Refer to other publisher or distributor |
| RM |
Remaindered |
| RP |
Reprinting |
| SB |
Substitution |
| RR |
Rights Restricted |
| TO |
Only to order |
| TU |
Temporarily unavailable |
| UC |
Unavailable: reprint under consideration |
12.2 Appendix H - Order Query Status Descriptions
|
Status
|
Description
|
| 100 |
Order in Progress - Stock Available |
|
| 101 |
Order in Progress - Stock Available - Substitution |
|
| 200 |
Order Cannot be Supplied - Referred/Restricted |
|
| 201 |
Order Cannot be Supplied - Title Status OP or OSI |
|
| 202 |
Order Cannot be Supplied - Customer cancel preference |
|
| 203 |
Order Cannot be Supplied - Customer cancellation |
|
| 300 |
Order Not Supplied - Reason Unspecified |
|
| 400 |
Order Back Ordered - To Follow |
|
| 401 |
Order Back Ordered - Substitution to Follow |
|
| 402 |
Order Back Ordered - NYP |
|
| 403 |
Order Back Ordered - Managed release |
|
| 500 |
Order on Hold - Contact Customer Services |
|
| 800 |
Order line invoiced, stock allocated - may or may not have been dispatched. |
|
| 801 |
Order line invoiced, stock allocated and dispatched. |
|
| 802 |
Order line invoiced, stock allocated, not yet dispatched. |
|
| 803 |
Order line invoiced, stock allocated and delivered |
|
| 804 |
Order line invoiced, substitution, stock allocated |
|
| 805 |
Order line invoiced, substitution, stock allocated and shipped |
|
| 806 |
Order line invoiced, substitution, stock allocated, not yet shipped |
|
| 807 |
Order line invoiced, substitution, stock allocated and delivered |
|
| 808 |
Order received, awaiting processing |
|
| 809 |
Stock allocated and shipped |
|
| 810 |
Stock allocated with substitution and shipped |
|
| 811 |
Returned Items |
|
| 812 |
Replacement in Progress |
|
| 813 |
Replacement Shipped |
|
| C800 |
Order line consigned, stock allocated |
|
| C801 |
Order line consigned, substitution, stock allocated |
|
12.3 Apendix J - Medium Codes
|
Code
|
Description
|
| 00 |
Undefined |
| AA |
Audio |
| AB |
Audio cassette |
| AC |
CD-audio |
| AD |
DAT |
| AE |
Audio disk |
| AF |
Audio tape |
| AZ |
Other audio format |
| BA |
Book |
| BB |
Hardback |
| BC |
Paperback |
| BD |
Loose-leaf |
| BE |
Spiral bound |
| BF |
Pamphlet |
| BG |
Leather/fine binding |
| BH |
Board book |
| BI |
Rag book |
| BZ |
Other book format |
| CA |
Sheet map |
| CB |
Sheet map, folded |
| CC |
Sheet map, flat |
| CD |
Sheet map, rolled |
| CE |
Globe |
| CZ |
Other cartographic format |
| DA |
Digital |
| DB |
CD-ROM |
| DC |
CD-I |
| DD |
DVD |
| DE |
Game cartridge |
| DF |
Diskette |
| DG |
Electronic book text |
| DH |
Online file |
| DZ |
Other digital |
| FA |
Film or transparency |
| FB |
Film |
| FC |
Slides |
| FD |
OHP transparencies |
| FZ |
Other film or transparency format |
| LB |
Library Binding |
| MA |
Microform |
| MB |
Microfiche |
| MC |
Microfilm |
| MG |
Multi-Media |
| MM |
Mass Market |
| MZ |
Other microform |
| NM |
New Media |
| PA |
Miscellaneous print |
| PB |
Address book |
| PC |
Calendar |
| PD |
Cards |
| PE |
Copymasters |
| PF |
Diary |
| PG |
Frieze |
| PH |
Kit |
| PI |
Sheet music |
| PJ |
Postcard book or pack |
| PK |
Poster |
| PL |
Record book |
| PM |
Wallet |
| PN |
Pictures or photographs |
| PO |
Wallchart |
| PZ |
Other printed item |
| TP |
Trade Paperback |
| VA |
Video |
| VB |
Video, VHS, PAL |
| VC |
Video, VHS, NTSC |
| VD |
Video, Betamax, PAL |
| VE |
Video, Betamax, NTSC |
| VF |
Videodisk |
| VZ |
Other video format |
| WW |
Mixed product |
| XA |
Point of sale material |
| XB |
Dumpbin - empty |
| XC |
Dumpbin - filled |
| XD |
Counterpack - empty |
| XE |
Counterpack - filled |
| XF |
Poster |
| XG |
Shelf strip |
| XH |
Window piece |
| XI |
Streamer |
| XJ |
Spinner |
| XK |
Large book |
| XL |
Shrink-wrapped pack |
| XZ |
Other point of sale |
| ZA |
General merchandise |
| ZB |
Doll |
| ZC |
Soft toy |
| ZD |
Toy |
| ZE |
Game |
| ZZ |
Other merchandise |
12.4 Apendix L - Pubeasy Price Type Codes
|
Code
|
Description
|
| A |
Agency Net Price |
| E |
Rental Price |
| F |
Freight Pass Through |
| L |
List Price |
| N |
Net Price |
| P |
Preview Price |
| R |
Retail Price |