Not logged in - Login
< back

Webshop API Interface Specification

Version 0.1

Table of Contents

  1. Introduction
    1. Overview
    2. Audience
    3. Document Overview
    4. Getting Started
    5. How to Send Request
  2. Basic Concepts
    1. Message Transport
    2. Authentication
    3. Message Structure
  3. XML Message
    1. WS_AuthenticationRQ/RS
      1. Support Operations
      2. Business Rules
      3. WS_AuthenticationRQ
      4. Sample Message Request
      5. WS_AuthenticationRS
      6. Simple Message Response Success
    2. WS_CategroySetRQ/RS
      1. Support Operations
      2. Business Rules
      3. WS_CategroySetRQ
      4. Sample Message Request
      5. WS_CategroySetRS
      6. Simple Message Response Success
    3. WS_UpdateCategoryRQ/RS
      1. Support Operations
      2. Business Rules
      3. WS_UpdateCategoryRQ
      4. Sample Message Request
      5. WS_UpdateCategoryRS
      6. Simple Message Response Success
    4. WS_UpdateProductRQ/RS
      1. Support Operations
      2. Business Rules
      3. WS_UpdateProductRQ
      4. Sample Message Request
      5. WS_UpdateProductRS
      6. Simple Message Response Success
    5. WS API ‘Status’ Values List

1 Introduction

1.1 Overview

The use of this interface for communication with the exPub Service Providers using OTA compliant XML messaging over an HTTP protocol. The interface supports the exchange of:
  • Authentication
  • Get Category Set
  • Add/Update Category
  • Add/Update Product

The purpose of this interface is to facilitate dynamic data synchronization such as category name, product name, product variant name, description

1.2 Audience

This document is intended for technical staff at the webshop portal development company. The reader should be familiar with the underlying technologies used, including XML and HTTPS.

1.3 Document Overview

This document is divided into chapters covering background information, business rules, use cases, error and warning messages. The chapter detailing each of the messages describes some or all of the following:
  • An overview of the message format
  • The XML and business rules that apply to the message
  • A tabular listing of the elements and attributes in the message
  • Sample XML messages

1.4 Getting started

Our XML Web Service cannot be accessed by unauthorized requests. You will first need to contact us to get the Application Token before you can make requests. Your usage of our XML Web Service will be monitored by our staff: we reserve the right to close an XML account if its number of requests is huge.

1.5 How to send requests

The addresses to which to send requests are the following:

https://api.expubwebsites.net/WebshopApi/Authentication
https://api.expubwebsites.net/WebshopApi/GetCategorySet
https://api.expubwebsites.net/WebshopApi/UpdateCategory
https://api.expubwebsites.net/WebshopApi/UpdateProduct

You must send your XML with POST request. This can be achieved through various programming methods, which will vary according to the programming language you're using. For example, in PHP the simplest way to send this kind of requests is using the CURL extension.

2 Basic Concepts

2.1 Message Transport

All messages are transported via HTTP POST.

2.2 Authentication

The WebShopAPI provides the credentials necessary for consuming the WebServices being offered to the receiving system. Security credentials consist of: Token – A login for authentication that is provided by the WebShopAPI at the time of the order e.g. The requesting system should have the ability to connect to different URLs. Connections to the different servers may use the same account information

2.3 Message Structure

Version - This decimal value identifies the specific version of the WebShop API XML schema associated with an XML instance document. Our system does not block requests that are earlier or later than the version we are supporting, and will try to reply to them if possible.

Token - The value of this attribute is assigned by a requesting system and serves as a reference for messages that may follow an initial request. When a request message includes an echo token, the corresponding response message must include an echo token with an identical value. This makes it possible for two or more messages to be correlated together as part of a single transaction.

Message - This element indicates that the recipient of a message identified one or more warnings. A warning is a business-level error. The XML content might be syntactically valid, but the receiving application cannot fulfill the request.

Status - Message Code.

Request - This date and time value specifies the creation date and time of a message. This value is UTC format specified by ISO 8601—YYYY-MM-DDThh:mm:ssZ—with time values using the 24-hour clock (e.g., 20 May 2014, 1:59:38 p.m. UTC becomes 2013-05- 20T13:59:38).

3 XML Messages

3.1 WS_AuthenticationRQ/RS

This message identifies the initial request for checking authentication.

3.1.1 Support Operations

Portal requests information about the authentication.

3.1.2 Business Rules

This message is only sent from the portal to the Service Providers. Only requests received via POST method will be accepted.

3.1.3 WS_AuthenticationRQ

This message identifies the initial request for order data. Using this message the requester may retrieve status authentication.

ParameterElement(E)
Attribute(A)
Required(R)
Optional(O)
NotesData Type/ Possible values
WS_AuthenticationRQERRoot Element 
WS_AuthenticationRQ/TokenARA reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message include an echo token with the identical valueString Length:1 -128

3.1.4 Sample Message Request

Post on url https://api.expup.net/WebshopApi/Authentication

<WS_AuthenticationRQ Token=”99999999999999999999999999999999999999999999999”> </WS_AuthenticationRQ>

3.1.5 WS_AuthenticationRS

The WS_AuthenticationRS is the message used to indicate the status of processing the WS_AuthenticationRQ message. This message returns ''json'' that meets the requested criteria and/or Warnings, or Errors if the request did not succeed.

Element(E)
Attribute(A)
NameNotesData Type/ Possible values
EWS_AuthenticationRSRoot Element 
AWS_AuthenticationRS/APIAPI NameString Length:1 -20
AWS_AuthenticationRS/VersionThe message version indicated by a decimal value.Decimal
AWS_AuthenticationRS/TokenA reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message includes an echo token with the identical valueString Length:1 -128
AWS_AuthenticationRS/StatusIdentifies the status of the call url request.Integer
AWS_AuthenticationRS/MessageMessage call url request of statusString Length: 1 - 500
AWS_AuthenticationRS/RequestDate RequestTimeStamp

3.1.6 Simple Message Response Success

<WS_AuthenticationRS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" API="WSP_Authentication" Version="0.1" Token="340FDFAE958CD5335A8CD22B390A6F76497ED23BFBAC877467" Status="2" Message="Success Authentication" Request="2015-07-02T09:58:41.8418681+07:00"/>

3.2 WS_CategorySetRQ/RS

This message identifies the initial request to get information category set.

3.2.1 Support Operations

Portal requests information about the authentication.

3.2.2 Business Rules

This message is only sent from the portal to the Service Providers. Only requests received via POST method will be accepted.

3.2.3 WS_CategorySetRQ

This message identifies the initial request for category set data. Using this message the requester may retrieve information category set

ParameterElement(E)
Attribute(A)
Required(R)
Optional(O)
NotesData Type/ Possible values
WS_CategorySetRQERRoot Element 
WS_CategorySetRQ/TokenARA reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message include an echo token with the identical valueString Length:1 -128
WS_CategorySetRQ/LanguageIdARThe primary language preference for the message encoded as ISO 639String Length:2

3.2.4 Sample Message Request

Post on url https://api.expub.net/WebshopApi/GetCategorySet

<WS_CategorySetRQ Token=340FDFAE958CD5335A8CD22B390A6F76497ED23BFBAC877467" LanguageId="en"></WS_CategorySetRQ>

3.2.5 WS_CategorySetRS

The WS_CategorySetRS is the message used to indicate the status of processing the WS_CategorySetRQ message. This message returns xml that meets the requested criteria and/or Warnings, or Errors if the request did not succeed.

Element(E)
Attribute(A)
NameNotesData Type/Possible values
EWS_CategorySetRSRoot Element 
AWS_CategorySetRS/APIAPI NameString Length:1 -20
AWS_CategorySetRS/VersionThe message version indicated by a decimal value.Decimal
AWS_CategorySetRS/TokenA reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message includes an echo token with the identical valueString Length:1 -128
AWS_CategorySetRS/StatusIdentifies the status of the call url request.Integer
AWS_CategorySetRS/MessageMessage call url request of statusString Length: 1 - 500
AWS_CategorySetRS/RequestDate RequestTimeStamp
EWS_CategorySetRS.CategorySets  
EWS_CategorySetRS.CategorySets.CategorySet  
EWS_CategorySetRS.CategorySets.CategorySet.CategorySetIdCategory Set IdInteger
EWS_CategorySetRS.CategorySets.CategorySet.NameCategory Set NameString Length: 1 - 500

3.2.6 Simple Message Response Success

<WS_CategorySetRS xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"xmlns:xsd="http://www.w3.org/2001/XMLSchema" Version="0.1"Version="0.1" Token="340FDFAE958CD5335A8CD22B390A6F76497ED23BFBAC877467"Token="340FDFAE958CD5335A8CD22B390A6F76497ED23BFBAC877467" Status="3"Status="3" Message="SuccessMessage="Success Get CateogrySet"CateogrySet" Request="2015-07-02T10:33:28.4720242+07:00">
    <CategorySets>
        <CategorySet>
            <CategorySetId>249</CategorySetId>
            <Name>Products</Name>
        </CategorySet>
        <CategorySet>
            <CategorySetId>257</CategorySetId>
            <Name>ArticleRequest="2015-07-02T10:33:28.4720242+07:00"> <CategorySets> <CategorySet> <CategorySetId>249</CategorySetId> <Name>Foo</Name> </CategorySet> <CategorySet> <CategorySetId>257</CategorySetId> <Name>Article category</Name>
        </CategorySet>
        <CategorySet>
            <CategorySetId>268</CategorySetId>
            <Name>Product </CategorySet> <CategorySet> <CategorySetId>268</CategorySetId> <Name>Product Cateory</Name>
        </CategorySet>
        <CategorySet>
            <CategorySetId>270</CategorySetId>
            <Name>Campaign </CategorySet> <CategorySet> <CategorySetId>270</CategorySetId> <Name>List Products</Name>
        </CategorySet>
    </CategorySets>
Product</Name> </CategorySet> </CategorySets> </WS_CategorySetRS>

3.3 WS_UpdateCategoryRQ/RS

This message identifies the initial request for updating category.

3.3.1 Support Operations

Portal requests update about a category.

3.3.2 Business Rules

This message is only sent from the portal to the Service Providers. Only requests received via POST method will be accepted.

3.3.3 WS_UpdateCategoryRQ

This message identifies the initial request update for categories. Using this message the requester may update a category

ParameterElement(E)
Attribute(A)
Required(R)
Optional(O)
NotesData Type/ Possible values
WS_UpdateCategoryRQERRoot Element 
WS_UpdateCategoryRQ/TokenARA reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message includes an echo token with the identical valueString Length:1 -128
WS_UpdateCategoryRQ/LanguageIdARThe primary language preference for the message encoded as ISO 639String Length:2
WS_UpdateCategoryRQ.CategorysE  
WS_UpdateCategoryRQ.Categorys.CategoryE  
WS_UpdateCategoryRQ.Categorys.Category.LegacyIdERExternal IdInteger
WS_UpdateCategoryRQ.Categorys.Category.CategorySetIdERThe Category Set that uniquely identifies from WS_CategorySetRSInteger
WS_UpdateCategoryRQ.Categorys.Category.NameERCategory NameString Length:1 - 200
WS_UpdateCategoryRQ.Categorys.Category.DescriptionEOCategory DescriptionString Length:1 - 999,999
WS_UpdateCategoryRQ.Categorys.Category.TopLevelCategoryEOCategory Setting About Top Level CategoryBoolean
WS_UpdateCategoryRQ.Categorys.Category.IsActiveEOCategory Setting About AvailableBoolean