Tier1 PO
This interface is applicable for data integration API, read Api Access Process first
Request address
- API
Environment | URL |
---|---|
Test | https://api-cn-t.lenovo.com/uat/v1.0/supply_chain/scc/open_platform/data/sync/t1/po |
Prod | https://api-cn.lenovo.com/v1.0/supply_chain/scc/open_platform/data/sync/t1/po |
- FTP
Environment | Partner directory | Lenovo directory | File name |
---|---|---|---|
Test | /Planning/SCC/{appName}/t1/po/ | /Planning/SCC/{appName}/t1/po/feedback/ | po_{crud}_{yyyyMMddHHmmss}_ |
Prod | /Planning/SCC/{appName}/t1/po/ | /Planning/SCC/{appName}/t1/po/feedback/ | po_{crud}_{yyyyMMddHHmmss}_ |
Sample :/Planning/SCC/LCFC/t1/po/po_update_20220928123000_001
Frequency | Time | Transfer mode | Key |
---|---|---|---|
Weekly Monday | 00:10:00 | API,FTP,UI(upload) | bu + vendor_code + vendor_pn + lenovo_pn + po_no + po_line + version |
Request data description
Param | key | Type | Required | Length | Description | Example |
---|---|---|---|---|---|---|
uid | String | 32 | Unique id | |||
bu | Y | String | Y | 50 | ThinkNB,IdeaNB,ThinkOption,ThinkDT,IdeaOption,IdeaDT,WS,Smart Device,ISG,Mobile Phone,Mobile Tablet | ThinkNB |
vendor_code | Y | String | Y | 30 | Vendor Code assigned by Lenovo | 123456 |
vendor_name | String | option | 500 | ABCD | ||
alternative_group | String | option | 100 | AlterGrp001 | ||
material_type | String | Y | 10 | BS,DB,DS | DB | |
order_type | String | option | 20 | Real PO | ||
vendor_pn | Y | String | Y | 200 | 4400AA | |
vendorpn_desc | String | Y | 500 | 4400AAdesc | ||
lenovo_pn | Y | String | Y | 200 | SA4010215 | |
uom | String | option | 20 | unit of measure | pcs | |
lead_time | String | Y | 50 | purchase lead time | 13 | |
purchase_type | String | option | 20 | Direct Ship or VMI | ||
action | String | option | 20 | Cancel / Delay / Expedite / Past Due | ||
order_status | String | option | 20 | released_PO | ||
scheduled_receipt_order_type | String | option | 20 | |||
po_no | Y | String | Y | 20 | PO0000120 | |
po_line | Y | String | Y | 20 | 15 | |
order_date | String | option | 20 | 2022/12/26 10:00 | ||
forecast_qty | Number | Y | 10 | Y for BU= Mobile Phone | 5000 | |
total_qty | Number | Y | 13,3 | PO | 40000 | |
open_qty | Number | Y | 10 | PO | 6000 | |
need_date | Date | option | yyyy-mm-dd | 2023/1/1 | ||
due_date | Date | option | yyyy-mm-d | 2023/1/1 | ||
need_ship_date | Date | option | Requet ETD,DATE(yyyy-mm-dd) | 2023/1/1 | ||
confirm_ship_date | Date | option | DATE(yyyy-mm-dd) | 2023/1/15 | ||
buyer_name | String | Y | 20 | Lucy | ||
planner_name | String | option | 20 | Lily | ||
qty_to_reduce_inv_uom | Number | option | 13,3 | |||
need_qty_inv_uom | Number | Y | 13,3 | Y for BU= Mobile Phone | ||
incoterm | String | option | 20 | |||
incoterm_destination | String | option | 50 | |||
storage_location | String | option | 20 | 1802A | ||
version | Y | String | Y | 8 | eg:20211012 | 20221103 |
owner | String | option | 50 |
Response data description
Param | Type | Required | Description |
---|---|---|---|
code | String | Y | 0:successful, other:failed |
msg | String | Y | message |
Request sample
json
{
"batch_id": "100033",
"batch_size": 1,
"seq_id": "1",
"seq_size": 1,
"data": [
{
"bu": "ThinkNB",
"vendor_name": "xxx",
"vendor_code": "1238888321",
"alternative_group": "xe001",
"vendor_pn": "dsad",
"version": "ln1234",
"vendorpn_desc": "123321",
"lenovo_pn": "12312",
"storage_location": "1231",
"po_no": "123123",
"total_qty": 123,
"po_line": "12312",
"lead_time": 13.2,
"open_qty": 100,
"buyer_name": "20222",
"material_type": "DS"
}
]
}
Successful response sample
json
{
"code": "0",
"msg": "request success"
}
Failed response sample
json
{
"code": "E00V00",
"msg": "data verification failed!",
"result": [{
"row": {
"bu": "xxxxxxxxxxxx",
...
},
"verify": [{
"type": "value length exceed",
"fields": "bu"
}]
}]
}