Skip to main content
POST
/
organizations
/
{orgId}
/
catalogs
/
{catalogId}
/
products
Create Products
curl --request POST \
  --url https://api.joinrefine.io/organizations/{orgId}/catalogs/{catalogId}/products \
  --header 'Content-Type: application/json' \
  --header 'REFINE_API_KEY: <api-key>' \
  --data '[
  {
    "id": "sku001",
    "catalogId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "imageUrl": "https://cdn.site.com/p/sku001.jpg",
    "descriptor": "Red Linen Dress",
    "metadata": {
      "color": "red",
      "size": "S",
      "price": 119.99
    }
  }
]'
{
  "status": "success",
  "message": "products uploaded",
  "count": 2
}

Authorizations

REFINE_API_KEY
string
header
required

API key for authentication

Path Parameters

orgId
string<uuid>
required

Organization ID (UUID)

catalogId
string<uuid>
required

Catalog ID (UUID)

Body

application/json · object[]
id
string
required

Product ID (SKU)

Example:

"sku001"

catalogId
string<uuid>
required

Catalog ID (must match path parameter)

imageUrl
string<uri>
required

Product image URL

Example:

"https://cdn.site.com/p/sku001.jpg"

descriptor
string
required

Product description (will be converted to lowercase)

Example:

"Red Linen Dress"

metadata
object

Additional product metadata

Example:
{
"color": "red",
"size": "S",
"price": 119.99
}

Response

Products created successfully

status
enum<string>
Available options:
success
Example:

"success"

message
string
Example:

"products uploaded"

count
integer

Number of products affected

Example:

2

I