PATCH /v3/vendor/products/:id — update product
const url = 'https://api-ha-prod-p8.handbid.dev/v3/vendor/products/5001';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"reservePrice":2200,"refreshReservations":true}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api-ha-prod-p8.handbid.dev/v3/vendor/products/5001 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "reservePrice": 2200, "refreshReservations": true }'Partial update of one package in your catalog.
Fan-out semantics:
- A pricing delta (e.g. a new
reservePrice) fans out to the package’s already-reserved auction items once. refreshReservations: trueadditionally pushes the package’s current content (name, fine print, images) into its live listings.
Types: numeric fields (reservePrice, value, inventoryQuantity) must be numeric — a non-numeric value is a 422 validation_error.
Responses: 204 No Content on success; 422 on validation; 404 if the id isn’t in your catalog; 401 / 403 as elsewhere.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”Example
5001Request Body
Section titled “Request Body ”object
When true, push current content into the package’s live listings.
Example
{ "reservePrice": 2200, "refreshReservations": true}Responses
Section titled “ Responses ”Updated. Re-read via GET /v3/vendor/products/:id.
No or invalid Bearer token.
Unified error envelope. retryAfter is present only on transient (429 / 503) responses.
object
Stable machine-readable error code (e.g. unauthorized, forbidden, not_found, validation_error, unavailable).
Human-readable explanation.
Seconds to wait before retrying. Present on 429 and 503.
Example
{ "error": "unauthorized", "message": "A valid Bearer token is required."}The token’s organization is not a marketplace vendor.
Unified error envelope. retryAfter is present only on transient (429 / 503) responses.
object
Stable machine-readable error code (e.g. unauthorized, forbidden, not_found, validation_error, unavailable).
Human-readable explanation.
Seconds to wait before retrying. Present on 429 and 503.
Example
{ "error": "forbidden", "message": "Your organization is not a marketplace vendor."}Not found in your catalog.
Unified error envelope. retryAfter is present only on transient (429 / 503) responses.
object
Stable machine-readable error code (e.g. unauthorized, forbidden, not_found, validation_error, unavailable).
Human-readable explanation.
Seconds to wait before retrying. Present on 429 and 503.
Example
{ "error": "not_found", "message": "Product not found in your catalog."}Validation error (e.g. a numeric field was not numeric).
Unified error envelope. retryAfter is present only on transient (429 / 503) responses.
object
Stable machine-readable error code (e.g. unauthorized, forbidden, not_found, validation_error, unavailable).
Human-readable explanation.
Seconds to wait before retrying. Present on 429 and 503.
Example
{ "error": "validation_error", "message": "reservePrice must be numeric."}