## Получить настройку

`GET /v1/recurring-deals/:id`

Возвращает настройку повторения сделки по её идентификатору. Используйте для чтения расписания, ограничений и истории выполнения.

## Параметры

| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| `id` | number | да | ID настройки в адресе запроса. Целое неотрицательное число в безопасном диапазоне. Источник ID — [список регулярных сделок](./list.md) |
| `select` | string / string[] | нет | Выбор полей ответа. Например, `select=id,active` |

## Примеры

### curl — личный ключ

```bash
curl -X GET "https://vibecode.bitrix24.tech/v1/recurring-deals/1" \
  -H "X-Api-Key: YOUR_API_KEY"
```

### curl — OAuth-приложение

```bash
curl -X GET "https://vibecode.bitrix24.tech/v1/recurring-deals/1" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"
```

### JavaScript — личный ключ

```javascript
const response = await fetch('https://vibecode.bitrix24.tech/v1/recurring-deals/1', {
  method: 'GET',
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})
const result = await response.json()
if (!result.success) throw new Error(result.error.message)
console.log(result.data)
```

### JavaScript — OAuth-приложение

```javascript
const response = await fetch('https://vibecode.bitrix24.tech/v1/recurring-deals/1', {
  method: 'GET',
  headers: { 'X-Api-Key': 'YOUR_APP_KEY', 'Authorization': 'Bearer USER_SESSION_TOKEN' },
})
const result = await response.json()
if (!result.success) throw new Error(result.error.message)
console.log(result.data)
```

## Поля ответа

| Поле | Тип | Описание |
|---|---|---|
| `success` | boolean | Признак успешного запроса |
| `data` | object | Настройка повторения. См. [поля регулярной сделки](./fields.md) |

## Пример ответа

```json
{
  "success": true,
  "data": {
    "id": 1,
    "dealId": 575,
    "basedId": 573,
    "active": false,
    "categoryId": 1,
    "isLimit": "T",
    "counterRepeat": 2,
    "limitRepeat": 2,
    "limitDate": null,
    "startDate": "2020-06-15",
    "nextExecution": null,
    "lastExecution": "2020-06-16T22:00:00.000Z",
    "params": {
      "mode": "multiple",
      "singleBeforeStartDateValue": 0,
      "singleBeforeStartDateType": "day",
      "multipleType": "day",
      "multipleInterval": 1,
      "offsetBeginDateType": "day",
      "offsetBeginDateValue": 1,
      "offsetCloseDateType": "day",
      "offsetCloseDateValue": 1
    }
  }
}
```

## Пример ответа при ошибке

404 — настройка не найдена:

```json
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Recurring deal is not found."
  }
}
```

## Ошибки

| HTTP | Код | Описание |
|---|---|---|
| 400 | `INVALID_PARAMS` | `id` не является целым неотрицательным числом в безопасном диапазоне |
| 404 | `ENTITY_NOT_FOUND` | Настройка с таким ID не найдена. Текст Битрикс24: `Recurring deal is not found.` |
| 404 | `ENTITY_NOT_FOUND` | Вызов Битрикс24 завершился успешно, но объект отсутствует. Сообщение: `recurringDeal <id> not found` |
| 422 | `BITRIX_ERROR` | Для `id=0` Битрикс24 возвращает `ID is not defined or invalid.` |
| 401 | `MISSING_API_KEY` | Не передан заголовок `X-Api-Key` |
| 401 | `TOKEN_MISSING` | Нет настроенных токенов доступа к Битрикс24 |
| 403 | `SCOPE_DENIED` | API-ключ не имеет скоупа `crm` |
| 403 | `BITRIX_ACCESS_DENIED` | Битрикс24 отказал в доступе, в том числе из-за отсутствия нужного скоупа |
| 422 | `BITRIX_ERROR` | Бизнес-отказ Битрикс24 или ограничение тарифа. Причина — в `error.message` |
| 503 | `BITRIX_TIMEOUT` | Битрикс24 не ответил вовремя. Повторите после срока из `Retry-After` |
| 502 | `BITRIX_UNAVAILABLE` | Нет соединения с Битрикс24 |
| 429 | `RATE_LIMITED` | Превышен лимит запросов. Повторите после срока из заголовка `Retry-After` |

Полный список общих ошибок API — [Коды ошибок](/docs/errors).

## Смотрите также

- [Список регулярных сделок](./list.md)
- [Поля регулярной сделки](./fields.md)
- [Поиск регулярных сделок](./search.md)
- [Агрегация регулярных сделок](./aggregate.md)
- [Регулярные сделки](../recurring-deals.md)
- [Синтаксис фильтрации](/docs/filtering)
