{
"meta": {
"code": 0,
"msg": "",
"error": "",
"request_uri": "/open_api/common/xxx"
},
"response": {}
}| Name | Type | Required | Notes |
|---|---|---|---|
| meta | object | Required | meta |
| ├─ code | number | Required | Status code |
| ├─ msg | string | Required | Exception message corresponding to the status code |
| ├─ error | string | Required | Reserved field |
| ├─ request_uri | string | Required | Interface path |
| response | object | Required | Response data |
| code | Description | Detail |
|---|---|---|
| 200 | success | success |
| 400 | Request parameter error | Request parameter does not exist or format is incorrect. |
| 404 | Interface does not exist | Interface does not exist |
| 405 | Invalid request | This interface does not support requests using this method |
| 500 | System error | Internal server error, please contact us to resolve. |
{
"meta": {
"code": 40067,
"msg": "Product number does not exist.",
"error": "",
"request_uri": "/open_api/merchant/products"
},
"response": {}
}| code | Description | Detail |
|---|---|---|
| 0 | success | Request successful |
| 400 | Parameter missing or incorrect | Parameter missing or incorrect |
| 500 | System error | System error, please contact developer |
| 40057 | Interface call timeout | Interface call timeout |
| 40058 | Too much data, please call the interface in batches. | Too much data, please call the interface in batches |
| 40069 | Operation failed! | Operation failed or partially failed |
response['err_list']. Reference data:{
"meta": {
"code": 40069,
"msg": "Operation failed!",
"error": "",
"request_uri": "/open_api/merchant/products"
},
"response": {
"err_list": [
{
"custom_id": "1s21",
"err_code": 40048,
"err_msg": "The subtitle is too long."
},
{
"custom_id": "121",
"err_code": 40048,
"err_msg": "The subtitle is too long."
}
]
}
}| Product Category ID | Product Category (Chinese) | Product Category (English) |
|---|---|---|
| 1 | Toner | Toner |
| 2 | Emulsion/Lotion | Emulsion/Lotion |
| 3 | Serum | Serum |
| 4 | Cream | Cream |
| 5 | Eye Contour | Eye contour |
| 6 | Cleanser | Cleanser |
| 7 | Sunscreen | Sunscreen |
| 8 | Others | Others |
| 9 | Set | Set |
| 10 | Mask | Mask |
| Price Unit Identifier ID | Symbol | Currency Code | Currency Name |
|---|---|---|---|
| 0 | ¥ | CNY | China - Renminbi |
| 1 | ¥ | JPY | Japan - Yen |
| 2 | $ | USD | United States - Dollar |
| 3 | € | EUR | Eurozone - Euro |
| 4 | £ | GBP | United Kingdom - Pound |
| 5 | ₩ | KRW | South Korea - Won |
| 6 | HK$ | HKD | Hong Kong - Dollar |
| 7 | MOP$ | MOP | Macao - Pataca |
| 8 | NT$ | TWD | Taiwan - New Dollar |
| 9 | ฿ | THB | Thailand - Baht |
| 10 | ₫ | VND | Vietnam - Dong |
| 11 | $ | SGD | Singapore - Dollar |
| 12 | RM | MYR | Malaysia - Ringgit |
| 13 | ៛ | KHR | Cambodia - Riel |
| 14 | ₭ | LAK | Laos - New Kip |
| 15 | K | MMK | Myanmar - Kyat |
| 16 | $ | BND | Brunei - Dollar |
| 17 | Rp | IDR | Indonesia - Rupiah |
| 18 | ₱ | PHP | Philippines - Peso |
| 19 | ₹ | INR | India - Rupee |
| 20 | ৳ | BDT | Bangladesh - Taka |
| 21 | $ | AUD | Australia - Dollar |
| 22 | Fr | CHF | Switzerland - Franc |
| 23 | $ | CAD | Canada - Dollar |
| 24 | $ | MXN | Mexico - Peso |
| 25 | $ | NZD | New Zealand - Dollar |
| 26 | ₤ | TRY | Turkey - Lira |
| 27 | kr | DKK | Denmark - Krone |
| 28 | kr | SEK | Sweden - Krona |
| 29 | kr | NOK | Norway - Krone |
| 30 | kr | ISK | Iceland - Krona |
| 31 | KR | EEK | Estonia - Kroon |
| 32 | р. | RUB | Russia - Ruble |
| 33 | د.إ | AED | UAE - Dirham |
| 34 | ₣ | FRF | France - Franc |
| 35 | B. | PAB | Panama - Balboa |
| 36 | R$ | BRL | Brazil - Real |
| 37 | $ | CLP | Chile - Peso |
| 38 | $ | COP | Colombia - Peso |
| 39 | QR. | QAR | Qatar - Riyal |
| 40 | Lei | RON | Romania - Leu |
| 41 | Rs. | LKR | Sri Lanka - Rupee |
| 42 | Rs. | MVR | Maldives - Rufiyaa |
| 43 | Rs. | PRK | Pakistan - Rupee |
| 44 | Rs. | NPR | Nepal - Rupee |
| 45 | Af. | AFA | Afghanistan - Afghani |
| 46 | RI. | IRR | Iran - Rial |
| 47 | ID. | IQD | Iraq - Dinar |
| 48 | £ | SYP | Syria - Pound |
| 49 | £ | LBP | Lebanon - Pound |
| 50 | Dr. | JOD | Jordan - Dinar |
| 51 | R. | SAR | Saudi Arabia - Riyal |
| 52 | D. | KWD | Kuwait - Dinar |
| 53 | D. | BHD | Bahrain - Dinar |
| 54 | RO. | OMR | Oman - Rial |
| 55 | YRL. | YER | Yemen - Rial |
| 56 | YD. | YDD | Yemen - Dinar |
| 57 | £ | TRL | Turkey - Pound |
| 58 | $ | FJD | Fiji - Dollar |
| 59 | $ | SBD | Solomon Islands - Dollar |
| 60 | ZL. | PLZ | Poland - Zloty |
| 61 | Kr. | CSK | Czech Republic - Koruna |
| 62 | FT. | HUF | Hungary - Forint |
| 63 | Dr. | YUD | Yugoslavia - New Dinar |
| 64 | Lev. | BGL | Bulgaria - Lev |
| 65 | Af. | ALL | Albania - Lek |
| 66 | Q. | GTQ | Guatemala - Quetzal |
| 67 | ¢ | SVC | El Salvador - Colon |
| 68 | L. | HNL | Honduras - Lempira |
| 69 | CS. | NIC | Nicaragua - Cordoba |
| 70 | ¢ | CRC | Costa Rica - Colon |
| 71 | Pes. | CUP | Cuba - Peso |
| 72 | $ | BSD | Bahamas - Dollar |
| 73 | $ | JMD | Jamaica - Dollar |
| 74 | G. | HTG | Haiti - Gourde |
| 75 | $ | DOP | Dominican Republic - Peso |
| 76 | $ | TTD | Trinidad and Tobago - Dollar |
| 77 | $ | BBD | Barbados - Dollar |
| 78 | B. | VEB | Venezuela - Bolivar |
| 79 | $ | GYD | Guyana - Dollar |
| 80 | Fl. | SRG | Suriname - Guilder |
| 81 | S/. | PES | Peru - New Sol |
| 82 | S/. | ECS | Ecuador - Sucre |
| 83 | P. | BOP | Bolivia - Peso |
| 84 | P. | ARP | Argentina - Peso |
| 85 | Guars. | PYG | Paraguay - Guarani |
| 86 | $ | UYP | Uruguay - New Peso |
| 87 | £ | EGP | Egypt - Pound |
| 88 | LD. | LYD | Libya - Dinar |
| 89 | £ | SDP | Sudan - Pound |
| 90 | TD. | TND | Tunisia - Dinar |
| 91 | AD. | DZD | Algeria - Dinar |
| 92 | DH. | MAD | Morocco - Dirham |
| 93 | UM. | MRO | Mauritania - Ouguiya |
| 94 | F. | XOF | WAEMU - Franc |
| 95 | D.G. | GMD | Gambia - Dalasi |
| 96 | PG. | GWP | Guinea-Bissau - Peso |
| 97 | GS. | GNS | Guinea - Syli |
| 98 | Le. | SLL | Sierra Leone - Leone |
| 99 | $ | LRD | Liberia - Dollar |
| 100 | ¢ | GHC | Ghana - Cedi |
| 101 | N. | NGN | Nigeria - Naira |
| 102 | CFAF. | XAF | Central African CFA Franc |
| 103 | EK. | GQE | Equatorial Guinea - Ekwele |
| 104 | R. | ZAR | South Africa - Rand |
| 105 | F. | DJF | Djibouti - Franc |
| 106 | So. | SOS | Somalia - Shilling |
| 107 | Sh. | KES | Kenya - Shilling |
| 108 | Sh. | UGS | Uganda - Shilling |
| 109 | Sh. | TZS | Tanzania - Shilling |
| 110 | RF. | RWF | Rwanda - Franc |
| 111 | F. | BIF | Burundi - Franc |
| 112 | Z. | ZRZ | Zaire |
| 113 | K. | ZMK | Zambia - Kwacha |
| 114 | F. | MCF | Madagascar - Franc |
| 115 | RP. | SCR | Seychelles - Rupee |
| 116 | Rp. | MUR | Mauritius - Rupee |
| 117 | $ | ZWD | Zimbabwe - Dollar |
| 118 | F. | KMF | Comoros - Franc |
| Dimension ID | Dimension Name (Chinese) | Dimension Name (English) |
|---|---|---|
| pore | Pores | Pores |
| blackhead | Blackheads | Blackheads |
| speckle | Spots | Spots |
| wrinkle | Wrinkles | Wrinkles |
| acne | Acne | Acne |
| sensitive | Sensitivity | Sensitive skin |
| black_rim_of_eye | Dark Circles | Dark circles |
| water | Moisture | Moisture |
| oil | Oil | Oil |
| skin_vitality | Skin Vitality | Skin Vitality |
| glow | Radiance | Radiance |
| skin_smoothness | Smoothness | Smoothness |
| firmness | Firmness | Firmness |
| vitality_eye_contour | Eye Contour Vitality | Eye Contour Vitality |
| skin_glow | Radiance | Radiance |
| eye_bags | Eye Bags | Eye Bags |
| eye_sagging | Eyelid Laxity | Eyelids Laxity |
| plump_cheeks | Cheek Volume | Medial Malar |
| low_cheek | Jowl | Jowl |
| mandible_edge | Jawline | Jaw Line |
| crows_feet | Crow's Feet | Crow's Feet |
| under_eye_wrinkle | Periocular Fine Lines | Periocular Fine Lines |
| forehead_wrinkle | Forehead Wrinkles | Forehead Wrinkles |
| nasolabial_folds | Nasolabial Folds | Nasolabial Fold (NLF) |
| narionette_lines | Marionette Lines | Marionette Lines |
| frown_wrinkle | Glabellar Wrinkles | Glabellar Wrinkles |
| lacrimal_groove | Tear Troughs | Tear Troughs |
| neck_lines | Neck Lines | Neck Lines |
| Dimension ID | Severity (Chinese) | Severity (English) |
|---|---|---|
| pore | "1":"Fine","2":"Medium","3":"Coarse" | "1":"Fine","2":"Medium","3":"Coarse" |
| blackhead | "1":"None","2":"Mild","3":"Moderate","4":"Severe" | "1":"None","2":"Mild","3":"Moderate","4":"Severe" |
| speckle | "1":"None","2":"Mild","3":"Moderate","4":"Severe" | "1":"None","2":"Mild","3":"Moderate","4":"Severe" |
| wrinkle | "1":"None","2":"Mild","3":"Moderate","4":"Severe" | "1":"None","2":"Mild","3":"Moderate","4":"Severe" |
| acne | "0":"None","1":"Level Ⅰ","2":"Level Ⅱ","3":"Level Ⅲ","4":"Level Ⅳ" | "0":"None","1":"Level Ⅰ","2":"Level Ⅱ","3":"Level Ⅲ","4":"Level Ⅳ" |
| sensitive | "1":"High skin tolerance","2":"Medium skin tolerance","3":"Mild sensitive skin","4":"Sensitive skin" | "1":"High skin tolerance","2":"Medium skin tolerance","3":"Mild sensitive skin","4":"Sensitive skin" |
| black_rim_of_eye | "1":"None","2":"Mild","3":"Moderate","4":"Severe" | "1":"None","2":"Mild","3":"Moderate","4":"Severe" |
| water | "2":"Healthy","3":"Moderate","4":"Severe" | "2":"Healthy","3":"Moderate","4":"Severe" |
| oil | "2":"Healthy","3":"Moderate","4":"Severe" | "2":"Healthy","3":"Moderate","4":"Severe" |
| skin_vitality | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" |
| glow | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" |
| skin_smoothness | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" |
| firmness | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" |
| vitality_eye_contour | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" | "1":"Very Good","2":"Fairly Good","3":"Moderate","4":"Low" |
| skin_glow | "1":"Very Good","2":"Good","3":"Medium","4":"Poor" | "1":"Very Good","2":"Good","3":"Medium","4":"Poor" |
| eye_bags | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6" |
| eye_sagging | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" |
| plump_cheeks | "0": "None" | "0": "None" |
| low_cheek | "0": "None" | "0": "None" |
| mandible_edge | "0": "None" | "0": "None" |
| crows_feet | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" |
| under_eye_wrinkle | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" |
| forehead_wrinkle | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" |
| nasolabial_folds | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" |
| narionette_lines | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7" |
| frown_wrinkle | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" |
| lacrimal_groove | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6" |
| neck_lines | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" | "0":"Level 0","1":"Level 1","2":"Level 2","3":"Level 3","4":"Level 4","5":"Level 5","6":"Level 6","7":"Level 7","8":"Level 8" |
problem:{"blackhead":[1,2],"speckle":[3,4]}{
"blackhead": [ // Dimension ID
1, // Severity value
2
],
"speckle": [
"1",
"2",
"3",
"4"
]
}| Language Code | Description |
|---|---|
| en | English |
| zh-Hans | Simplified Chinese |
| ja | Japanese |
| ko | Korean |
| th | Thai |
| zh-Hant | Traditional Chinese (Taiwan) |
| zh-Hant-HK | Traditional Chinese (Hong Kong) |
| vi | Vietnamese |
| fr | French |
| tr | Turkish |
| ar | Arabic |
| nl | Dutch |
| es-PA | Spanish (CUPFSA) |
| es-MX | Spanish (MEX) |
| pt | Portuguese |
| Care Stage ID (Nursing stage) | Description (Nursing stage) |
|---|---|
| 1 | Basic care (Essential) |
| 2 | Advanced care (Complementary) |
Step 1: POST /api/v1.6/stores → store_id
Step 2: POST /api/v1.6/employees (multiple times) → employee_ids
Step 3: GET /merchants/{id}/languages → configure languages
Step 4: GET /brands → load available brands
Step 5: GET /product-categories → load product categories
Result: Store is ready to operate ✓Situation: Employee calls in sick
Action: PATCH /employees/{id}/status {"status": "disabled"}
Effect: This employee won't receive customer assignments
Result: Customer traffic redistributed to other staffStep 1: POST /customers/{id}/skin-analysis → analysis_id
Step 2: GET /skincare-plans?analysis_id=xxx → [3 recommendations]
Step 3: GET /stores/{id}/inventory?products=xxx → stock levels
Step 4: Show recommendations + availability + pricing to customer
Step 5: If customer agrees: POST /customers/{id}/skincare-enrollment
Result: Customer enrolled in care plan ✓Time: 9:00 AM daily
Action: PATCH /stores/{id}/inventory (for each product with stock changes)
Data source: Physical count or ERP system
Sync frequency: Hourly or real-time
Validation: Next query should match updatesTime: Every Monday 10:00 AM
Process:
1. GET /merchants/list
2. For each merchant:
- GET /stores/list
- GET /employees/list
- GET /stores/{id}/sales-report
3. Aggregate all data
4. Generate pivot tables & charts
5. Send to leadership| Error Code | Description | Detail |
|---|---|---|
| 1001 | invalid access_token | Token exception |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| app_id | Yes | Group/merchant app_id | |
| app_secret | Yes | Group/merchant app_secret |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ access_token | string | Required | access_token | |
| ├─ expire | number | Required | Token validity period, 7200 seconds |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group token, generated using the group backend's app_id and app_secret. |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | Merchant list | item type: object |
| ├─ merchant_id | string | Required | Merchant ID | |
| ├─ name | string | Required | Merchant name | |
| ├─ area | string | Required | Country/region of merchant. Example: China Hong Kong Macao Korea Japan Taiwan Thailand |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Merchant/group token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| page | No | Page number | |
| count | No | Items per page, default 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | Store list | item type: object |
| ├─ id | string | Required | ||
| ├─ name | string | Required | Store name | |
| ├─ province | string | Required | Province | |
| ├─ city | string | Required | City | |
| ├─ address | string | Required | Address | |
| ├─ status | number | Required | Status: 1-Normal, -1-Disabled | |
| ├─ store_business_type | number | Required | Current version: 0-None, 1-Basic, 2-Advanced | |
| ├─ store_custom_id | string | Required | Store number | |
| ├─ total | string | Required | Total count |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| page | No | Page number, default page 1 | |
| count | No | Items per page, default 20, max 100 | |
| store_custom_id | No | Store number |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | Staff list | item type: object |
| ├─ id | string | Required | Staff ID | |
| ├─ store_id | string | Required | Store ID | |
| ├─ store_custom_id | string | Required | Store number | |
| ├─ status_status | integer | Required | Store status: 1-Enabled, -1-Disabled | |
| ├─ account_num | string | Required | Employee number | |
| ├─ last_name | string | Required | Last name | |
| ├─ real_name | string | Required | Full name | |
| ├─ phone_cc | string | Required | Phone area code | |
| ├─ phone_number | string | Required | Phone number | |
| string | Required | |||
| ├─ sso_account | string | Required | SSO bound account | |
| ├─ status | number | Required | Status: 1-Enabled, -1-Disabled | |
| ├─ store_custom_id | string | Required | Store number | |
| ├─ total | string | Required | Total count |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ default_lang | string | Required | Default language | |
| ├─ lang_list | string [] | Required | Multi-language list. Array element description: zh-Hans - Simplified Chinese, zh-Hant - Traditional Chinese (Taiwan), zh-Hant-HK - Traditional Chinese (Hong Kong), en - English, ja - Japanese, ko - Korean, th - Thai | item type: string. If no multi-language is enabled, an empty array is returned |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| lang | No | Language to use for returned data. If not specified, defaults to English |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | item type: object | |
| ├─ id | string | Required | Dimension ID | |
| ├─ name | string | Required | Dimension name | |
| ├─ status | number | Required | Status: 1-Enabled, 0-Disabled | |
| ├─ divisions_count | number | Required | Number of severity levels | |
| ├─ divisions | object [] | Required | Severity level list | item type: object |
| ├─ id | number,string | Required | Severity level ID | |
| ├─ name | string | Required | Severity level name |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| lang | No | Language to use for returned data. If not specified, defaults to English |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | item type: object | |
| ├─ category_id | int64 | Required | Category ID | |
| ├─ name | string | Required | Category name | |
| ├─ status | int | Required | Status: 1-Enabled, -1-Disabled |
| Error Code | Description | Detail |
|---|---|---|
| 11035 | %s cannot be empty | Corresponding key not filled |
| 11034 | %s input error | Corresponding key input is incorrect |
| 11000 | Store name too long | name max 100 characters |
| 11001 | Store name already exists | name field cannot be duplicated |
| 11029 | Store number input error | custom_id supports letters and numbers, max 20 characters, no duplicates |
| 11028 | Store number already exists | custom_id field cannot be duplicated |
| 11033 | Region does not exist or is filled in incorrectly | area_id field content does not exist or is filled in incorrectly |
| 11004 | Store address too long | address field max 100 characters |
| 11008 | Account name is empty or format is incorrect | username field supports 3~50 letters, numbers, @, underscores, hyphens |
| 10008 | Store account already exists | username field cannot be duplicated |
| 11007 | Employee number already in use | account_num field cannot be duplicated |
| 11010 | Password is empty or format is incorrect | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11027 | Password is too simple or too similar to account, please reset | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 400 | Parameter error | Specific information returned |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Required | Group/merchant token | ||
| merchant-id | Not required | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| ├─ name | string | Required | Store name max 100 characters, cannot be duplicated. Title accepts max 75 characters | ||
| ├─ custom_id | string | Required | Store number, supports letters and numbers, max 20 characters, no duplicates | ||
| ├─ telephone | string | Required | Store phone | ||
| ├─ area_id | number | Not required | Store region, enter region ID. Region ID can be obtained via API. If not filled, defaults to the first region. | ||
| ├─ province_code | string | Required | Province where the store is located. Enter province code. Province codes available in Country Detailed List. | ||
| ├─ city_code | string | Not required | City where the store is located. Enter city code. City codes available in Country Detailed List. If not filled, defaults to the first city in the province in the system. | ||
| ├─ address | string | Required | Store detailed address, max 100 characters | ||
| ├─ username | string | Required | Store manager account. Supports 3~50 letters, numbers, @, underscores, hyphens | ||
| ├─ password | string | Required | Password for the store manager account. 8~20 characters, must contain numbers, letters, and special symbols | ||
| ├─ real_name | string | Required | Store manager name, max 18 characters | ||
| ├─ last_name | string | Not required | Store manager last name, max 18 characters | ||
| ├─ account_num | string | Not required | Employee number, max 20 characters | ||
| ├─ phone_cc | integer | Not required | Phone area code, numeric | ||
| ├─ phone_number | integer | Not required | Store manager mobile number, numeric | ||
| string | Not required | Store manager email |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Error Code | Description | Detail |
|---|---|---|
| 11035 | %s cannot be empty | Corresponding key not filled |
| 11034 | %s input error | Corresponding key input is incorrect |
| 11000 | Store name too long | name max 100 characters |
| 11001 | Store name already exists | name field cannot be duplicated |
| 11029 | Store number input error | custom_id supports letters and numbers, max 20 characters, no duplicates |
| 11028 | Store number already exists | custom_id field cannot be duplicated |
| 11033 | Region does not exist or is filled in incorrectly | area_id field content does not exist or is filled in incorrectly |
| 11004 | Store address too long | address field max 100 characters |
| 11008 | Account name is empty or format is incorrect | username field supports 3~50 letters, numbers, @, underscores, hyphens |
| 10008 | Store account already exists | username field cannot be duplicated |
| 11010 | Password is empty or format is incorrect | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11027 | Password is too simple or too similar to account, please reset | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 400 | Parameter error | Specific information returned |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Required | Group/merchant token | ||
| merchant-id | Not required | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| ├─ name | string | Not required | Store name max 100 characters, cannot be duplicated. Title accepts max 75 characters | ||
| ├─ custom_id | string | Required | Store number, supports letters and numbers, max 20 characters, no duplicates | ||
| ├─ new_custom_id | string | Not required | New store number, supports letters and numbers, max 20 characters, no duplicates | ||
| ├─ telephone | string | Not required | Store phone | ||
| ├─ area_id | number | Not required | Store region, enter region ID. Region ID can be obtained via API. If not filled, defaults to the first region. | ||
| ├─ province_code | string | Not required | Province where the store is located. Province codes available in Country Detailed List. | ||
| ├─ city_code | string | Not required | City where the store is located. City codes available in Country Detailed List. If not filled, defaults to the first city in the province. | ||
| ├─ address | string | Not required | Store detailed address, max 100 characters |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Error Code | Description | Detail |
|---|---|---|
| 11035 | %s cannot be empty | Corresponding key not filled |
| 11034 | %s input error | Corresponding key input is incorrect |
| 11029 | Store number input error | custom_id supports letters and numbers, max 20 characters, no duplicates |
| 17002 | Multi-account feature not enabled, please contact administrator | Staff management permission not enabled |
| 11008 | Account name is empty or format is incorrect | username field supports 3~50 letters, numbers, @, underscores, hyphens |
| 11009 | The account name you entered already exists | username field cannot be duplicated |
| 11010 | Password is empty or format is incorrect | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11027 | Password is too simple or too similar to account, please reset | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11007 | Employee number already in use | account_num field cannot be duplicated |
| 10010 | Invalid phone number | phone_num field filled in incorrectly |
| 400 | Parameter error | Specific information returned |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Required | Group/merchant token | ||
| merchant-id | Not required | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| ├─ custom_id | string | Required | Store number, supports letters and numbers, max 20 characters, no duplicates | ||
| ├─ username | string | Required | Employee account | ||
| ├─ password | string | Required | Password for the store employee account. 8~20 characters, must contain numbers, letters, and special symbols | ||
| ├─ real_name | string | Required | Employee name, max 18 characters | ||
| ├─ last_name | string | Not required | Employee last name, max 18 characters | ||
| ├─ account_num | string | Not required | Employee number, max 20 characters | ||
| ├─ phone_cc | integer | Not required | Phone area code, numeric | ||
| ├─ phone_number | integer | Not required | Employee mobile number, numeric | ||
| string | Not required | Employee email |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Error Code | Description | Detail |
|---|---|---|
| 11035 | %s cannot be empty | Corresponding key not filled |
| 11034 | %s input error | Corresponding key input is incorrect |
| 11008 | Account name is empty or format is incorrect | username field supports 3~50 letters, numbers, @, underscores, hyphens |
| 11009 | The account name you entered already exists | username field cannot be duplicated |
| 11010 | Password is empty or format is incorrect | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11027 | Password is too simple or too similar to account, please reset | password field 8~20 characters, must contain numbers, letters, and special symbols |
| 11007 | Employee number already in use | account_num field cannot be duplicated |
| 10010 | Invalid phone number | phone_num field filled in incorrectly |
| 11013 | New and old passwords cannot be the same | password field new and old passwords cannot be the same |
| 400 | Parameter error | Specific information returned |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Required | Group/merchant token | ||
| merchant-id | Not required | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| ├─ username | string | Required | Employee account | ||
| ├─ new_username | string | Not required | New employee account. Account for logging into the APP; cannot be duplicated. Supports 3~50 letters, numbers, @, underscores, hyphens | ||
| ├─ password | string | Not required | Password for the store employee account. 8~20 characters, must contain numbers, letters, and special symbols | ||
| ├─ real_name | string | Not required | Employee name, max 18 characters | ||
| ├─ last_name | string | Not required | Employee last name, max 18 characters | ||
| ├─ account_num | string | Not required | Employee number, max 20 characters | ||
| ├─ phone_cc | integer | Not required | Phone area code, numeric | ||
| ├─ phone_number | integer | Not required | Employee mobile number, numeric | ||
| string | Not required | Employee email |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Error Code | Description | Detail |
|---|---|---|
| 11035 | %s cannot be empty | Corresponding key not filled |
| 11034 | %s input error | Corresponding key input is incorrect |
| 11028 | Account does not exist | Account does not exist |
| 11026 | The store has been disabled, you need to enable the store before enabling the corresponding staff account | |
| 11011 | The employee number/account is already in use, please change and retry! |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Parameter Name | Example | Notes |
|---|---|---|
| status | 1 | 1-Enable, -1-Disable |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| username | string | Required | Account |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| page | No | Page number, default page 1 | |
| count | No | Items per page, default 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ list | object [] | Required | Staff list | item type: object |
| ├─ id | string | Required | Region ID | |
| ├─ name | string | Required | Region name | |
| ├─ remark | string | Required | Remarks | |
| ├─ total | string | Required | Total count |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40015 | Please fill in the category. | category_id not filled |
| 40016 | The category is out of range. | category_id not within acceptable values |
| 40017 | Please fill in the product name. | name field not filled |
| 40018 | The product name is too long. | name field max 150 characters |
| 40020 | The currency is out of range. | price_unit field value is incorrect |
| 40021 | Please enter the price | price field not filled |
| 40022 | Wrong format! Please enter numbers and make sure there are no more than 7 numbers before the decimal point and no more than 2 numbers after the decimal point. | price field format is incorrect |
| 40025 | The image format is wrong. | pic field is empty or format is incorrect or string length exceeds 255 |
| 40028 | The target problems are out of range. | problem field is incorrect |
| 40030 | The skin types are out of range. | skin_type field filled in incorrectly |
| 40031 | Please fill in applicable age. | min_age, max_age fields not filled |
| 40032 | Applicable age is out of range. | age_limit field not filled or value is illegal |
| 40033 | Limited range is empty or the format is wrong. | min_age, max_age values are illegal |
| 40034 | The product label is too long. | label field supports max 4 tags |
| 40035 | The format of the product link is wrong. | link field format is incorrect |
| 40038 | The product label is too long. | Each label max 10 characters |
| 40048 | The subtitle is too long. | sub_title field max 300 characters |
| 40049 | Nursing stage is wrong. | nurse_stage field filled in incorrectly (pending deletion) |
| 40050 | Customer's level is wrong. | user_level field filled in incorrectly |
| 40055 | Wrong product serial number. | custom_id field is empty or input is incorrect |
| 40067 | Product number does not exist. | Product number does not exist |
| 40070 | The set product number is incorrect. | Product number in suit_custom_id is incorrect |
| 40072 | No image found | pic field is empty |
| 40077 | Product instructions should not exceed 2,000 characters | Product instructions cannot exceed 2000 characters |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Required | Group/merchant token | ||
| merchant-id | Not required | Merchant ID, required when access-token is a group-type token |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| product_list | object [] | Required | Product list, max 100 items | item type: object | |
| ├─ category_id | integer | Required | Category ID, see "Product Category ID Explanation" | ||
| ├─ name | string | Required | Title, max 75 characters | ||
| ├─ sub_title | string | Not required | Subtitle, max 150 characters | ||
| ├─ custom_id | string | Required | Product number | ||
| ├─ price_unit | integer | Not required | Price unit | See section 1.5 | |
| ├─ price | number | Not required | Price: max 7 digits before decimal; max 2 digits after decimal (if not filled, defaults to -1, meaning no price) | ||
| ├─ pic | string | Required | Image URL, max 255 characters | ||
| ├─ suit_custom_id | object [] | Not required | Required when category_id is set to Set | item type: object | |
| ├─ custom_id | string | Required | Set product number | ||
| ├─ quantity | integer | Required | Set product quantity | ||
| ├─ problem | object | Not required | Target problems, see section 1.7. Reference format: {acne:[1,2,],pore:[1,2]} | ||
| ├─ skin_type | string [] | Not required | Applicable skin types. Array element values: 1-Dry skin, 2-Normal skin, 3-Oily skin, 4-Combination skin. Reference format: [1, 2, 3, 4] | ||
| ├─ age_limit | integer | Required | Whether age is restricted: 0-No restriction, 1-Restricted | ||
| ├─ min_age | integer | Not required | Minimum age, required when age_limit is restricted | ||
| ├─ max_age | integer | Not required | Maximum age, required when age_limit is restricted, range 0~120 | ||
| ├─ nurse_stage | integer | Not required | Care stage: 1-Basic care, 2-Advanced care | Pending deletion | |
| ├─ user_level | string | Not required | Customer level values, multiple levels separated by English commas | ||
| ├─ label | string | Not required | Labels: max 4 labels, each label max 10 characters, multiple labels separated by English commas | ||
| ├─ link | string | Not required | Product URL | ||
| ├─ instruction | string | Not required | Product description | ||
| ├─ lang_data | object | Not required | Multi-language data. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"},"en":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"}} | ||
| ├─ zh-Hans | object | Not required | Multi-language setting key (see "Get Merchant Languages API") | ||
| ├─ name | string | Not required | Multi-language product title | ||
| ├─ sub_title | string | Not required | Multi-language product subtitle | ||
| ├─ label | string | Not required | Multi-language product labels | ||
| ├─ instruction | string | Not required | Multi-language product description | ||
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | Failed product data | item type: object |
| ├─ custom_id | string | Required | Error product number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40007 | Failed to edit. The product has been applied to xxx set and set type cannot be changed. | Products already referenced by a set cannot be changed to a set |
| 40016 | The category is out of range. | category_id not within acceptable values |
| 40017 | Please fill in the product name. | name field not filled |
| 40018 | The product name is too long. | name field max 150 characters |
| 40020 | The currency is out of range. | price_unit field value is incorrect |
| 40021 | Please enter the price | price field not filled |
| 40022 | Wrong format! Please enter numbers and make sure there are no more than 7 numbers before the decimal point and no more than 2 numbers after the decimal point. | price field format is incorrect |
| 40025 | The image format is wrong. | pic field is empty or format is incorrect or string length exceeds 255 |
| 40028 | The target problems are out of range. | problem field is incorrect |
| 40030 | The skin types are out of range. | skin_type field filled in incorrectly |
| 40031 | Please fill in applicable age. | min_age, max_age fields not filled |
| 40032 | Applicable age is out of range. | age_limit field not filled or value is illegal |
| 40033 | Limited range is empty or the format is wrong. | min_age, max_age values are illegal |
| 40034 | The product label is too long. | label field supports max 4 tags |
| 40035 | The format of the product link is wrong. | link field format is incorrect |
| 40038 | The product label is too long. | Each label max 10 characters |
| 40048 | The subtitle is too long. | sub_title field max 300 characters |
| 40049 | Nursing stage is wrong. | nurse_stage field filled in incorrectly (pending deletion) |
| 40050 | Customer's level is wrong. | user_level field filled in incorrectly |
| 40055 | Wrong product serial number. | custom_id field is empty or input is incorrect |
| 40067 | Product number does not exist. | Product number does not exist |
| 40070 | The set product number is incorrect. | Product number in suit_custom_id is incorrect |
| 40071 | No update data found | No fields to update were filled in |
| 40076 | Sets of products are not allowed to change to other types | Set products cannot be changed to non-set products |
| 40077 | Product instructions should not exceed 2,000 characters | Product instructions cannot exceed 2000 characters |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| product_list | object [] | Not required | Product list, max 100 items | item type: object | |
| ├─ category_id | integer | Not required | Category ID, see "Product Category ID Explanation" | ||
| ├─ name | string | Not required | Title, max 75 characters | ||
| ├─ sub_title | string | Not required | Subtitle, max 150 characters | ||
| ├─ custom_id | string | Required | Product number, supports numbers and letters, max 50 characters | ||
| ├─ price_unit | integer | Not required | Price unit: 0-¥(CNY), 1-¥(JPY), 2-, 7-MOP, 9-฿ | ||
| ├─ price | number | Not required | Price, max 7 digits before decimal; max 2 digits after decimal (defaults to -1 if not filled) | ||
| ├─ pic | string | Not required | Image URL, max 255 characters | ||
| ├─ suit_custom_id | object [] | Not required | Required when category_id is set to Set | item type: object | |
| ├─ custom_id | string | Not required | Set product number | ||
| ├─ quantity | integer | Not required | Set product quantity | ||
| ├─ problem | object | Not required | Target problems, see section 1.7. Reference format: {acne:[1,2,],pore:[1,2]} | ||
| ├─ skin_type | string [] | Not required | Applicable skin types. Array element values: 1-Dry skin, 2-Normal skin, 3-Oily skin, 4-Combination skin. Reference format: [1, 2, 3, 4] | ||
| ├─ age_limit | integer | Not required | Whether age is restricted: 0-No restriction, 1-Restricted | ||
| ├─ min_age | integer | Not required | Minimum age, required when age_limit is restricted | ||
| ├─ max_age | integer | Not required | Maximum age, required when age_limit is restricted, range 0~120 | ||
| ├─ nurse_stage | integer | Not required | Care stage: 1-Basic care, 2-Advanced care | (Pending deletion) | |
| ├─ user_level | string | Not required | Customer level values, multiple levels separated by English commas | ||
| ├─ label | string | Not required | Labels: max 4 labels, each label max 10 characters, multiple labels separated by English commas | ||
| ├─ link | string | Not required | Product URL | ||
| ├─ instruction | string | Not required | Product description | ||
| ├─ lang_data | object | Not required | Multi-language data. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"},"en":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"}} | ||
| ├─ zh-Hans | object | Not required | Multi-language setting key (see "Get Merchant Languages API") | ||
| ├─ name | string | Not required | Multi-language product title | ||
| ├─ sub_title | string | Not required | Multi-language product subtitle | ||
| ├─ label | string | Not required | Multi-language product labels | ||
| ├─ instruction | string | Not required | Multi-language product description | ||
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | List of failed product updates | item type: object |
| ├─ custom_id | string | Required | Product number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
| Error Code | Description | Detail |
|---|---|---|
| 40067 | Product number does not exist. | Product number does not exist |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40000 | This product does not exist | Product under custom_id does not exist |
| 40001 | This product belongs to another merchant. | Product under custom_id does not belong to the current merchant |
| 40008 | The selected product has been applied to XXX set and cannot be deleted. | Product under custom_id is a sub-product of another set product and cannot be deleted |
| 40067 | Product number does not exist. | Product number does not exist |
| 40073 | This product can not be deleted | Product is not a merchant-created product and cannot be deleted |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_ids | string [] | Required | Product number array, max 100 | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | Failed product deletion data | item type: object |
| ├─ custom_id | string | Required | Product number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40067 | Product number does not exist. | Product number does not exist |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Parameter Name | Example | Notes |
|---|---|---|
| status | 1 | 1-Enable, -1-Disable |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_ids | string [] | Required | Product number array, max 100 product numbers | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | Failed product data | item type: object |
| ├─ custom_id | string | Required | Product number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_id | string | Required | Product number | ||
| sell_type | number | Required | Available stores: 1-All stores, 2-Specific stores | ||
| store_list | string [] | Not required | Store number array, required when sell_type is 2 | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Error Code | Description | Detail |
|---|---|---|
| 40066 | Product not available for sale. | The product corresponding to the filled product number is not available for sale at this store |
| 40068 | The store is not a Premium Version store. | The filled store is not an advanced store; only advanced stores support setting links |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_id | string | Required | Product number | ||
| link_list | object [] | Required | Link list, max 100 items | item type: object | |
| ├─ store_custom_id | string | Required | Store number | ||
| ├─ link_type | integer | Required | Link type: 0-Same as headquarters, 1-Store independent setting | ||
| ├─ link | string | Not required | Store product link, required when link_type is 1 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| page | No | Page number, defaults to 1 | |
| count | No | Items per page, defaults to 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ total | integer | Required | Total count | |
| ├─ list | object [] | Required | Product list | item type: object |
| ├─ id | string | Required | Product ID | |
| ├─ category_id | integer | Required | Product category ID (see notes) | |
| ├─ pic | string | Required | Product image URL | |
| ├─ name | string | Required | Default language product name | |
| ├─ problem | object | Required | Target problems, see section 1.6. Reference format: {acne:[1,2,],pore:[1,2]} | |
| ├─ skin_type | string[] | Required | Applicable skin types. Array element values: 1-Dry, 2-Normal, 3-Oily, 4-Combination. Reference format: [1, 2, 3, 4] | |
| ├─ label | string | Required | Default language labels, multiple labels separated by English commas | |
| ├─ price_unit | integer | Required | Price unit | |
| ├─ price | number | Required | Price | |
| ├─ price_symbol | string | Required | Price symbol | |
| ├─ link | string | Required | Link | |
| ├─ source | integer | Required | Source: 1-Created by store, 2-Created by merchant | |
| ├─ status | integer | Required | Status: -1-Disabled, 1-Normal | |
| ├─ age_limit | integer | Required | Age restriction: 0-No restriction, 1-Restricted range | |
| ├─ min_age | integer | Required | Minimum applicable age | |
| ├─ max_age | integer | Required | Maximum applicable age | |
| ├─ sub_title | string | Required | Default language subtitle | |
| ├─ user_level_limit | number | Required | Customer level restriction: 0-No restriction, 1-Restricted level | |
| ├─ user_level | string | Required | Restricted levels, multiple levels separated by English commas | |
| ├─ nurse_stage | integer | Required | Care stage: 0-Not set, 1-Basic care, 2-Advanced care | Pending deletion |
| ├─ instruction | string | Required | Default language product instructions | |
| ├─ lang_data | object | Not required | Other language data. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"},"en":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"}} | |
| ├─ zh-Hans | object | Required | Language identifier key | |
| ├─ name | string | Required | Product name | |
| ├─ sub_title | string | Required | Subtitle | |
| ├─ label | string | Required | Labels, multiple labels separated by English commas | |
| ├─ instruction | string | Required | Instructions | |
| ├─ goods_attributes_limit | string | Required | Whether product attributes are restricted: 0-No, 1-Yes | |
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| store_custom_id | Yes | Store number | |
| page | No | Page number, defaults to 1 | |
| count | No | Items per page, defaults to 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ total | integer | Required | Total count | |
| ├─ list | object [] | Required | Product list | item type: object |
| ├─ id | string | Required | Product ID | |
| ├─ category_id | integer | Required | Product category ID | |
| ├─ pic | string | Required | Product image URL | |
| ├─ name | string | Required | Default language product name | |
| ├─ problem | object | Required | Target problems. Reference format: {acne:[1,2,],pore:[1,2]} (see notes) | |
| ├─ skin_type | string[] | Required | Applicable skin types. Array element values: 1-Dry, 2-Normal, 3-Oily, 4-Combination. Reference format: [1, 2, 3, 4] | |
| ├─ label | string | Required | Default language labels, multiple labels separated by English commas | |
| ├─ price_unit | integer | Required | Price unit | |
| ├─ price | number | Required | Price | |
| ├─ price_symbol | string | Required | Price symbol | |
| ├─ link | string | Required | Merchant product link | |
| ├─ store_link | string | Required | Store product link | |
| ├─ source | integer | Required | Source: 1-Created by store, 2-Created by merchant | |
| ├─ status | integer | Required | Status: -1-Disabled, 1-Normal | |
| ├─ age_limit | integer | Required | Age restriction: 0-No restriction, 1-Restricted range | |
| ├─ min_age | integer | Required | Minimum applicable age | |
| ├─ max_age | integer | Required | Maximum applicable age | |
| ├─ sub_title | string | Required | Default language subtitle | |
| ├─ user_level_limit | number | Required | Customer level restriction: 0-No restriction, 1-Restricted level | |
| ├─ user_level | string | Required | Restricted levels, multiple levels separated by English commas | |
| ├─ nurse_stage | integer | Required | Care stage: 0-Not set, 1-Basic care, 2-Advanced care | Pending deletion |
| ├─ instruction | string | Required | Default language product instructions | |
| ├─ lang_data | object | Not required | Other language data. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"},"en":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xxx"}} | |
| ├─ zh-Hans | object | Required | Language identifier key | |
| ├─ name | string | Required | Product name | |
| ├─ sub_title | string | Required | Subtitle | |
| ├─ label | string | Required | Labels, multiple labels separated by English commas | |
| ├─ instruction | string | Required | Instructions | |
| ├─ goods_attributes_limit | string | Required | Whether product attributes are restricted: 0-No, 1-Yes | |
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40017 | Please fill in the product name. | name field not filled |
| 40018 | The product name is too long. | name field max 150 characters |
| 40020 | The currency is out of range. | price_unit field value is incorrect |
| 40021 | Please enter the price | price field not filled |
| 40022 | Wrong format! Please enter numbers and make sure there are no more than 7 numbers before the decimal point and no more than 2 numbers after the decimal point. | price field format is incorrect |
| 40025 | The image format is wrong. | pic field is empty or format is incorrect or string length exceeds 255 |
| 40028 | The target problems are out of range. | problem field is incorrect |
| 40030 | The skin types are out of range. | skin_type field filled in incorrectly |
| 40031 | Please fill in applicable age. | min_age, max_age fields not filled |
| 40032 | Applicable age is out of range. | age_limit field not filled or value is illegal |
| 40033 | Limited range is empty or the format is wrong. | min_age, max_age values are illegal |
| 40034 | The product label is too long. | label field supports max 4 tags |
| 40035 | The format of the product link is wrong. | link field format is incorrect |
| 40038 | The product label is too long. | Each label max 10 characters |
| 40048 | The subtitle is too long. | sub_title field max 300 characters |
| 40049 | Nursing stage is wrong. | nurse_stage field filled in incorrectly (pending deletion) |
| 40050 | Customer's level is wrong. | user_level field filled in incorrectly |
| 40055 | Wrong product serial number. | custom_id field is empty or input is incorrect |
| 40075 | Treatment number does not exist. | Treatment number does not exist |
| 40072 | No image found | pic field is empty |
| 40077 | Product instructions should not exceed 2,000 characters | Product instructions cannot exceed 2000 characters |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| treatments_list | object [] | Required | Treatment data list, max 100 items | item type: object | |
| ├─ name | string | Required | Title, max 75 characters | ||
| ├─ sub_title | string | Not required | Subtitle, max 150 characters | ||
| ├─ custom_id | string | Required | Treatment number, supports numbers and letters, max 50 characters | ||
| ├─ price_unit | integer | Not required | Price unit: 0-¥(CNY), 1-¥(JPY), 2-, 7-MOP, 9-฿ | ||
| ├─ price | number | Not required | Price, max 7 digits before decimal; max 2 digits after decimal (defaults to -1 if not filled) | ||
| ├─ pic | string | Required | Image URL, max 255 characters | ||
| ├─ problem | object | Not required | Target problems, see section 1.7. Reference format: {acne:[1,2,],pore:[1,2]} | ||
| ├─ age_limit | integer | Required | Whether age is restricted: 0-No restriction, 1-Restricted | ||
| ├─ min_age | integer | Not required | Minimum age, required when age_limit is restricted | ||
| ├─ max_age | integer | Not required | Maximum age, required when age_limit is restricted, range 0~120 | ||
| ├─ user_level | string | Not required | Customer level values, multiple levels separated by English commas | ||
| ├─ label | string | Not required | Labels: max 4 labels, each label max 10 characters, multiple labels separated by English commas | ||
| ├─ link | string | Not required | Treatment URL | ||
| ├─ instruction | string | Not required | Treatment description | ||
| ├─ lang_data | object | Not required | Multi-language parameter list. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx"},"en":{"name":"XXX","sub_title":"xx","label":"xx"}} | ||
| ├─ zh-Hans | object | Not required | Multi-language identifier (see notes) | ||
| ├─ name | string | Not required | Corresponding multi-language title | ||
| ├─ sub_title | string | Not required | Corresponding multi-language subtitle | ||
| ├─ label | string | Not required | Corresponding multi-language labels | ||
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | List of failed treatments | |
| ├─ custom_id | string | Required | Treatment number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40017 | Please fill in the product name. | name field not filled |
| 40018 | The product name is too long. | name field max 150 characters |
| 40020 | The currency is out of range. | price_unit field value is incorrect |
| 40021 | Please enter the price | price field not filled |
| 40022 | Wrong format! Please enter numbers and make sure there are no more than 7 numbers before the decimal point and no more than 2 numbers after the decimal point. | price field format is incorrect |
| 40025 | The image format is wrong. | pic field is empty or format is incorrect or string length exceeds 255 |
| 40028 | The target problems are out of range. | problem field is incorrect |
| 40030 | The skin types are out of range. | skin_type field filled in incorrectly |
| 40031 | Please fill in applicable age. | min_age, max_age fields not filled |
| 40032 | Applicable age is out of range. | age_limit field not filled or value is illegal |
| 40033 | Limited range is empty or the format is wrong. | min_age, max_age values are illegal |
| 40034 | The product label is too long. | label field supports max 4 tags |
| 40035 | The format of the product link is wrong. | link field format is incorrect |
| 40038 | The product label is too long. | Each label max 10 characters |
| 40048 | The subtitle is too long. | sub_title field max 300 characters |
| 40049 | Nursing stage is wrong. | nurse_stage field filled in incorrectly (pending deletion) |
| 40050 | Customer's level is wrong. | user_level field filled in incorrectly |
| 40055 | Wrong product serial number. | custom_id field is empty or input is incorrect |
| 40067 | Product number does not exist. | Product number does not exist |
| 40070 | The set product number is incorrect. | Product number in suit_custom_id is incorrect |
| 40071 | No update data found | No fields to update were filled in |
| 40077 | Product instructions should not exceed 2,000 characters | Product instructions cannot exceed 2000 characters |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| treatments_list | object [] | Required | Treatment data list, max 100 items | item type: object | |
| ├─ name | string | Not required | Title, max 75 characters | ||
| ├─ sub_title | string | Not required | Subtitle, max 150 characters | ||
| ├─ custom_id | string | Required | Treatment number, supports numbers and letters, max 50 characters | ||
| ├─ price_unit | integer | Not required | Price unit: 0-¥(CNY), 1-¥(JPY), 2-, 7-MOP, 9-฿ | ||
| ├─ price | number | Not required | Price, max 7 digits before decimal; max 2 digits after decimal (defaults to -1 if not filled) | ||
| ├─ pic | string | Not required | Image URL, max 255 characters | ||
| ├─ problem | object | Not required | Target problems, see section 1.7. Reference format: {acne:[1,2,],pore:[1,2]} | ||
| ├─ age_limit | integer | Not required | Whether age is restricted: 0-No restriction, 1-Restricted | ||
| ├─ min_age | integer | Not required | Minimum age, required when age_limit is restricted | ||
| ├─ max_age | integer | Not required | Maximum age, required when age_limit is restricted, range 0~120 | ||
| ├─ user_level | string | Not required | Customer level values, multiple levels separated by English commas | ||
| ├─ label | string | Not required | Labels: max 4 labels, each label max 10 characters, multiple labels separated by English commas | ||
| ├─ link | string | Not required | Treatment URL | ||
| ├─ instruction | string | Not required | Treatment description | ||
| ├─ lang_data | object | Not required | Multi-language parameter list. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx"},"en":{"name":"XXX","sub_title":"xx","label":"xx"}} | ||
| ├─ zh-Hans | object | Not required | Multi-language identifier (see notes) | ||
| ├─ name | string | Not required | Corresponding multi-language title | ||
| ├─ sub_title | string | Not required | Corresponding multi-language subtitle | ||
| ├─ label | string | Not required | Corresponding multi-language labels | ||
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ err_list | object [] | Not required | Exception data list | item type: object |
| ├─ custom_id | string | Required | Treatment number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
| Error Code | Description | Detail |
|---|---|---|
| 40075 | Treatment number does not exist. | custom_id value is incorrect |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40074 | This treatment can not be deleted | Treatment is not merchant-created and cannot be deleted |
| 40075 | Treatment number does not exist. | custom_id value is incorrect |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | Yes | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_ids | string [] | Required | Product number array list | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Not required | ||
| ├─ code | number | Not required | ||
| ├─ msg | string | Not required | ||
| ├─ error | string | Not required | ||
| ├─ request_uri | string | Not required | ||
| response | object | Not required | ||
| ├─ err_list | object [] | Not required | Failed treatment deletion data | item type: object |
| ├─ custom_id | string | Required | Treatment number | |
| ├─ err_code | string | Required | Error code, see notes | |
| ├─ err_msg | string | Required | Error message |
response.err_list[].err_code:| Error Code | Description | Detail |
|---|---|---|
| 40075 | Treatment number does not exist. | Treatment number does not exist |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Parameter Name | Example | Notes |
|---|---|---|
| status | 1 | 1-Enable, -1-Disable |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_ids | string [] | Required | Treatment number array, max 100 treatment numbers | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_id | string | Required | Treatment number | ||
| sell_type | number | Required | Available stores: 1-All stores, 2-Specific stores | ||
| store_list | string [] | Not required | Store number array list, required when sell_type is 2 | item type: string |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| page | No | Page number, defaults to 1 | |
| count | No | Items per page, defaults to 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ total | integer | Required | Total count | |
| ├─ list | object [] | Required | Product list | item type: object |
| ├─ id | string | Required | Treatment ID | |
| ├─ custom_id | string | Required | Treatment number | |
| ├─ pic | string | Required | Image URL | |
| ├─ name | string | Required | Default language product name | |
| ├─ problem | object | Required | Target problems, see section 1.7. Reference format: {acne:[1,2,],pore:[1,2]} | |
| ├─ label | string | Required | Default language labels, multiple labels separated by English commas | |
| ├─ price_unit | integer | Required | Price unit | |
| ├─ price | number | Required | Price | |
| ├─ price_symbol | string | Required | Price symbol | |
| ├─ link | string | Required | Link | |
| ├─ source | integer | Required | Source: 1-Created by store, 2-Created by merchant | |
| ├─ status | integer | Required | Status: -1-Disabled, 1-Normal | |
| ├─ age_limit | integer | Required | Age restriction: 0-No restriction, 1-Restricted range | |
| ├─ min_age | integer | Required | Minimum applicable age | |
| ├─ max_age | integer | Required | Maximum applicable age | |
| ├─ sub_title | string | Required | Default language subtitle | |
| ├─ user_level_limit | number | Required | Customer level restriction: 0-No restriction, 1-Restricted level | |
| ├─ user_level | string | Required | Restricted levels, multiple levels separated by English commas | |
| ├─ instruction | string | Required | Default language treatment instructions | |
| ├─ lang_data | object | Not required | Other language data. Reference format: {"zh-Hans":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xx"},"en":{"name":"XXX","sub_title":"xx","label":"xx","instruction":"xx"}} | |
| ├─ zh-Hans | object | Required | Language identifier key (using Simplified Chinese as example) | |
| ├─ name | string | Required | Treatment name | |
| ├─ sub_title | string | Required | Subtitle | |
| ├─ label | string | Required | Labels, multiple labels separated by English commas | |
| ├─ instruction | string | Required | Instructions | |
| ├─ goods_attributes_limit | string | Required | Whether product attributes are restricted: 0-No, 1-Yes | |
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token |
| Parameter Name | Required | Example | Notes |
|---|---|---|---|
| store_custom_id | Yes | 2442 | Store number |
| page | No | Page number, defaults to 1 | |
| count | No | Items per page, defaults to 20, max 100 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | integer | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required | ||
| ├─ total | integer | Required | Total count | |
| ├─ list | object [] | Required | Product list | item type: object |
| ├─ id | string | Required | Treatment ID | |
| ├─ custom_id | string | Required | Treatment number | |
| ├─ pic | string | Required | Image URL | |
| ├─ name | string | Required | Default language product name | |
| ├─ problem | object | Required | Target problems. Reference format: {acne:[1,2,],pore:[1,2]} | |
| ├─ label | string | Required | Default language labels, multiple labels separated by English commas | |
| ├─ price_unit | integer | Required | Price unit | |
| ├─ price | number | Required | Price | |
| ├─ price_symbol | string | Required | Price symbol | |
| ├─ link | string | Required | Merchant product link | |
| ├─ source | integer | Required | Source: 1-Created by store, 2-Created by merchant | |
| ├─ status | integer | Required | Status: -1-Disabled, 1-Normal | |
| ├─ age_limit | integer | Required | Age restriction: 0-No restriction, 1-Restricted range | |
| ├─ min_age | integer | Required | Minimum applicable age | |
| ├─ max_age | integer | Required | Maximum applicable age | |
| ├─ sub_title | string | Required | Default language subtitle | |
| ├─ user_level_limit | number | Required | Customer level restriction: 0-No restriction, 1-Restricted level | |
| ├─ user_level | string | Required | Restricted levels, multiple levels separated by English commas | |
| ├─ instruction | string | Required | Default language product instructions | |
| ├─ lang_data | object | Not required | Other language data | |
| ├─ zh-Hans | object | Required | Language identifier key | |
| ├─ name | string | Required | Treatment name | |
| ├─ sub_title | string | Required | Subtitle | |
| ├─ label | string | Required | Labels, multiple labels separated by English commas | |
| ├─ instruction | string | Required | Instructions | |
| ├─ goods_attributes_limit | string | Required | Whether product attributes are restricted: 0-No, 1-Yes | |
| ├─ goods_attributes_code | string | Not required | Product attribute codes, separated by English commas |
| Error Code | Description | Detail |
|---|---|---|
| 40068 | The store is not a Premium Version store. | The filled store is not an advanced store; only advanced stores support setting links |
| 40089 | Treatment unavailable for purchase. | The treatment corresponding to the filled treatment number is not available for sale at this store |
| Parameter Name | Value | Required | Example | Notes |
|---|---|---|---|---|
| access-token | Yes | Group/merchant token | ||
| merchant-id | No | Merchant ID, required when access-token is a group-type token | ||
| Content-Type | application/json | Yes |
| Name | Type | Required | Default | Notes | Other Info |
|---|---|---|---|---|---|
| custom_id | string | Required | Treatment number | ||
| link_list | object [] | Required | Link list, max 100 items | item type: object | |
| ├─ store_custom_id | string | Required | Store number | ||
| ├─ link_type | integer | Required | Link type: 0-Same as headquarters, 1-Store independent setting | ||
| ├─ link | string | Not required | Store treatment link, required when link_type is 1 |
| Name | Type | Required | Notes | Other Info |
|---|---|---|---|---|
| meta | object | Required | ||
| ├─ code | number | Required | ||
| ├─ msg | string | Required | ||
| ├─ error | string | Required | ||
| ├─ request_uri | string | Required | ||
| response | object | Required |