0% found this document useful (0 votes)
7 views23 pages

API AtelierHUB TecDoc

The document provides technical documentation for the Fashion Omnichannel Software, detailing updates and changes made to the API from 2019 to 2024. It outlines the architectural style, authentication methods, best practices for API calls, and various methods for retrieving data related to fashion goods, orders, and retailers. Additionally, it includes specific input and output formats for different API methods to facilitate integration and usage by developers.

Uploaded by

xogafib161
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views23 pages

API AtelierHUB TecDoc

The document provides technical documentation for the Fashion Omnichannel Software, detailing updates and changes made to the API from 2019 to 2024. It outlines the architectural style, authentication methods, best practices for API calls, and various methods for retrieving data related to fashion goods, orders, and retailers. Additionally, it includes specific input and output formats for different API methods to facilitate integration and usage by developers.

Uploaded by

xogafib161
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

FASHION OMNICHANNEL SOFTWARE

Global Fashion Data Warehouse


ATELIER HUB API

Technical Documentation
Version 3.32

DATE CHANGES
2019-09-20 Added “retailer” filter on GoodsList, GoodsDetailList, GoodsStockList, GoodsStockPointList,
GoodsPriceList
2019-09-24 Added method “RetailersList” (active retailers for Marketplace)
Added field “PurchaseNo” in GetOrderShippingInfo method
2019-09-27 Orders status list updated
2019-09-30 Added “modifiedDate” filter on GoodsStockList, GoodsStockPointList methods
2019-10-15 Added new fields destination in CreateNewOrder and UpdateOrderBuyerInfo
2019-12-11 Added new field ReferencePrice in CreateNewOrder
2020-02-11 Added PhoneNumber in BuyerInfo of CreateNewOrder
2020-04-23 Added “DESCRIPTION” header to activate the optional field “Description” in the method GoodsList
2020-06-15 Added “Surname” and “DestinationSurname” in CreateNewOrder and UpdateOrderBuyerInfo methods
2020-06-22 Added “SIZEPRICE” header to activate the optional array field “SizePrices” in the method GoodsPriceList
2020-08-10 Added “Barcode” field on “SizePrices” array in the method GoodsPriceList
2020-11-12 Added Method ”RetailerStockPointList”, and the field “StockPointId” in CreateNewOrder
2020-11-24 Added “DESCRIPTION”=”ALL” to enable the reading of 3 new fields containing descriptions in GoodsList
2021-01-05 Added filter “barcode” in GoodsList, GoodsDetailList, GoodsPriceList, GoodStockList, GoodStockPointList,
GoodsStockRetailerList
2021-04-08 Activated HTTPS on the production endpoints, some corrections on the document
2021-04-19 Methods RequestedAction, UpdateOrderBuyerInfo and UpdateOrderStatus are deprecated
2021-04-27 Added “DETAILEDSIZE” header – Activates the fields SizeCountry and SizeType on GoodsDetailList
2021-08-03 Added methods GetStepOrder and UpdateStepOkPackage for manage courier labels
2022-02-09 Added querystring modifiedTimestamp accept format YYYYMMDD-hhmmss
2022-03-07 Added Email and Phone in BuyerInfo of CreateNewOrder
2022-04-20 Added ShippingCosts, CustomsCosts, OtherCosts in CreateNewOrder
2022-09-30 Added VatNumber and FiscalCode in BuyerInfo of CreateNewOrder
2023-12-13 Removed Test e Deprecated method
2024-05-15 Added querystring goodIDs accept format comma separated GoodsID
2024-06-10 Added “BARCODEALL” header – Activates the fields IntBarcode and SupBarcode
Atelier FASHION HUB – 3.32

Getting Started

• Architectural style: RESTful Web Service

• Authentication
o Production
▪ URL: furtherly provided – Now is in secured with a certificate (HTTPS)
▪ End Point authentication: Username / Password (furtherly provided)
▪ Each Marketplace have a Username and Password for identification to be sent in each
method call by two headers: USER_MKT and PWD_MKT
▪ Notes: 200 calls per day are available per each Marketplace
• Language choose
o Choose of the language by LANGUAGE header – accepted value: en (English) it (Italian)
all(entrambe)
• Automatic paging
o All methods are subject to paging that can be set by the Marketplace. Calls must be made with
PageNum and PageSize parameters. For further specifications see paragraph Best practices

Best Practices

• Optimal call sequence

o Methods relating to the catalog


1. Basic Data, to be called in the following order (always before GoodsList):
• SeasonList
• BrandList
• CategoryList
• GenderList
• ColorList

2. Full items (with prices, stock and photo link):


• GoodsList
• GoodsDetailList

3. Media
• Download from url as specified in GoodsDetailList

4. Data that varies with high frequency: prices and stock


• GoodsPriceList
• GoodsStockList

o Methods relating to orders


1. Basic Data:
• OrderStatusList
Atelier FASHION HUB – 3.32

2. Place orders:
• CreateNewOrder

3. Check order status:


• GetOrderStatus

• Call frequency and suggested paging when necessary

1. GoodsList?modifiedTimestamp= YYYYMMDD-hhmmss AND


GoodsDetailList?modifiedTimestamp= YYYYMMDD-hhmmss : 3 times a day
(PageSize=500)
2. GoodsPriceList?modifiedTimestamp= YYYYMMDD-hhmmss Once 3 hour (PageSize=500)
3. GoodsStockList?modifiedTimestamp= YYYYMMDD-hhmmss Once every
30 min (PageSize=200)
4. GoodsStockList (?GoodsID) Before each order line
5. OrderStatusList Once at installation or per our suggestion
6. CreateNewOrder whenever you want to place an order
7. GetOrderStatus Every 10 min

YYYYMMDD-hhmmss must be the timestamp of the previous call


However, it is possible to perform an overall call for each retailers once a day

• Concurrency calls
Max 20 call per minute

• Details for RequestedAction


The method will return the name of the method that need to be called immediately after in
addition to ordinary schedules.
Possible values:
• GoodsStockList
• GoodsStockPointList
• GoodsPriceList

• How to place an order


The method is: CreateNewOrder
Mandatory parameters: OrderID (unique, generated by the marketplace), Retailer (provided by
our method: GoodsStockPointList), BuyerInfo, GoodsList
Optional parameter: Point (provided by our method: GoodsStockPointList)
Atelier FASHION HUB – 3.32

Technical documentation
General
1. Methods Authentication (mandatory only for the production endpoint)
Headers:
USER_MKT – Marketplace Username
PWD_MKT – Marketplace Password
2. Language and other preferences
Headers:
LANGUAGE – (optional) Choose the API language (accepted values: en (English) , it (Italian))
Note: If this header isn’t specified or if it is different from any accepted value, the language choosen is
always English
DESCRIPTION – (optional) in the GoodsList method
Value “ON” activates the field “Description”
Value “ALL” activates the fields “Description”, “ShortDescription”, “SpecialDescription”
SIZEPRICE – (optional) If its value is equal to “ON” it activates an array field called “SizePrices” in the
GoodsPriceList method. The field contains the list of the prices for each size, if they’re different otherwise
it’s a void array.
DETAILEDSIZE – (optional) If its value is equal to “ON” it activates the fields “SizeCountry” and “SizeType” in
the method GoodsDetailList
BARCODEALL – (optional) If its value is equal to “ON” it activates the fields “IntBarcode” (internal barcode)
and “SupBarcode” (supplier barcode/GTIN) in the method GoodsDetailList, GoodsStockList,
GoodsStockPointList, , GoodsStockRetailerList

Basic Data
1. BrandList
Input: N/A
Output: ID, Name, Series
{
"BrandList": {
"Brand": [
{
"ID":1",
"Name":"Aglini"
},
{
"ID":"2",
"Name":"Gucci"
}
]
}
}
2. SeasonList
Input: N/A
Output: Season

{
"SeasonList": {
"Season": [
{
"ID":20",
Atelier FASHION HUB – 3.32

"Name":"FW18"
},
{
"ID":"21",
"Name":"SS18"
}
]
}
}

3. ColorList
Input: N/A
Output: SuperColor, ColorName
{
"ColorList": {
"Color": [
{
"SuperColor": "White",
"ColorName": "Milk"
},
{
"SuperColor": "",
"ColorName": ""
}
]
}
}

4. OrderStatusList
Input: N/A
Output: StatusID, StatusName
{
"OrderStatusList": {
"Status": [
{
"StatusID": "10000002",
"StatusName": "Valid"
},
{
"StatusID": "10000004",
"StatusName": "Confirmed"
},
{
"StatusID": "10000003",
"StatusName": "Shipped"
},
{
"StatusID": "10000006",
"StatusName": "Checked"
},
{
"StatusID": "10000011",
"StatusName": "Out of Stock"
},
{
"StatusID": "100000021",
"StatusName": "Canceled"
},
{
"StatusID": "100000022",
"StatusName": "Management"
}
Atelier FASHION HUB – 3.32

]
}
}

5. RetailersList
Input: N/A
Output: ID, Name

{
"RetailersList": {
"Retailer": [
{
"ID": "0",
"Name": "Atelier On Web"
}
]
}
}

6. GenderList
Input: N/A
Output: ID, Name
{
"GenderList": {
"Gender": [
{
"ID": "1",
"Name": "WOMAN"
},
{
"ID": "2",
"Name": "MAN"
}
]
}
}

7. CategoryList
Input: N/A
Output: ID, Name, ParentID, ParentName, GenderID
{
"CategoryList": {
"Category": [ {
"ID": "5032235",
"Name": "jacket",
"ParentID": "1",
"ParentName": "Clothing-Up",
"GenderID": "1"
} ]
}
}
Atelier FASHION HUB – 3.32

8. SubCategoryList
Input: N/A
Output: SubCategoryID, SubCategoryName , CategoryID, CategoryName, ParentID, ParentName, GenderID
{
"SubCategoryList": {
"SubCategory": [ {
"SubCategoryID": "26451258",
"SubCategoryName": "blazer",
"CategoryID": "5032235",
"CategoryName": "jacket",
"ParentID": "1",
"ParentName": "Clothing-Up",
"GenderID": "1"
} ]
}
}

9. RetailerStockPointList?retailer=
Input: retailer
Output:
{
"RetailerStockPoints":
{
"Retailer": [{
"RetailerID": "287",
"RetailerName": "BAMBOO SPA",
"StockPoints": [{
"ID": "3",
"Name": "BAMBOO2 FR"
},
{
"ID": "5",
"Name": "BAMBOO2 IT"
}]
}]
}
}
Atelier FASHION HUB – 3.32

Goods
10. GoodsList
Input: N/A
Output: ID, Model, Variant, Season, Collection, SupplierID, BrandID, ParentCategoryID, CategoryID,
GenderID, Code, GoodsName, BrandReferencePriceIT, Stock, MainPicture, CreatedTime, ModifiedTime,
SubCategoryID, Description (optional)
{
"GoodsList": {
"Good": [
{
"ID": "1687",
"Model": "598ALA",
"Variant": "LABAM203",
"Season": "",
"Collection": "",
"BrandID": "",
"ParentCategoryID": "",
"CategoryID": "",
"GenderID": "",
"Code": "598ALA LABAM203 F502.50BLUC",
"GoodsName": "",
"Description": "", //Optional – See: “General - Language and other preferences”
"ShortDescription": "", //Optional – See: “General - Language and other pref.”
"SpecialDescription": "", //Optional – See: “General - Language and other pref.”
"InStock": "1",
"MainPicture": "",
"CreatedTime": "",
"ModifiedTime": "",
"SubCategoryID": "",
}
]
}
}

10.a. GoodsList?pageNum=&pageSize=
Input: pageNum, pageSize
It returns records per page according to specific paging options! pageNum starts from 1
Returned JSON is the same as GoodsList
10.b. GoodsList?pageNum= &pageSize=&categoryID=
Input: categoryID
It returns only goods under a specific category
Returned JSON is the same as GoodsList
10.c. GoodsList?pageNum= &pageSize=&seasonID=
Input: seasonID
It returns only goods under a specific season
Returned JSON is the same as GoodsList
10.d. GoodsList?pageNum= &pageSize=&seasonID=&categoryID=
Input: seasonID, categoryID
It returns only goods under a specific season and category
Returned JSON is the same as GoodsList
Atelier FASHION HUB – 3.32

10.e. GoodsList?GoodsID=
Input: GoodsID
Returned JSON is the same as GoodsList

10.f. GoodsList?createdTime=YYYYMMDD& modifiedTime= YYYYMMDD


Input: createdTime, modifiedTime
It returns only goods which have been created or modified since a specified time
10.g. GoodsList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
10.h. GoodsList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode
10.i. GoodsList?modifiedTimestamp= YYYYMMDD-hhmmss
Input: modifiedTimestamp
It returns only goods which have been modified since a specified timestamp
10.j. GoodsList?goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: goodIDs, accept format comma separated GoodsID (max 100 element)
Atelier FASHION HUB – 3.32

11. GoodsDetailList
Input: N/A
Output: ID, SuperColor, Color, Fabric, Composition, SizeAndFit, MadeIn, Stock\Size, Stock\Qty, Picture\No,
Picture\PictureUrl, Picture\PictureThumbUrl, CreatedTime, ModifiedTime
{
"GoodsDetailList": {
"Good": [ {
"ID": "1687",
"SuperColor": "Black",
"Color": "Black and grey",
"Fabric": "",
"Composition": "100% cotton",
"SizeAndFit": "Model wears size M",
"MadeIn": "ITALY",
"SizeCountry": "IT", //Optional – See: “General - Language and other preferences”
"SizeType": "Shirt Woman", //Optional – See: “General - Language and other pref.”
"Stock": {
"Item": [
{
"Barcode": "8002592637545",
"IntBarcode": "2101234567890",//Optional – See: “General – Language..”
"SupBarcode": "8002592637545", //Optional – See: “General – Language..”
"Size": "34",
"Qty": "3"
},
{
"Barcode": "8079426358877",
"Size": "35",
"Qty": "4"
}
]
},
"Pictures": {
"Picture": [
{
"No": "1",
"PictureUrl": "",
"PictureThumbUrl": ""
},
{
"No": "2",
"PictureUrl": "",
"PictureThumbUrl": ""
}
]
},
"CreatedTime": "",
"ModifiedTime": ""
} ]}}

11.a. GoodsDetailList?pageNum= &pageSize=


Input: pageNum, pageSize.
It returns records per page according to specific paging options! pageNum starts from 1
Returned JSON is the same as GoodsDetailList
11.b. GoodsDetailList?pageNum= &pageSize=&categoryID=
Input: categoryID
It returns only goods under a specific category
Returned JSON is the same as GoodsDetailList
Atelier FASHION HUB – 3.32

11.c. GoodsDetailList?pageNum= &pageSize=&seasonID=


Input: seasonID
It returns only goods under a specific season
11.d. GoodsDetailList?pageNum= &pageSize=&seasonID=&categoryID=
Input: seasonID , categoryID
It returns only goods under a specific season and category
11.e. GoodsDetailList?goodslD=
Input: goodslD
Returned JSON is the same as GoodsDetailList
11.f. GoodsDetailList?createdTime=YYYYMMDD& modifiedTime= YYYYMMDD
Input: createdTime, modifiedTime
It returns only goods created or modified since a specified time
11.g. GoodsDetailList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
11.h. GoodsDetailList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode
11.i. GoodsDetailList?modifiedTimestamp= YYYYMMDD-hhmmss
Input: modifiedTimestamp
It returns only goods modified since a specified timestamp
11.j. GoodsDetailList?goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: goodIDs, accept format comma separated GoodsID (max 100 element)
Atelier FASHION HUB – 3.32

12. GoodsStockList
Input: N/A
Output: GoodslD, Stock\Size, Stock\Qty
{
"GoodsStockList": {
"Goods": [
{
"ID": "1687",
"Stocks": {
"Stock": [
{
"Barcode": "8025926375485",
"IntBarcode": "2101234567890",//Optional – See: “General …”
"SupBarcode": "8002592637545", //Optional – See: General …”
"Size": "35",
"Qty": "10"
},
{
"Barcode": "8089256375485",
"Size": "34",
"Qty": "8"
}
]
}
}
]
}}
12.a. GoodsStockList?pageNum= &pageSize=
Input: pageNum, pageSize
Returned JSON is the same as GoodsStockList
12.c. GoodsStockList?pageNum= &pageSize=&categoryID=
Input: categoryID
Returned JSON is the same as GoodsStockList
12.d. GoodsStockList?pageNum= &pageSize=&SeasonID=
Input: seasonID
Returned JSON is the same as GoodsStockList
12.e. GoodsStockList?pageNum= &pageSize=&SeasonID=&categoryID=
Input: seasonID, categoryID
Returned JSON is the same as GoodsStockList
12.f. GoodsStockList?goodsID=
Input: goodsID
Returned JSON is the same as GoodsStockList
12.g. GoodsStockList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
12.h. GoodsStockList?modifiedTime= YYYYMMDD
Input: modifiedTime
It returns only goods whose stock availability is changed since a specified time
12.i. GoodsStockList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode
12.j. GoodsStockList?modifiedTimestamp= YYYYMMDD-hhmmss
Atelier FASHION HUB – 3.32

Input: modifiedTimestamp
It returns only goods whose stock availability is changed since a specified timestamp
12.k. GoodsStockList?goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: goodIDs, accept format comma separated GoodsID (max 100 element)

13. GoodsStockRetailerList
Input: N/A
Output: GoodslD, Retailer, Stock\Size, Stock\Qty
{
"GoodsStockList": {
"Goods": [
{
"ID": "1687",
"Retailer": "Retailer1,
"Stocks": {
"Stock": [
{
"Barcode": "8025926375485",
"IntBarcode": "2101234567890",//Optional – See: “General …”
"SupBarcode": "8002592637545", //Optional – See: General …”
"Size": "35",
"Qty": "10"
},
{
"Barcode": "8089256375484",
"Size": "34",
"Qty": "8"
}
]
}
}
]
}
}
13.a. GoodsStockRetailerList?pageNum= &pageSize=
Input: pageNum, pageSize
Returned JSON is the same as GoodsStockPointList
13.b. GoodsStockRetailerList?pageNum= &pageSize=&categoryID=
Input: categoryID
Returned JSON is the same as GoodsStockPointList
13.c. GoodsStockRetailerList?pageNum= &pageSize=&SeasonID=
Input: seasonID
Returned JSON is the same as GoodsStockPointList
13.d. GoodsStockRetailerList?pageNum= &pageSize=&SeasonID=&categoryID=
Input: seasonID, categoryID
Returned JSON is the same as GoodsStockPointList
13.e. GoodsStockRetailerList?goodsID=
Input: goodsID
Returned JSON is the same as GoodsStockList
13.f. GoodsStockRetailerList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
Atelier FASHION HUB – 3.32

13.g. GoodsStockRetailerList?modifiedTime= YYYYMMDD


Input: modifiedTime
It returns only goods whose stock availability is changed since a specified time
13.h. GoodsStockRetailerList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode
13.i. GoodsStockRetailerList?modifiedTimestamp= YYYYMMDD-hhmmss
Input: modifiedTimestamp
It returns only goods whose stock availability is changed since a specified timestamp
13.j. GoodsStockRetailerList?goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: Input: goodIDs, accept format comma separated GoodsID (max 100 element)

14. GoodsStockPointList
Input: N/A
Output: GoodslD, Retailer, Points, GPS, Shared,Stock\Size, Stock\Qty
{
"GoodsStockPointList": {
"StockPoint": [
{
"Retailer": "Retailer1"
"Points": [
{
"Point": "Point1"
"GPS": "45.465454, 9.186516"
"Shared" : "False"
"Goods": [
{
"ID": "1687",
"Stocks": {
"Stock": [
{
"Barcode": "8025926375485",
"IntBarcode": "2101234567890",
"SupBarcode": "8002592637545",
"Size": "35",
"Qty": "2"
},
{
"Barcode": "8089256375485",
"Size": "34",
"Qty": "4"
}
]
}
}
]
}
]
}
]
}}
14.a. GoodsStockPointList?pageNum= &pageSize=
Input: pageNum, pageSize
Returned JSON is the same as GoodsStockPointList
14.b. GoodsStockPointList?pageNum= &pageSize=&categoryID=
Atelier FASHION HUB – 3.32

Input: categoryID
Returned JSON is the same as GoodsStockPointList
14.c. GoodsStockPointList?pageNum= &pageSize=&SeasonID=
Input: seasonID
Returned JSON is the same as GoodsStockPointList
14.d. GoodsStockPointList?pageNum= &pageSize=&SeasonID=&categoryID=
Input: seasonID, categoryID
Returned JSON is the same as GoodsStockPointList
14.e. GoodsStockPointList?goodsID=
Input: goodsID
Returned JSON is the same as GoodsStockList
14.f. GoodsStockPointList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
14.g. GoodsStockPointList?modifiedTime= YYYYMMDD
Input: modifiedTime
It returns only goods whose stock availability is changed since a specified time
14.h. GoodsStockPointList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode
14.i. GoodsStockPointList?modifiedTimestamp= YYYYMMDD-hhmmss
Input: modifiedTimestamp
It returns only goods whose stock availability is changed since a specified timestamp
14.j. GoodsStockPointList? goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: Input: goodIDs, accept format comma separated GoodsID (max 100 element)
Atelier FASHION HUB – 3.32

15. GoodsPriceList
Input: N/A
Output: ID, BrandReferencePrice, BrandReferencePriceExVAT, Discount, NetPrice, Currency, PercentTax,
Country, SizePrices (array - optional)
{
"GoodsPriceList": {
"Price": [
{
"ID": "1687",
"Retailers": [
{
"Retailer": "Retailer1",
"BrandReferencePrice": "220,00",
"BrandReferencePriceExVAT": "180,33",
"Discount": "18",
"NetPrice": "147,87",
"Currency": "EUR",
"PercentTax": "22",
"Country": "IT",
"SizePrices": [ //Optional – See: “General - Language and other preferences”
{
"Size": "30",
"Barcode": "2110461085633",
"SizeBrandReferencePrice": "200,00",
"SizeBrandReferencePriceExVAT": "163,93"
"SizeDiscount": "20"
"SizeNetPrice": "131,14"
},
{
"Size": "32",
"Barcode": "2014121696170",
"SizeBrandReferencePrice": "220,00",
"SizeBrandReferencePriceExVAT": "180,33"
"SizeDiscount": "18"
"SizeNetPrice": "147,87"
}
]
}
]
}
]
}
}

Notes: about the field SizePrices


a) the field is optional and can be enabled adding the header “SIZEPRICE”=”ON” to the call (see “General –
Language and other preferences”)
b) if enabled, the SizePrices field will contain an array with sizes and prices only if the good has different
prices specified for each size
c) if enabled and the good doesn’t have any different prices for each size, the SizePrices field will be a void
array, I.E. “SizePrices” = []
d) if enabled and the good has different prices for each size, the “old” fields BrandReferencePrice,
BrandReferencePriceExVAT and NetPrice will contain the maximum price of the good independently by
the size.

15.a. GoodsPriceList?pageNum= &pageSize=


Input: pageNum, pageSize.
It returns records per page according to specific paging options! pageNum starts from 1
Atelier FASHION HUB – 3.32

Returned JSON is the same as GoodsPriceList


15.b. GoodsPriceList?pageNum= &pageSize=&categoryID=
Input: categoryID.
It returns only prices under a specific category
Returned JSON is the same as GoodsPriceList
15.c. GoodsPriceList?pageNum= &pageSize=&seasonID=
Input: seasonID
It returns only prices under a specific season
Returned JSON is the same as GoodsPriceList
15.d. GoodsPriceList?pageNum= &pageSize=&seasonID=&categoryID=
Input: seasonID, categoryID
It returns only prices under a specific season
Returned JSON is the same as GoodsPriceList
15.e. GoodsPriceList?goodsID=
Input: goodsID.
Returned JSON is the same as GoodsPriceList
15.f. GoodsPriceList?createdTime=YYYYMMDD& modifiedTime= YYYYMMDD
Input: createdTime, modifiedTime
It returns only prices of goods created or modified since a specified time.
15.g. GoodsPriceList?retailer=RETAILER NAME
Input: the name of the retailer
It returns only goods from the specified retailer
15.h. GoodsPriceList?barcode=BARCODE
Input: barcode
It returns only goods with the specified barcode

15.i. GoodsPriceList?modifiedTimestamp= YYYYMMDD-hhmmss


Input: modifiedTimestamp
It returns only prices of goods created or modified since a specified time.
15.j. GoodsPriceList?goodIDs= GoodsID1, GoodsID2,….. .GoodsID100
Input: goodIDs, accept format comma separated GoodsID (max 100 element)
Atelier FASHION HUB – 3.32

16. GoodsRemoved
Input: N/A
Output: ID, RemovedTime
{
"GoodsList": {
"Good": [
{
"ID": "821501",
"RemovedTime": "2019-05-08T08:00:00"
},
{
"ID": "954575",
"RemovedTime": "2019-05-08T08:00:00"
}
]
}
}

16.a. GoodsRemoved?pageNum= &pageSize=


Input: pageNum, pageSize.
It returns records per page according to specific paging options! pageNum starts from 1
Returned JSON is the same as GoodsRemoved

16.b. GoodsRemoved?pageNum= &pageSize=&categoryID=


Input: categoryID.
It returns only removed goods under a specific category
Returned JSON is the same as GoodsRemoved

16.c. GoodsRemoved?pageNum= &pageSize=&seasonID=


Input: seasonID
It returns only removed goods under a specific season
Returned JSON is the same as GoodsRemoved

16.d. GoodsRemoved?pageNum= &pageSize=&seasonID=&categoryID=


Input: seasonID, categoryID
It returns only removed goods under a specific season
Returned JSON is the same as GoodsRemoved

16.e. GoodsRemoved?goodsID=
Input: goodsID.
Returned JSON is the same as GoodsRemoved

16.f. GoodsRemoved? removedTime=YYYYMMDD


Input: removedTime
It returns only goods which have been removed since a specified time.
Atelier FASHION HUB – 3.32

Orders & Shipping

17. CreateNewOrder (POST)


Input: json

{
"OrderId": "",
"Retailer": "",
"StockPointId": "", //See further documentation for activation”
"BuyerInfo": {
"Name": "",
"Surname": "",
"Address": "",
"ZipCode": "",
"City": "Roma",
"PhoneNumber": "",
"Email": "",
"VatNumber": "",
"FiscalCode": "",
"ISOcountry": "IT",
"Courier": "",
"Notes": "",
"TypeShipping": "Direct / Logistic",
"Identification1": "",
"Identification2": "",
"DestinationName": "",
"DestinationSurname": "",
"DestinationAddress": "",
"DestinationZipCode": "",
"DestinationCity": "",
"DestinationISOcountry": "",
"ShippingCosts": "",
"CustomsCosts": "",
"OtherCosts": ""
},
"GoodsList": {
"Good": [
{
"ID": "",
"Size": "",
"Qty": "",
"Price": "",
"Currency": "",
"ReferencePrice": ""
}
]
}
}

Required: OrderId, Retailer - BuyerInfo: Name, Address, ZipCode, ISOcountry, TypeShipping – Good: ID,
Size, Qty, Price, Currency
Optional: Surname (is optional only if the field name contains both the name and the surname), Courier,
Notes, Identification1, Identification2, DestinationName, DestinationSurname, DestinationAddress,
DestinationZipCode, DestinationCity, DestinationISOcountry, ReferencePrice, PhoneNumber, Email,
VatNumber, FiscalCode, ShippingCosts, CustomsCosts, OtherCosts
Notes:
Atelier FASHION HUB – 3.32

Name: can contain both the name and the surname: only in this case the field Surname is optional
TypeShipping: ‘Direct’ for shipping to the final customer, ‘Logistic’ for shipping to the central warehouse
Identification1 and Identification2: recognition of identifiers for logistics
Price: this field must be VAT-free and net of commissions
ReferencePrice: this field must be BrandReferencePrice of methods GoodsPriceList

Output:
{
"Response": {
"Result": "Success / Failed",
"Message": ""
}
}

If the result is “Failed”, a clear message is required as in the following examples:


1, Order ID exists
2, Good ID does not exist
3, Good Stock is not enough
4, System Error

18. GetOrderStatusByOrderID?orderID=
Input: orderID
Output:

{
"OrderStatus": {
"Order": {
"ID": "101",
"StatusCode": "10000005",
"StatusName": "Shipped",
"Notes": "",
"CreateTime": ""
}
}
}

19. GetOrderStatusByOrderIDList?orderIDList=
Input: orderIDList
Output:

{
"OrderStatus": {
"Order": [
{
"ID": "101",
"StatusCode": "100000005",
"StatusName": "Shipped",
"Notes": "",
"CreateTime": ""
},
{
"ID": "102",
Atelier FASHION HUB – 3.32

"StatusCode": "100000005",
"StatusName": "Shipped",
"Notes": "",
"CreateTime": ""
}
]
}
}

20. GetOrderStatusByTs?date=
Input: date – format: YYYYMMDD
Output:

{
"OrderStatus": {
"Order": [
{
"ID": "101",
"StatusCode": "100000005",
"StatusName": "Shipped",
"Notes": "",
"CreateTime": ""
},
{
"ID": "102",
"StatusCode": "100000005",
"StatusName": "Shipped",
"Notes": "",
"CreateTime": ""
}
]
}
}

21. CancelOrder?orderID=
Input: orderIDList
Output:

{
"Response": {
"Result": "Success / Failed",
"Message": ""
}
}

If the result is “Failed”, a clear message is required as in the following examples:


1, Order shipped
2, The order id does not exist
3, The order cannot be canceled
4, System Error

22. UpdateOrderStatus?orderID= &statusID=


Input: orderID, statusID
Output:
{
"Response": {
"Result": "Success / Failed",
"Message": ""
Atelier FASHION HUB – 3.32

}
}

If the result is “Failed”, a clear message is required as in the following examples:


1, The status cannot be changed
2, System Error
Note: status can be changed only if the order is in the status “Valid”

23. GetOrderShippingInfo?orderID=
Input: orderID (note that orderID is a long string id)

Output:

{
"ShippingInfo": {
"Name": "RH",
"Address": "Test China",
"Mobile": "13890213141",
"ZipCode": "610000",
"City": "Shangai",
"Country": "China",
"Courier": "Fedex 123456789",
"Notes": "",
"Boxes": "1",
"Weight": "",
"Dimension": "",
"PurchaseNo": "",
"TrackingNo": "",
"ShipDate": "",
"Fee": {
"Ship": "",
"Customs": "",
"Extras": ""
}
}
}

24. GetStepOrderByOrderID?orderID=
Input: orderID
Output:

Notes:
The managed Steps are 2: Ready and OK Package
The steps can only be queried after the order status is HANDLING

{
"OrderStep": {
"Order": {
"ID": "101",
"Step": "Ready"
}
}
}
Atelier FASHION HUB – 3.32

25. GetStepOrderByOrderIDList?orderIDList=
Input: orderIDList
Output:

{
"OrderStep": {
"Order": [
{
"ID": "101",
"Step": "Ready"
},
{
"ID": "102",
"Step": "OK Package"
}
]
}
}

26. GetStepOrderByTs?date=
Input: date – format: YYYYMMDD
Output:

{
"OrderStep": {
"Order": [
{
"ID": "101",
"Step": "Ready"
},
{
"ID": "102",
"Step": "OK Package"
}
]
}
}

27.UpdateStepOkPackage?orderID=
Input: orderID
Notes:
The step can be set only if the order has status HANDLING and step Ready

Output:
{
"Response": {
"Result": "Success / Failed",
"Message": ""
}
}

You might also like