# مرجع API اجزا

Source: https://instatus.com/help/fa/api/components

## دریافت همه اجزای صفحه وضعیت شما

**نقطه پایانی:**

```bash
GET /v2/:page_id/components?page=:page&per_page=:per_page
```

- شماره صفحه پیش‌فرض ۱ است.
- مقدار پیش‌فرض per_page برابر ۵۰ و بیشینه ۱۰۰ آیتم در هر صفحه است.

**نمونه پاسخ:**

```json
[
  {
    "id": "ckf01fvnxywz60a35wdbn5gz5",
    "name": "App",
    "status": "OPERATIONAL",
    "uniqueEmail": "nasa-app-1nozrueut@automation.instatus.com",
    "description": "",
    "showUptime": true,
    "order": 0,
    "group": null
  },
  {
    "id": "ckf01fvnxywz50a35nh1qzssm",
    "name": "Website",
    "status": "OPERATIONAL",
    "description": "",
    "showUptime": true,
    "order": 0,
    "group": null,
    "uniqueEmail": "nasa-website-1nozrueut@automation.instatus.com"
  }
]
```

## دریافت یک جزء

**نقطه پایانی:**

```bash
GET /v2/:page_id/components/:component_id
```

**نمونه پاسخ**

```json
{
  "id": "ckf01fvnxywz50a35nh1qzssm",
  "name": "Website",
  "description": "",
  "status": "OPERATIONAL",
  "uniqueEmail": "nasa-website-1nozrueut@automation.instatus.com",
  "showUptime": true,
  "order": 0,
  "group": null
}
```

## ساخت یک جزء

**نقطه پایانی:**

```bash
POST /v1/:page_id/components
```

**نمونه درخواست:**

```json
{
  "name": "Test component",
  "description": "Testing",
  "status": "OPERATIONAL",
  "order": 6,
  "showUptime": true,
  "grouped": false,
  "archived": false,
  "translations": {
    "name": {
      "fr": "Composant de test"
    },
    "description": {
      "fr": "En test"
    }
  }
}
```

**نمونه پاسخ:**

```json
{
  "id": "ckf1d4f6a4aaf0a356vqg0rdm",
  "name": "Test component",
  "description": "Testing",
  "uniqueEmail": "nasa-test-component-oomaksikj@automation.instatus.com",
  "status": "OPERATIONAL",
  "showUptime": true,
  "order": 8,
  "group": null,
  "translations": {
    "name": {
      "fr": "Composant de test"
    },
    "description": {
      "fr": "En test"
    }
  }
}
```

اگر می‌خواهید جزئی را زیر یک گروه اضافه کنید، می‌توانید `grouped` را `true` و `group` را برابر `ID` گروه دلخواهتان قرار دهید.

## به‌روزرسانی یک جزء

**نقطه پایانی:**

```bash
PUT /v2/:page_id/components/:component_id
```

**نمونه درخواست:**

```json
{
  "name": "Test component 4",
  "description": "Test test test",
  "status": "OPERATIONAL",
  "order": 6,
  "showUptime": true,
  "grouped": false,
  "archived": true,
  "translations": {
    "name": {
      "fr": "Composant de test 4"
    },
    "description": {
      "fr": "Test test test"
    }
  }
}
```

**نمونه پاسخ:**

```json
{
  "id": "ckf1d4f6a4aaf0a356vqg0rdm",
  "name": "Test component 4",
  "uniqueEmail": "nasa-test-component-oomaksikj@automation.instatus.com",
  "status": "OPERATIONAL",
  "description": "Test test test",
  "showUptime": true,
  "order": 6,
  "group": null,
  "translations": {
    "name": {
      "fr": "Composant de test 4"
    },
    "description": {
      "fr": "Test test test"
    }
  }
}
```
اگر می‌خواهید گروه یک جزء را به‌روزرسانی کنید، می‌توانید `grouped` را `true` و `groupId` را برابر `ID` گروه دلخواهتان قرار دهید.

## حذف یک جزء

**نقطه پایانی:**

```bash
DELETE /v1/:page_id/components/:component_id
```

```json
{
  "id": "ckf1d4f6a4aaf0a356vqg0rdm"
}
```
