# Students

## Index

<mark style="color:blue;">`GET`</mark> `https://{subdomain}.inskill.ru/api/v3/students`

Поиск пользователей

#### Path Parameters

| Name                                        | Type   | Description                        |
| ------------------------------------------- | ------ | ---------------------------------- |
| subdomain<mark style="color:red;">\*</mark> | String | Уникальный поддомен вашего проекта |

#### Query Parameters

| Name                                     | Type    | Description                                                                            |
| ---------------------------------------- | ------- | -------------------------------------------------------------------------------------- |
| search<mark style="color:red;">\*</mark> | String  | Строка для поиска пользователей. Поиск осуществляется по email, ФИО и номеру телефона. |
| withProducts                             | Boolean | Возвращать информацию о продуктах, или нет?                                            |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  // Основные данные ученика
  "data": {
    "id": 5,
    "name": "Ольга",
    "email": "user123@example.com",
    "phone": "+79123456789",
    "avatar": "https://path.to/image.jpg",
    "isActive": true // Есть ли у пользователя активный доступ к курсам? 
  },
  // Данные о продуктах ученика
  "products": [
    {
      "id": 133,
      "name": "Женщины. Дом. Новички.",
      "price": 2900.00,
      "currency": "RUB",
      "pivot": {
        "is_form_filled": 0, // Заполнена ли анкета
        "payment_id": null, // ID платежа, по которому был выдан продукт
        "is_delivered": false, // Продукт уже активирован, или нет?
        "created_at": "2022-02-28T16:11:57.000000Z" // Дата добавления продукта
      }
    }
  ]
}
```

{% endtab %}
{% endtabs %}

## Show

<mark style="color:blue;">`GET`</mark> `https://{subdomain}.inskill.ru/api/v3/students/{student}`

Просмотр сведений о конкретном ученике.

#### Path Parameters

| Name                                        | Type   | Description                                                                                                               |
| ------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------- |
| student<mark style="color:red;">\*</mark>   | String | Уникальный ID ученика. ID ученика может быть получен в личном кабинете администратора, или при создании ученика через API |
| subdomain<mark style="color:red;">\*</mark> | String | Уникальный поддомен вашего проекта                                                                                        |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
  // Основные данные ученика
  "data": {
    "id": 5,
    "name": "Ольга",
    "email": "user123@example.com",
    "phone": "+79123456789",
    "avatar": "https://path.to/image.jpg",
    "isActive": true // Есть ли у пользователя активный доступ к курсам? 
  },
  // Данные о продуктах ученика
  "products": [
    {
      "id": 133,
      "name": "Женщины. Дом. Новички.",
      "price": 2900.00,
      "currency": "RUB",
      "pivot": {
        "is_form_filled": 0, // Заполнена ли анкета
        "payment_id": null, // ID платежа, по которому был выдан продукт
        "is_delivered": false, // Продукт уже активирован, или нет?
        "created_at": "2022-02-28T16:11:57.000000Z" // Дата добавления продукта
      }
    }
  ]
}
```

{% endtab %}
{% endtabs %}

## Create

<mark style="color:green;">`POST`</mark> `https://{subdomain}.inskill.ru/api/v3/students`

Добавление нового ученика в проект.

#### Path Parameters

| Name      | Type   | Description                        |
| --------- | ------ | ---------------------------------- |
| subdomain | string | Уникальный поддомен вашего проекта |

#### Request Body

| Name                   | Type    | Description                                                                                                                                                   |
| ---------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| notify\_about\_product | boolean | Если true, то при добавлении продукта, клиенту будет отправлено письмо о новом продукте (содержимое письма задается в настройках проекта).                    |
| email                  | string  | Email пользователя                                                                                                                                            |
| name                   | string  | ФИО пользователя                                                                                                                                              |
| phone                  | string  | Номер телефона в международном формате E.164. Пример: +79123456789                                                                                            |
| product                | integer | ID продукта, который необходимо назначить пользователю после добавления. ID продукта можно взять на странице "Моя страница" в личном кабинете администратора. |
| force                  | boolean | Если клиент уже есть в проекте, то он будет обновлен.                                                                                                         |

{% tabs %}
{% tab title="200 Возвращает данные созданного пользователя" %}

```javascript
{
  "data": {
    "id": 2131,
    "name": "Prof. Golden Wintheiser",
    "email": "jane43@hotmail.com",
    "phone": "+18657085469952",
    "avatar": ""
  },
  "status": "ok",
  "message": "Пользователь успешно добавлен"
}
```

{% endtab %}

{% tab title="422 Ошибка валидации: пользователь уже добавлен" %}

```javascript
{
  "data": {
    "id": 2131,
    "name": "Prof. Golden Wintheiser",
    "email": "jane43@hotmail.com",
    "phone": "+18657085469952",
    "avatar": ""
  },
  "message": "The given data was invalid.",
  "errors": {
    "email": [ "Пользователь с таким email уже присутствует в проекте. Воспользуйтесь методом Update для обновления пользователя." ]
  }
}
```

{% endtab %}
{% endtabs %}

{% hint style="info" %}

#### Для ученика будет создан случайный пароль и отправлено приветственное письмо.

Текст приветственного письма можно задать в настройках проекта.
{% endhint %}

## Update

<mark style="color:purple;">`PATCH`</mark> `https://{subdomain}.inskill.ru/api/v3/students/{student}`

Обновление имеющегося ученика

#### Path Parameters

| Name                                        | Type    | Description                                                                                                               |
| ------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| student<mark style="color:red;">\*</mark>   | integer | Уникальный ID ученика. ID ученика может быть получен в личном кабинете администратора, или при создании ученика через API |
| subdomain<mark style="color:red;">\*</mark> | string  | Уникальный поддомен вашего проекта                                                                                        |

#### Request Body

| Name    | Type    | Description                                                                                                                                  |
| ------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| phone   | string  | Телефон ученика в международном формате E.164. Пример: +79123456789                                                                          |
| name    | string  | ФИО ученика                                                                                                                                  |
| product | integer | ID продукта, который необходимо назначить пользователю. ID продукта можно взять на странице "Моя страница" в личном кабинете администратора. |

{% tabs %}
{% tab title="200 " %}

```javascript
{
  "data": {
    "id": 1324,
    "name": "Prof. Golden Hugo",
    "email": "hu2n3@example.com",
    "phone": "+18126388729",
    "avatar": ""
  },
  "status": "ok",
  "message": "Пользователь успешно обновлен"
}

```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.inskill.ru/nastroiki-proekta/api/students.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
