# POST /v2/accounting/connections/update

<div id="bkmrk-" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;"></div>### Route Info

<div id="bkmrk-method-endpoint-cont" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;"><div><table border="1" style="width: 100%; margin: auto; border-collapse: collapse; text-align: center; border: 1px solid #ddd;"><tbody><tr style="background: #f4f4f4; font-weight: bold;"><td style="padding: 10px;">Method</td><td style="padding: 10px;">Endpoint</td><td style="padding: 10px;">Controller</td></tr><tr><td style="direction: ltr; padding: 10px;">POST</td><td style="direction: ltr; padding: 10px;">/v2/accounting/connections/update</td><td style="direction: ltr; padding: 10px;">AccountingController@updateConnection</td></tr></tbody></table>

</div></div>### شرح عملکرد (Functionality)

این متد برای **ویرایش یک Connection موجود** استفاده می‌شود. نوع عملیات وابسته به دو آرایه است:

<div id="bkmrk-items_add%3A-%D8%A2%DB%8C%D8%AA%D9%85%E2%80%8C%D9%87%D8%A7%DB%8C%DB%8C" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;">- `items_add`: آیتم‌هایی که باید به Connection اضافه شوند
- `items_remove`: آیتم‌هایی که باید از Connection جدا شوند

</div>برای هر آیتم، فیلد `relationship` در جدول مربوطه یا به مقدار `connection_id` آپدیت می‌شود یا **null** می‌گردد.

نوع هر آیتم، جدول مقصد را تعیین می‌کند:

<div id="bkmrk-pay%2C-wage-%E2%86%92-%D8%AC%D8%AF%D9%88%D9%84-pay" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;">- `pay`, `wage` → جدول `pays`
- `fitem` → جدول `factor_items`
- `financial_past` → جدول `financial_pasts`
- `check` → جدول `check_operations`

</div>### پارامترهای ورودی (JSON Body)

```
{
  "connection_id": 42,
  "items_add": [
    { "type": "pay", "id": 1001 },
    { "type": "check", "id": 55 },
    { "type": "fitem", "id": 990 }
  ],
  "items_remove": [
    { "type": "financial_past", "id": 81 },
    { "type": "pay", "id": 402 }
  ]
}

```

فیلدهای اجباری:

<div id="bkmrk-connection_id-%28int%29-" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;">- `connection_id` (int)
- `items_add` (آرایه آیتم‌ها)
- `items_remove` (آرایه آیتم‌ها)

</div>### خروجی (Response)

#### موفق (Success)

```
{
  "status": true,
  "time": 1718450000
}
```

<div id="bkmrk--1" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;"></div>### خطا (Error)

اینجا هیچ مدیریت خطا، اعتبارسنجی یا کنترل وجود ندارد. اگر:

<div id="bkmrk-connection_id-%D8%A7%D8%B4%D8%AA%D8%A8%D8%A7%D9%87" style="direction: rtl; font-family: Vazir,Tahoma; text-align: justify; line-height: 1.85;">- `connection_id` اشتباه باشد،
- آیتم حذف‌شونده قبلاً جدا شده باشد،
- آیتم افزوده‌شونده وجود نداشته باشد،
- نوع (`type`) اشتباه ارسال شود،

</div>باز هم متد بدون هیچ هشدار یا Exception، پاسخ موفق بازمی‌گرداند. (Silent Failure)