Update collection
const url = 'https://acme.mykreezalid.com/api/v1/collections/example?by=handle';const options = { method: 'PATCH', headers: {Authorization: 'Basic <credentials>', 'Content-Type': 'application/json'}, body: '{"handle":"soldes","title":"Promotions de Printemps","metadata":{"last_updated_at":"2025-07-01T10:00:00Z","theme":"blue"},"parent_handle":"promos","storefront_enabled":true,"is_online":true,"type":"listing","page_title":"Voitures électriques","subtitle":null,"description":null,"image_alt":null,"rules":null,"template":null,"thumbnail":null,"canonical_url":null,"meta_title":null,"meta_description":null,"meta_keywords":null,"no_index":false,"no_follow":false,"sitemap_changefreq":null,"sitemap_priority":null}'};
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://acme.mykreezalid.com/api/v1/collections/example?by=handle' \ --header 'Authorization: Basic <credentials>' \ --header 'Content-Type: application/json' \ --data '{ "handle": "soldes", "title": "Promotions de Printemps", "metadata": { "last_updated_at": "2025-07-01T10:00:00Z", "theme": "blue" }, "parent_handle": "promos", "storefront_enabled": true, "is_online": true, "type": "listing", "page_title": "Voitures électriques", "subtitle": null, "description": null, "image_alt": null, "rules": null, "template": null, "thumbnail": null, "canonical_url": null, "meta_title": null, "meta_description": null, "meta_keywords": null, "no_index": false, "no_follow": false, "sitemap_changefreq": null, "sitemap_priority": null }'Updates the fields sent, and only those. Besides the integrator’s fields (title, metadata, handle), a collection’s page can be written: the storefront switch, texts, SEO, indexing and conditions, checked as the back office checks them. A storefront collection never takes an address a page, a route or another collection holds, and one that changes address redirects from the old one. On a collection made by a model, the conditions and the type are its model’s and are refused here; every other inherited field takes null for the model’s pattern, an empty string for nothing on purpose, or its own value (never an empty name). The image is uploaded through the back office only.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The handle (slug) of the collection, or its id with by=id
Query Parameters
Section titled “Query Parameters”How the path names the collection: handle (the default, which also finds an integrator’s source handle) or id. A handle may be made of digits only, so an id is never guessed.
Request Bodyrequired
Section titled “Request Bodyrequired”Represents a logical group of listings, such as construction projects or promotions, or a storefront page presenting listings or users. A collection made by a collection model follows its model’s conditions; its fields left null show the model’s patterns.
object
Collection’s unique identifier
Example
432432URL-friendly identifier for the collection (slug)
Example
soldesHuman-readable title of the collection
Example
Promotions de PrintempsFlexible metadata container for the collection
object
Example
{ "last_updated_at": "2025-07-01T10:00:00Z", "theme": "blue"}Handle of the parent collection, if this is a sub-collection. It is not returned in responses: list a parent’s sub-collections with GET /collections/{parent_handle}.
Example
promosWhether the collection is a storefront page, at /{handle}
Example
trueWhether its page is online
Example
trueWhat it presents: listing or user
Example
listingThe title its page shows. On a collection made by a model: null for the model’s pattern, empty for nothing, or its own
Example
Voitures électriquesSame three states as page_title
Example
nullHTML; same three states as page_title
Example
nullAlternative text of the image (the image itself is uploaded in the back office)
Example
nullIts conditions: inclusion {type: AND or OR, rules: […]} and exclusion […]. Read-only on a collection made by a model
object
Example
nullSuffix of the theme’s collection template; empty, the default one
Example
nullSnippet drawing each item; empty, the default card of its type
Example
nullFull URL; never inherited
Example
nullSEO title
Example
nullSEO description
Example
nullSEO keywords
Example
nullKept out of search engines; null on a collection made by a model: as the model
Example
falseLinks not followed; null on a collection made by a model: as the model
Example
falseAlways, hourly, daily, weekly, monthly, yearly or never
Example
nullFrom 0 to 1
Example
nullThe id of the collection model it is made by; read-only
Example
nullThe handle of that model; read-only
Example
nullThe model’s value it stands for; read-only
Example
nullThe label of that value; read-only
Example
nullThe criterion its model varies on: type, field (an attribute’s alias) and a readable name
object
Example
{ "type": "attribute", "field": "marque", "name": "Marque"}Collection creation date
Example
2025-07-20T10:30:00ZDate of last update
Example
2025-07-20T14:45:00ZResponses
Section titled “Responses”Collection successfully updated
Represents a logical group of listings, such as construction projects or promotions, or a storefront page presenting listings or users. A collection made by a collection model follows its model’s conditions; its fields left null show the model’s patterns.
object
Collection’s unique identifier
URL-friendly identifier for the collection (slug)
Human-readable title of the collection
Flexible metadata container for the collection
object
Handle of the parent collection, if this is a sub-collection. It is not returned in responses: list a parent’s sub-collections with GET /collections/{parent_handle}.
Whether the collection is a storefront page, at /{handle}
Whether its page is online
What it presents: listing or user
The title its page shows. On a collection made by a model: null for the model’s pattern, empty for nothing, or its own
Same three states as page_title
HTML; same three states as page_title
Alternative text of the image (the image itself is uploaded in the back office)
Its conditions: inclusion {type: AND or OR, rules: […]} and exclusion […]. Read-only on a collection made by a model
object
Suffix of the theme’s collection template; empty, the default one
Snippet drawing each item; empty, the default card of its type
Full URL; never inherited
SEO title
SEO description
SEO keywords
Kept out of search engines; null on a collection made by a model: as the model
Links not followed; null on a collection made by a model: as the model
Always, hourly, daily, weekly, monthly, yearly or never
From 0 to 1
The id of the collection model it is made by; read-only
The handle of that model; read-only
The model’s value it stands for; read-only
The label of that value; read-only
The criterion its model varies on: type, field (an attribute’s alias) and a readable name
object
Collection creation date
Date of last update
Example
{ "id": 432432, "handle": "soldes", "title": "Promotions de Printemps", "metadata": { "last_updated_at": "2025-07-01T10:00:00Z", "theme": "blue" }, "parent_handle": "promos", "storefront_enabled": true, "is_online": true, "type": "listing", "page_title": "Voitures électriques", "subtitle": null, "description": null, "image_alt": null, "rules": null, "template": null, "thumbnail": null, "canonical_url": null, "meta_title": null, "meta_description": null, "meta_keywords": null, "no_index": false, "no_follow": false, "sitemap_changefreq": null, "sitemap_priority": null, "model_id": null, "model_handle": null, "pivot_value": null, "pivot_label": null, "model_pivot": { "type": "attribute", "field": "marque", "name": "Marque" }, "created_at": "2025-07-20T10:30:00Z", "updated_at": "2025-07-20T14:45:00Z"}Refused or invalid: message says why, errors field by field
Why a collection or collection model request was refused.
object
The problems found: for a collection, field by field, the rules not met and their messages. Present only when there are some.
Example
{ "success": false, "message": "Collection handle is required"}Collection not found
Why a collection or collection model request was refused.
object
The problems found: for a collection, field by field, the rules not met and their messages. Present only when there are some.
Example
{ "success": false, "message": "Collection handle is required"}