# 9 Shop

# 1 Shop List

# 1.1 Get Shop List (GET)

Retrieve the list of shops bound to / created under the current account.

# URL

https://developers.cjdropshipping.com/api2.0/v1/shop/getShops

# CURL

curl --location --request GET 'https://developers.cjdropshipping.com/api2.0/v1/shop/getShops' \
                --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

# Rate Limit

No explicit rate-limit annotation; gateway default quota applies.

# Request Parameters

None (the account id is injected from the login session).

# Return

success

{
    "code": 200,
    "result": true,
    "message": "Success",
    "data": [
        {
            "id": "1424608189734850560",
            "createDate": "2024-01-01 12:00:00",
            "name": "MyShop",
            "status": 1,
            "type": "shopify",
            "updateDate": "2024-06-01 12:00:00",
            "individuationNum": "001",
            "fulfillmentStatus": "auto",
            "shopifyPodSettings": "{}",
            "marketplace": "us",
            "aliasName": "Alias",
            "syncInventory": 1,
            "syncInventoryRate": 100,
            "isCb": 0,
            "trackUrlTemplate": "https://example.com/track/{number}",
            "emailNotification": 1,
            "email": "user@example.com",
            "countryCode": "US",
            "storeCountry": "United States",
            "platformLogoUrl": "https://example.com/logo.png",
            "currencyCode": "USD",
            "businessType": 1,
            "deliveryProfileOpen": 1,
            "haveDeliveryProfileScopes": 1,
            "deliveryProfileSpecifiedShop": 1,
            "deliveryProfileNewShop": 0
        }
    ],
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}
Field Definition Type Length Note
id Shop id string 50
createDate Create time string 30
name Shop name string 200
status Shop status int 5 Store status: 0=Deleted, 1=Authorized, 2=Deactivated, 3=Authorization failed, 4=Authorization expired, 5=In transition
type Shop type / platform string 50 Referer Platforms
updateDate Update time string 30
individuationNum Individuation no. string 50
fulfillmentStatus Fulfillment status string 50
shopifyPodSettings Shopify POD settings string - JSON string
marketplace Marketplace string 50
aliasName Alias name string 200
syncInventory Sync inventory flag int 1 1/0
syncInventoryRate Inventory sync rate int 5 percent
isCb Cross-border flag int 1 1/0
trackUrlTemplate Tracking URL template string 500
emailNotification Email notification flag int 1 1/0
email Notification email string 200
countryCode Country code string 20
storeCountry Store country string 100
platformLogoUrl Platform logo string 500
currencyCode Currency code string 10
businessType Business type int 5
deliveryProfileOpen Delivery profile open flag int 1 1/0
haveDeliveryProfileScopes Has delivery profile scopes flag int 1 1/0
deliveryProfileSpecifiedShop Delivery profile specified shop int 1 1/0
deliveryProfileNewShop Delivery profile new shop flag int 1 1/0

# 2 Store Product

# 2.1 Save Product (POST)

Save a store product to CJ system.

# URL

https://developers.cjdropshipping.com/api2.0/v1/store/product/saveProduct

# CURL

curl --location 'https://developers.cjdropshipping.com/api2.0/v1/store/product/saveProduct' \
     --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
     --header 'Content-Type: application/json' \
     --data '{
         "id": "prod123",
         "title": "Example Product",
         "image": "https://example.com/image.jpg",
         "description": "Product description",
         "priceMin": 10.00,
         "priceMax": 20.00,
         "priceCurrency": "USD"
     }'
Parameter Definition Type Required Length Note
id Store product ID string Y 64
title Product title string Y 500
image Product image URL string Y 400
description Description string N 5000
priceMin Min price BigDecimal N 20 Must pair with priceCurrency
priceMax Max price BigDecimal N 20 Must pair with priceCurrency
priceCurrency Price currency string N 10 e.g. USD

# Return

success

{
    "code": 200,
    "result": true,
    "message": "success",
    "data": true,
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}

error

{
    "code": 1600100,
    "result": false,
    "message": "Param error",
    "data": null,
    "requestId": "323fda9d-3c94-41dc-a944-5cc1b8baf5b1"
}
Field Definition Type Length Note
code error code int 20 Reference error code
result Whether or not the return is normal boolean 1
message return message string 200
data return data object interface data return
requestId requestId string 48 Flag request for logging errors

# 2.2 Save Variant Batch (POST)

Save store product variants in batch.

# URL

https://developers.cjdropshipping.com/api2.0/v1/store/product/saveVariantBatch

# CURL

curl --location 'https://developers.cjdropshipping.com/api2.0/v1/store/product/saveVariantBatch' \
     --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
     --header 'Content-Type: application/json' \
     --data '{
         "variants": [
             {
                 "id": "var001",
                 "productId": "prod123",
                 "title": "Red - XL",
                 "sku": "SKU-RED-XL",
                 "image": "https://example.com/red-xl.jpg",
                 "shopPrice": 15.00,
                 "shopPriceCurrency": "USD",
                 "weight": 250,
                 "weightUnit": "g"
             }
         ]
     }'
Parameter Definition Type Required Length Note
variants Variant list Array Y -
- id Variant ID string Y 64
- productId Product ID string Y 64
- title Variant title string Y 500
- sku Variant SKU string Y 200
- image Variant image URL string Y 500
- shopPrice Variant price BigDecimal N 20
- shopPriceCurrency Price currency string N* 10 Required when shopPrice is provided
- weight Weight BigDecimal N 20
- weightUnit Weight unit string N 10 e.g. g, kg
- oldInventoryQuantity Old inventory qty long N -

# Return

success

{
    "code": 200,
    "result": true,
    "message": "success",
    "data": [
        {
            "id": "var001",
            "productId": "prod123",
            "saveSuccess": true,
            "saveFailMessage": null
        }
    ],
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}
Field Definition Type Length Note
id Variant ID string 64
productId Product ID string 64
saveSuccess Save result boolean 1
saveFailMessage Failure reason string 500 null if success

error

{
    "code": 1600100,
    "result": false,
    "message": "Param error",
    "data": null,
    "requestId": "323fda9d-3c94-41dc-a944-5cc1b8baf5b1"
}
Field Definition Type Length Note
code error code int 20 Reference error code
result Whether or not the return is normal boolean 1
message return message string 200
data return data object interface data return
requestId requestId string 48 Flag request for logging errors

# 2.3 Query Shop Products (Paged) (GET)

Paginated query of the current account's store products, supporting filtering by product relevance status. This endpoint does NOT return variants (use 2.4 Query Shop Product Details for variants). The account is resolved from the access token; only the caller's own shop products are returned.

# URL

https://developers.cjdropshipping.com/api2.0/v1/shop/product/queryPage

# CURL

curl --location --request GET 'https://developers.cjdropshipping.com/api2.0/v1/shop/product/queryPage?pageNum=1&pageSize=10&relevanceStatusValues=0&relevanceStatusValues=1' \
     --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
Parameter Definition Type Required Length Note
pageNum Page number int N - Default 1
pageSize Page size int N - Default 10, max 10 (at most 10 per query)
shopId Shop ID string N 200
shopProductId Shop product ID (exact) string N 200
searchKey Fuzzy match on product title string N 200
relevanceStatusValues Relevance status filter Set<Integer> N - 0-Unrelated 1-Partial 2-Related 3-Off-shelf related; omit=all

# Return

success

{
    "code": 200,
    "result": true,
    "message": "success",
    "data": {
        "pageNum": 1,
        "pageSize": 10,
        "total": 1,
        "list": [
            {
                "shopId": "shop_1",
                "shopName": "MyShop",
                "shopType": "Shopify",
                "platformProductId": "p_1",
                "platformProductTitle": "Rose",
                "platformProductImage": "https://example.com/p.jpg",
                "platformProductPrices": "9.99-19.99",
                "platformProductPricesCurrency": "USD",
                "platformProductHandle": "rose",
                "platformProductType": "Flowers",
                "platformProductCategoryId": "cat_1",
                "platformProductTags": "tag1,tag2",
                "shopProductStatus": 1,
                "relevanceStatus": 1,
                "createDateTime": 1782700800000
            }
        ]
    },
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}
Field Definition Type Note
pageNum Current page int
pageSize Page size int
total Total count int
list[].shopId Shop ID string
list[].shopName Shop name string
list[].shopType Shop platform type string e.g. Shopify
list[].platformProductId Shop product ID string
list[].platformProductTitle Product title string
list[].platformProductImage Product image string
list[].platformProductPrices Price range string Not returned for TEMU
list[].platformProductPricesCurrency Price currency string
list[].platformProductHandle Product handle string
list[].platformProductType Product type string
list[].platformProductCategoryId Category ID string
list[].platformProductTags Tags string
list[].shopProductStatus Status int 1-On shelf 2-Deleted 3-Off shelf
list[].relevanceStatus Relevance status int 0-Unrelated 1-Partial 2-Related 3-Off-shelf related
list[].createDateTime Created time long epoch millis

error

{
    "code": 1600100,
    "result": false,
    "message": "Param error",
    "data": null,
    "requestId": "323fda9d-3c94-41dc-a944-5cc1b8baf5b1"
}

# 2.4 Query Shop Product Details (GET)

Query shop product details by shopId + platformProductIds, returning products together with their variants. Both shopId and platformProductIds are required; platformProductIds allows at most 10 ids. The account is resolved from the access token; only the caller's own shop products are returned.

# URL

https://developers.cjdropshipping.com/api2.0/v1/shop/product/queryDetail

# CURL

curl --location --request GET 'https://developers.cjdropshipping.com/api2.0/v1/shop/product/queryDetail?shopId=shop_1&platformProductIds=p_1&platformProductIds=p_2' \
     --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
Parameter Definition Type Required Length Note
shopId Shop ID string Y 200
platformProductIds Shop product IDs (max 10) array Y - Repeat param: platformProductIds=a&platformProductIds=b

# Return

success (data is an array of product details, each item contains its variants)

{
    "code": 200,
    "result": true,
    "message": "success",
    "data": [
        {
            "shopId": "shop_1",
            "shopName": "MyShop",
            "shopType": "Shopify",
            "platformProductId": "p_1",
            "platformProductTitle": "Rose",
            "platformProductImage": "https://example.com/p.jpg",
            "platformProductPrices": "9.99-19.99",
            "platformProductPricesCurrency": "USD",
            "platformProductHandle": "rose",
            "platformProductType": "Flowers",
            "platformProductCategoryId": "cat_1",
            "platformProductTags": "tag1,tag2",
            "shopProductStatus": 1,
            "relevanceStatus": 1,
            "createDateTime": 1782700800000,
            "variants": [
                {
                    "platformProductId": "p_1",
                    "platformVariantId": "v_1",
                    "platformVariantSku": "SKU-1",
                    "platformVariantTitle": "Red",
                    "platformVariantImage": "https://example.com/v.jpg",
                    "price": 9.99,
                    "priceUSD": 9.99,
                    "priceCurrency": "USD",
                    "grams": "250",
                    "weight": 250,
                    "weightUnit": "g",
                    "relevanceStatus": "2",
                    "inventoryItemStatus": "2",
                    "shopProductStatus": 1,
                    "createDateTime": 1782700800000
                }
            ]
        }
    ],
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}
Field Definition Type Note
data[].shopId Shop ID string
data[].shopName Shop name string
data[].shopType Shop platform type string e.g. Shopify
data[].platformProductId Shop product ID string
data[].platformProductTitle Product title string
data[].platformProductImage Product image string
data[].platformProductPrices Price range string Not returned for TEMU
data[].platformProductPricesCurrency Price currency string
data[].platformProductHandle Product handle string
data[].platformProductType Product type string
data[].platformProductCategoryId Category ID string
data[].platformProductTags Tags string
data[].shopProductStatus Status int 1-On shelf 2-Deleted 3-Off shelf
data[].relevanceStatus Relevance status int 0-Unrelated 1-Partial 2-Related 3-Off-shelf related
data[].createDateTime Created time long epoch millis
data[].variants Variants array Variant list under the product
data[].variants[].platformProductId Owning product ID string
data[].variants[].platformVariantId Variant ID string
data[].variants[].platformVariantSku Variant SKU string
data[].variants[].platformVariantTitle Variant title string
data[].variants[].platformVariantImage Variant image string
data[].variants[].price Price BigDecimal Not returned for TEMU
data[].variants[].priceUSD Price (USD) BigDecimal Not returned for TEMU
data[].variants[].priceCurrency Price currency string
data[].variants[].grams Weight (g) string
data[].variants[].weight Weight BigDecimal
data[].variants[].weightUnit Weight unit string
data[].variants[].relevanceStatus Variant relevance string 0-Unknown 1-Unrelated 2-Related
data[].variants[].inventoryItemStatus Fulfillment status string 0-Unused 1-Fulfillment only 2-Fulfillment+Inventory 3-Inventory only
data[].variants[].shopProductStatus Status int 1-On shelf 2-Deleted 3-Off shelf
data[].variants[].createDateTime Created time long epoch millis

error

{
    "code": 1600100,
    "result": false,
    "message": "Param error",
    "data": null,
    "requestId": "323fda9d-3c94-41dc-a944-5cc1b8baf5b1"
}

# 3 Product Connection

Product Connection binds a CJ product/variant to a platform (shop) product/variant. Once bound, orders placed on the shop can be automatically matched to the corresponding CJ product for fulfilment.

# 3.1 Query Product Connection List (GET)

Query existing product connection records under the current account. Supports filtering by shop, platform product, platform variant.

# URL

https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection

# CURL

curl --location --request GET 'https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection?shopId=xxx&platformProductId=yyy&page=1&pageSize=10' \
                --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

# Request Parameters

Parameter Definition Type Required Length Note
shopId Shop Id string N 40 If omitted, the API shop bound to account is used, Shops
platformProductId Platform Product Id string N 100
platformVariantId Platform Variant Id string N 100
page Current page int N - Default 1
pageSize Page size int N - Default 10, max 100

# Return

success

{
    "code": 200,
    "result": true,
    "message": "Success",
    "data": {
        "total": 1,
        "list": [
            {
                "shopId": "xxx",
                "platformProductId": "yyy",
                "platformVariantId": "zzz",
                "cjProductId": "1424608189734850560",
                "cjVariantId": "1424608152007086080",
                "defaultArea": 1,
                "logistics": "PacketPlus",
                "sourceCountryCode": "CN",
                "sourceCountry": "China",
                "targetCountryCode": "US",
                "targetCountry": "United States"
            }
        ]
    },
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}
Field Definition Type Length Note
total Total count int 20
list Connection list list -
- shopId Shop Id string 40
- platformProductId Platform Product Id string 100
- platformVariantId Platform Variant Id string 100
- cjProductId CJ Product Id string 50
- cjVariantId CJ Variant Id string 50
- defaultArea Default area int 5
- logistics Logistics method string 200
- sourceCountryCode Source country code string 20
- sourceCountry Source country string 100
- targetCountryCode Target country code string 20
- targetCountry Target country string 100

# 3.2 Create Product Connection (POST)

Bind one CJ product (with one or more variants) to a platform product (with the corresponding variants).

# URL

https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection

# CURL

curl --location --request POST 'https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection' \
                --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
                --header 'Content-Type: application/json' \
                --data-raw '{
                    "shopId": "xxx",
                    "defaultArea": 1,
                    "logistics": "PacketPlus",
                    "cjProductId": "1424608189734850560",
                    "platformProductId": "yyy",
                    "sourceCountryCode": "CN",
                    "sourceCountry": "China",
                    "targetCountryCode": "US",
                    "targetCountry": "United States",
                    "variantList": [
                        {
                            "cjVariantId": "1424608152007086080",
                            "platformVariantId": "v_001"
                        }
                    ]
                }'

# Rate Limit

# Request Parameters

Parameter Definition Type Required Length Note
shopId Shop Id string N 50 If omitted, the API shop bound to account is used, Shops
defaultArea Default area int Y 5
logistics Logistics method string Y 200
cjProductId CJ Product Id string Y 50
platformProductId Platform Product Id string Y 100
sourceCountryCode Source country code string N 20
sourceCountry Source country string N 100
targetCountryCode Target country code string N 20
targetCountry Target country string N 100
variantList Variant list list Y - At least one variant
- cjVariantId CJ Variant Id string Y 50
- platformVariantId Platform Variant Id string Y 100

# Return

success

{
    "code": 200,
    "result": true,
    "message": "Success",
    "data": true,
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}

# 3.3 Disconnect Product (DELETE)

Remove an existing connection by platform product Id (optionally restricted to a single platform variant).

# URL

https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection

# CURL

curl --location --request DELETE 'https://developers.cjdropshipping.com/api2.0/v1/product/conn/connection?shopId=xxx&platformProductId=yyy&platformVariantId=zzz' \
                --header 'CJ-Access-Token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

# Request Parameters

Parameter Definition Type Required Length Note
shopId Shop Id string N 50 If omitted, the API shop bound to account is used, Shops
platformProductId Platform Product Id string Y 100
platformVariantId Platform Variant Id string N 100 If empty, all variant connections under that platform product are removed

# Return

success

{
    "code": 200,
    "result": true,
    "message": "Success",
    "data": true,
    "requestId": "ae543fd1-cdd7-4a61-974a-1340fea678c6"
}