Update Collection
Update a collection. Pass the id and only the fields that change. For SEO copy, pass id and description only. productIDs replaces the manual product list. clearProducts removes that list. mode dynamic uses filters and drops manual products. clearImage removes the photo. Include only fields you want to change; omit the rest. Empty strings, null, and 0 are ignored so they cannot wipe existing values. App connections need the booking:write or inventory:write scope.
curl -X POST "https://dash.lockii.app/api/v1/collection/{id}" \
-H "x-api-key: $LOCKII_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "string",
"filters": {
"availableOnly": true,
"categoryId": "string",
"includeHidden": true,
"locationId": "string",
"maxBasePriceCents": 0,
"minBasePriceCents": 0,
"orderBy": "manual"
},
"hiddenFromBrowse": true,
"imageID": "string",
"mode": "dynamic",
"productIDs": [
"string"
],
"slug": "string",
"clearCategory": true,
"clearImage": true,
"clearLocation": true,
"clearPrice": true,
"clearProducts": true,
"title": "string"
}'Authorization
x-api-keystringheaderAPI key from Settings → Integrations → API.
AuthorizationstringheaderThe same API key, or an OAuth access token, sent as Authorization: Bearer.
api_keystringqueryAPI key query parameter.
Parameters
idstringpathrequiredCollection id from list_collections.
Body
descriptionstringRenter-facing description as plain text. Omit to leave it unchanged.
filtersobjectDynamic filters: category, location, price, and availability. Omit to leave filters unchanged.
hiddenFromBrowsebooleanTrue hides the collection from the website. False shows it. Omit to leave it unchanged.
imageIDstringExisting image id. Omit when you do not have one. Do not invent an id.
modeenum<string>manual includes only productIDs. dynamic includes products that match filters. dynamic ignores productIDs.
One of:dynamicmanualproductIDsstring[]Product ids from search_products or readWebsite, in display order. On update this replaces the manual list. Do not invent ids.
slugstringPublic URL segment. Omit to generate one from the title.
clearCategorybooleanTrue removes the category filter.
clearImagebooleanTrue removes the image. Use this instead of an empty imageID.
clearLocationbooleanTrue removes the location filter.
clearPricebooleanTrue removes the minimum and maximum price filters.
clearProductsbooleanTrue removes every manually chosen product. Ignored when productIDs is set.
titlestringCollection title. Omit to leave it unchanged.
Response
JSON result for this operation.
{}