ESC
Start typing to search documentation...
JoonWeb Dev

Collections Endpoints

Detailed technical documentation and implementation guide for Collections Endpoints.

Overview #

List collections #

GET /api/admin/26.0/collections

Parameters

Field Type Description
limit integer [Optional] Number of results to return (default 20, max 10000)
page integer [Optional] Page number to fetch (default 1)
sort_by string [Optional] Field to sort by (e.g. created_at, title)
sort_order string [Optional] Sort direction: asc or desc
search string [Optional] Search in title
status string [Optional] Filter by status
handle string [Optional] Filter by handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "collections": [
        {
            "id": 5032,
            "handle": "summer-collection",
            "title": "Summer Collection 2026",
            "description": "Get ready for the heat with our new arrivals.",
            "cover": "https:\/\/cdn.joonweb.com\/images\/summer-banner.jpg",
            "status": "public",
            "sort_order": "manual",
            "rules": [
                {
                    "column": "tag",
                    "relation": "equals",
                    "condition": "summer"
                }
            ],
            "products_count": 45,
            "created_at": "2026-08-27T11:31:04+02:00",
            "updated_at": "2026-08-27T11:31:04+02:00"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 20,
        "total": 1,
        "total_pages": 1
    }
}

Count collections #

GET /api/admin/26.0/collections/count

Parameters

Field Type Description
limit integer [Optional] Number of results to return (default 20, max 10000)
page integer [Optional] Page number to fetch (default 1)
sort_by string [Optional] Field to sort by (e.g. created_at, title)
sort_order string [Optional] Sort direction: asc or desc
search string [Optional] Search in title
status string [Optional] Filter by status
handle string [Optional] Filter by handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "count": 156
}

Get collection #

GET /api/admin/26.0/collections/{id}

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "collection": {
        "id": 5032,
        "handle": "summer-collection",
        "title": "Summer Collection 2026",
        "description": "Get ready for the heat with our new arrivals.",
        "cover": "https:\/\/cdn.joonweb.com\/images\/summer-banner.jpg",
        "status": "public",
        "sort_order": "manual",
        "rules": [
            {
                "column": "tag",
                "relation": "equals",
                "condition": "summer"
            }
        ],
        "products_count": 45,
        "created_at": "2026-08-27T11:31:04+02:00",
        "updated_at": "2026-08-27T11:31:04+02:00"
    }
}

List collection products #

GET /api/admin/26.0/collections/{id}/products

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "collection": {
        "id": 5032,
        "handle": "summer-collection",
        "title": "Summer Collection 2026",
        "description": "Get ready for the heat with our new arrivals.",
        "cover": "https:\/\/cdn.joonweb.com\/images\/summer-banner.jpg",
        "status": "public",
        "sort_order": "manual",
        "rules": [
            {
                "column": "tag",
                "relation": "equals",
                "condition": "summer"
            }
        ],
        "products_count": 45,
        "created_at": "2026-08-27T11:31:04+02:00",
        "updated_at": "2026-08-27T11:31:04+02:00"
    }
}

Create collection #

POST /api/admin/26.0/collections

Parameters

Field Type Description
title string [Required] The title of the collection
description string [Optional] HTML description
status string [Optional] Status: public or draft
sort_order string [Optional] manual, best-selling, alpha-asc, etc.
rules array [Optional] Array of smart collection rules

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Request Body
{
    "collection": {
        "title": "example_title",
        "body_html": "example_body_html",
        "handle": "example_handle",
        "status": "active",
        "type": "example_type",
        "image": {}
    }
}
Response
200 OK
{
    "collection": {
        "id": 5032,
        "handle": "summer-collection",
        "title": "Summer Collection 2026",
        "description": "Get ready for the heat with our new arrivals.",
        "cover": "https:\/\/cdn.joonweb.com\/images\/summer-banner.jpg",
        "status": "public",
        "sort_order": "manual",
        "rules": [
            {
                "column": "tag",
                "relation": "equals",
                "condition": "summer"
            }
        ],
        "products_count": 45,
        "created_at": "2026-08-27T11:31:04+02:00",
        "updated_at": "2026-08-27T11:31:04+02:00"
    }
}

Update collection #

PUT /api/admin/26.0/collections/{id}

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle
title string [Required] The title of the collection
description string [Optional] HTML description
status string [Optional] Status: public or draft
sort_order string [Optional] manual, best-selling, alpha-asc, etc.
rules array [Optional] Array of smart collection rules

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Request Body
{
    "collection": []
}
Response
200 OK
{
    "collection": {
        "id": 5032,
        "handle": "summer-collection",
        "title": "Summer Collection 2026",
        "description": "Get ready for the heat with our new arrivals.",
        "cover": "https:\/\/cdn.joonweb.com\/images\/summer-banner.jpg",
        "status": "public",
        "sort_order": "manual",
        "rules": [
            {
                "column": "tag",
                "relation": "equals",
                "condition": "summer"
            }
        ],
        "products_count": 45,
        "created_at": "2026-08-27T11:31:04+02:00",
        "updated_at": "2026-08-27T11:31:04+02:00"
    }
}

Delete collection #

DELETE /api/admin/26.0/collections/{id}

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "success": true,
    "message": "Deleted successfully"
}

List collection metafields #

GET /api/admin/26.0/collections/{id}/metafields.json

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "metafields": [
        {
            "id": 8492,
            "namespace": "global",
            "key": "title_tag",
            "value": "Buy Premium Headphones Online",
            "value_type": "string",
            "description": "SEO Title Tag",
            "owner_id": 104593,
            "owner_resource": "product",
            "created_at": "2026-08-27T11:31:04+02:00",
            "updated_at": "2026-08-27T11:31:04+02:00"
        }
    ],
    "pagination": {
        "current_page": 1,
        "per_page": 20,
        "total": 1,
        "total_pages": 1
    }
}

Create collection metafield #

POST /api/admin/26.0/collections/{id}/metafields.json

Parameters

Field Type Description
id integer/string [Required] The resource ID or handle
namespace string [Required] Grouping namespace
key string [Required] Metafield key
value string [Required] Metafield value
value_type string [Required] string, integer, json, etc.
description string [Optional] Description of the metafield

Headers

Header Value
X-Joonweb-Access-Token jw_at_xxxxxxxxxxxx
Content-Type application/json
Request Example
Response
200 OK
{
    "metafield": {
        "id": 8492,
        "namespace": "global",
        "key": "title_tag",
        "value": "Buy Premium Headphones Online",
        "value_type": "string",
        "description": "SEO Title Tag",
        "owner_id": 104593,
        "owner_resource": "product",
        "created_at": "2026-08-27T11:31:04+02:00",
        "updated_at": "2026-08-27T11:31:04+02:00"
    }
}

What's Next? #

Last modified: Aug 25, 2026