Skip to main content
#P1759

RESOURCE /v2/scrumboard/lists


Deep Hydration Logic Flow

منطق غنی‌سازی عمیق (Deep Hydration) که در اکثر متدها (Index, Store, Show, Update) اجرا می‌شود تا ساختار درختی کامل بورد را بسازد:

Start Request (Index/Store/Show)
Fetch List(s) Record from DB
Loop: For Each List
Fetch `scrumboard_cards`
Has Cards?
No
Skip Hydration
Return Empty Cards []
↓ (Yes)
Start Nested Loop: For Each Card
1. Decode Members
Fetch Operators (Avatar, Name)
2. Decode Labels
Fetch Label Details
3. Sprints
Filter Sprints by JSON
4. Comments
Fetch & Hydrate Operator
5. Checklists
Decode Items & Hydrate Operator
6. Media
Fetch Attachments
Merge All Data into Card Object
Add Card to List Object
Return Nested JSON Response


Get Board Lists

دریافت تمام لیست‌های (ستون‌های) مربوط به یک بورد خاص به همراه تمام کارت‌ها و جزئیات آن‌ها.

URL: /v2/scrumboard/lists
Method: GET
Controller: ListController@index

Parameters

Parameter Type Location Description
board_id Integer Query (الزامی) شناسه بوردی که لیست‌ها متعلق به آن هستند.
status Integer Query (اختیاری) فیلتر بر اساس وضعیت لیست.

Response Structure

{
    "items": [
        {
            "id": 1,
            "board_id": 10,
            "title": "To Do",
            "priority": 2,
            "cards": [
                {
                    "id": 101,
                    "title": "Task 1",
                    "members": [ { "id": 1, "first_name": "Ali", ... } ],
                    "labels": [ { "id": 5, "title": "Bug", "color": "red" } ],
                    "comments": [ ... ],
                    "checklists": [ ... ],
                    "attachments": [ ... ],
                    "sprints": [ ... ]
                }
            ]
        }
    ],
    "meta": { "timestamp": 1733754000 }
}

Create List

ایجاد یک لیست (ستون) جدید در بورد. بلافاصله پس از ایجاد، رکورد بازیابی شده و فرآیند Hydration روی آن اجرا می‌شود.

URL: /v2/scrumboard/lists
Method: POST
Controller: ListController@store

Parameters

Parameter Type Description
board_id Integer شناسه بورد والد.
title String عنوان لیست.
color String رنگ لیست (کد HEX).

Success Response

{
    "payload": {
        "id": 5,
        "title": "New Column",
        "cards": [],
        "created_at": "..."
    },
    "meta": { "timestamp": 1733754000 }
}

Show List

دریافت اطلاعات یک لیست خاص با شناسه ID. این متد نیز تمامی کارت‌ها و وابستگی‌های آن‌ها را بارگذاری می‌کند.

URL: /v2/scrumboard/lists/{id}
Method: GET
Controller: ListController@show

Path Parameters

Parameter Type Description
id Integer شناسه لیست (List ID).

Update List

ویرایش اطلاعات یک لیست.

URL: /v2/scrumboard/lists/{id}
Method: PUT / PATCH
Controller: ListController@update

Parameters

Parameter Type Description Default
board_id Integer شناسه بورد. -
title String عنوان لیست. -
color String رنگ لیست. -
priority Integer اولویت نمایش (Sort Order). 0
status Integer وضعیت لیست. 1

Success Response

{
    "payload": {
        "id": 5,
        "title": "Edited Title",
        "priority": 10,
        "cards": [ ... ]
    },
    "meta": { "timestamp": 1733754000 }
}

Delete List

حذف کامل یک لیست از دیتابیس.

URL: /v2/scrumboard/lists/{id}
Method: DELETE
Controller: ListController@destroy

Success Response

{
    "payload": 1, // تعداد ردیف‌های حذف شده
    "meta": {
        "timestamp": 1733754000
    }
}