Lieberman's API Documentation
PLEASE NOTE: THIS API DOCUMENTATION IS FOR EXISTING API USERS ONLY. NO NEW CREDENTIALS WILL BE ISSUED.
Click the links below to view documentation for the methods available in the Lieberman's API.
Throughout the documentation, the term client will be used to refer to the Lieberman's customer that is calling the web service.
Documented Web Methods
GetOrderStatus
https://services.liebermans.net/api/v2/liebermansservice.asmx?op=GetOrderStatus
The GetOrderStatus web method will return status information an Order and its OrderItems.
This web method accepts one input parameter, orderID.
Each OrderItem on the Order has a Status property. The Status will be one of the following values:
Status |
Description |
OnOrder |
Item is on order from publisher/supplier. |
InStock |
Item is in stock at our facility. |
Manufacturing |
Item is in the process of being manufactured. |
Packaging |
Item is in the process of being packaged. |
DamagedReordered |
Item has been damaged and is being reordered. |
Processing |
Item is processing. |
FeedbackRequired |
Some issue exists with the item requires customer feedback before processing can continue. |
Closed |
Item has been shipped. |
CancelledOOS |
Item is out of stock and has been cancelled. Includes items that have been discontinued by the publisher/supplier. |
CancelledReturned |
Item has been cancelled due to being returned by the customer. |
Cancelled |
Item has been cancelled, usually prior to shipping. |
New |
Not currently used. |
SubmitOrder
https://services.liebermans.net/api/v2/liebermansservice.asmx?op=SubmitOrder
The SubmitOrder web method accepts two input parameters, order and options.
The order parameter contains the details of the order and the items to be ordered,
while the options parameter provides instructions on how to process the order.
The Order object contains several properties.
However, when submitting an order using the SubmitOrder method, most of these fields do not need to be supplied.
The fields that are required are as follows:
Field |
Description |
CustomerPONumber |
A number that uniquely idenitifes the order, usually the order number in the client's database. |
ShippingName |
The name the order will ship to. |
ShippingAddress |
The street address the order will ship to. |
ShippingCity |
The city the order will ship to. |
ShippingStateProvince |
The state or province the order will ship to. |
ShippingZipCode |
The ZIP code the order will ship to. |
ShippingCountry |
The country the order will ship to (must be a valid country name, see GetCountries). |
ShippingPhone |
The phone number for the address where the order will ship to. |
ShippingServiceType |
The Shipping Service, either Standard, TwoDay, or StandardOvernight. |
OrderItems |
Defines the items to be ordered. At least one OrderItem record must be supplied. |
The are several ways to define an OrderItem.
For each OrderItem, you can supply a CustomerReferenceNumber (optional - this usually maps to an item ID in the client's database),
and you must supply a Quantity.
For print orders, you can specify the PID:
<OrderItem>
<PID>407779</PID>
<Quantity>1</Quantity>
</OrderItem>
Or, you can specify the PublisherCode and PublisherItemNumber:
<OrderItem>
<PublisherCode>TEL</PublisherCode>
<PublisherItemNumber>6420223</PublisherItemNumber>
<Quantity>1</Quantity>
</OrderItem>
Each Xml fragment listed above describes the same unframed piece of artwork.
When adding services like framing or canvas transfers to an order, you can indicate the artwork to be framed or transferred to canvas in the same manner.
If we were to frame this item, the OrderItem Xml would look like:
<OrderItem>
<PID>407779</PID>
<Quantity>1</Quantity>
<FrameOptions>
<CroppingStyle>None</CroppingStyle>
<MouldingID>222</MouldingID>
<NumberOfMats>2</NumberOfMats>
<TopMatID>101</TopMatID>
<MiddleMatID>0</MiddleMatID>
<BottomMatID>188</BottomMatID>
<TopMatWidthInches>3.0</TopMatWidthInches>
<GlazingID>2</GlazingID>
</FrameOptions>
</OrderItem>
Note: Use 0 to indicate no mat. If this piece was not matted, 0's should be used for TopMatID, MiddleMatID and BottomMatID.
Alternatively, you can also specify the SKU.
Since the SKU contains the framing options, there is no need to specify them separately:
<OrderItem>
<SKU>R407779-Y8F9AGOGDM</SKU>
<Quantity>1</Quantity>
</OrderItem>
Please view the following links to see sample Orders for a variety of products:
Print Order
Frame Order
Canvas Transfer Order
Framed Canvas Transfer Order
Plaque Order
Laminate Order
Validation Errors
If there is an error processing your order, ValidationErrors will be returned.
The data contained in the ValidationErrors element will help you to identify the data needs to be corrected in order for you to be able to submit your order.
There are two types of ValidationErrors, fatal and non fatal.
If no fatal errors occur, then your order will be processed into Lieberman's order fulfillment system (see SubmitOrderOptions below).
SubmitOrderOptions
When submitting an order, it is also necessary to pass in the SubmitOrderOptions.
These options are all boolean values and are defined as follows:
Field |
Description |
ValidateOnly |
If true, the order will not be submitted but will be validated for correctness. If successful, an Order object will be returned that contains pricing information, descriptions, etc. |
FailIfItemOutOfStock |
If true, the order will not be submitted if any item is listed as out of stock (OOS). If false, then orders will be submitted regardless of OOS status, and we will attempt to process them. Please note that if an item is listed as OOS and you have this flag set to false, then you will receive a non-fatal ValidationError AND your order will be submitted. If you set this flag to false, it is recommended that the client pay attention to the OOS validation errors and record them in their database. |
FailOnAnyValidationError |
If true, then orders will not be submitted if any validation error occurs, regardless of whether it is fatal or not. Validation errors are not always fatal, for example a non-fatal validation error will occur if you fill out the OrderDate field when submitting an order. If you are setting FailIfItemOutOfStock to false, then this value must also be false for orders to be submitted. |
SendOrderConfirmationEmail |
If true, and order confirmation email will be sent to the client's email address on file. If false, no email will be sent. |