PUT /product-offers/{id}

Update a product offer

Product Offers

Description

Update an existing product offer. Only the provided fields will be updated.

Authentication Required: User must be authenticated and have the 'merchant' feature flag.

Authorization: Merchant users can only update their own offers.

Parameters

id integer path required
Offer ID

Request Body

required

application/json

product_idinteger
Associated product ID
Example: 123
skustring
Stock Keeping Unit
Example: PROD-12345
pricenumber (float)
Current price (must be >= 0)
Example: 24.99
former_pricenumber (float)
Previous price for discount display
Example: 29.99
urlstring (uri)
URL to the product page
Example: https://myshop.com/product/12345
delivery_costsobject
Delivery costs by shipping method
Example: {"standard":4.99}
delivery_timeinteger
Estimated delivery time in days
Example: 3
order_processing_timeinteger
Order processing time in days
Example: 1
free_return_daysinteger
Number of days for free returns
Example: 30
usedboolean
Whether the product is used
conditionstringenum: new, like_new, good, fair, poor
Product condition
Example: new
commission_ratenumber (float)
Commission rate percentage (0-100)
Example: 5.0

Responses

200 Offer updated successfully
application/json
statusstring
Example: success
messagestring
Example: Offer updated successfully
dataobject
401 Authentication required
application/json
Example:
{
  "status": "error",
  "message": "Not authenticated or insufficient permissions"
}
404 Offer not found
application/json
Example:
{
  "status": "error",
  "message": "Offer not found"
}
422 Validation error
application/json
Example:
{
  "status": "error",
  "message": "Failed to update offer",
  "errors": [
    "Price must be greater than or equal to 0"
  ]
}