# GET /v2/comments

# Comments: List &amp; Filter

این اندپوینت برای دریافت لیستی از نظرات (Comments) با قابلیت‌های فیلترینگ و مرتب‌سازی پیشرفته طراحی شده است.   
این پیاده‌سازی از **Eloquent ORM** و **API Resources** لاراول بهره می‌برد و نتایج را به صورت صفحه‌بندی شده (15 آیتم در هر صفحه) بازمی‌گرداند.

<div class="api-docs" id="bkmrk-">  ---

</div>## List All Comments

<div class="api-docs" id="bkmrk-url%3A-%2Fv2%2Fcomments-me"><div class="endpoint-info"><div>**URL:** `/v2/comments`</div><div>**Method:** <span class="method-get">GET</span></div><div>**Controller:** CommentController@index</div></div></div>### Query Parameters

این اندپوینت از پارامترهای زیر برای فیلتر و مرتب‌سازی پشتیبانی می‌کند:

<div class="api-docs" id="bkmrk-parameter-type-descr"><table class="schema-table" dir="rtl"><thead><tr><th>Parameter</th><th>Type</th><th>Description</th></tr></thead><tbody><tr><td>operator\_id</td><td>integer</td><td>فیلتر بر اساس شناسه اپراتور ثبت‌کننده نظر.</td></tr><tr><td>content\_id</td><td>integer</td><td>فیلتر بر اساس شناسه محتوایی که نظر برای آن ثبت شده (مثلا شناسه مقاله).</td></tr><tr><td>category</td><td>string</td><td>فیلتر بر اساس دسته‌بندی محتوا (مثلا `'article'`, `'accommodation'`).</td></tr><tr><td>branch</td><td>integer</td><td>فیلتر بر اساس شناسه شعبه.</td></tr><tr><td>status</td><td>integer</td><td>فیلتر بر اساس وضعیت نظر (مثلا تایید شده، در انتظار، رد شده).</td></tr><tr><td>flagged</td><td>integer</td><td>فیلتر نظراتی که علامت‌گذاری (Flag) شده‌اند. (مثلا `1` برای فیلتر موارد علامت‌دار).</td></tr><tr><td>reply\_to</td><td>integer</td><td>فیلتر برای نمایش پاسخ‌های یک نظر خاص (با ارسال ID نظر اصلی).</td></tr><tr><td>sortById</td><td>any</td><td>**منطق مرتب‌سازی:**  
- اگر این پارامتر در URL **وجود داشته باشد** (مثلا `?sortById=true`)، نتایج بر اساس `id` به صورت **نزولی (Desc)** مرتب می‌شوند (جدیدترین‌ها اول).  
- در غیر این صورت (پیش‌فرض)، نتایج به صورت **صعودی (Asc)** مرتب می‌شوند (قدیمی‌ترین‌ها اول).</td></tr><tr><td>page</td><td>integer</td><td>شماره صفحه برای صفحه‌بندی (مثلا `?page=2`).</td></tr></tbody></table>

</div>### Response Structure

خروجی این اندپوینت شامل آبجکت‌های `data` (آرایه‌ای از نظرات)، `links` (لینک‌های صفحه‌بندی) و `meta` (اطلاعات متا صفحه‌بندی) است.

### Response Example

```json
{
    "status": true,
    "time": 1715000000,
    "data": [
        {
            "id": 10,
            "operatorId": 5,
            "contentId": 152,
            "category": "article",
            "branch": 1,
            "commentText": "مطلب بسیار مفیدی بود، ممنون.",
            "status": "approved",
            "isFlagged": false,
            "replyTo": null,
            "createdAt": "2024-10-22T14:30:00.000000Z"
        }
    ],
    "links": {
        "first": "http://your.api/v2/comments?page=1",
        "last": "http://your.api/v2/comments?page=5",
        "prev": null,
        "next": "http://your.api/v2/comments?page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 5,
        "path": "http://your.api/v2/comments",
        "per_page": 15,
        "to": 15,
        "total": 75
    }
}
```