Функция доступна в провайдере версии 4.5.1 и выше.

_Data source_ функция **decort_cb_vins_list** служит для получения информации об имеющихся виртуальных сетях.

## Аргументы
_Data source_ функция **decort_cb_vins_list** принимает следующие аргументы:

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | --- | --- |
| by_id | int | :x: | Фильтр по ID vins |
| name | string | :x: | Фильтр по имени vins |
| account_id | int | :x: | Фильтр по ID аккаунта |
| rg_id | int | :x: | Фильтр по ID рес. группы |
| ext_ip | string | :x: | Фильтр по внешнему IP адресу |
| vnfdev_id | int | :x: | Фильтр по VnfDEV ID |
| include_deleted | bool | :x: | Включение удаленных vins в результат поиска |
| page | int | :x: | Номер страниц |
| size | int | :x: | Размер страницы |
| sort_by | string | :x: | Фильтр по одному из поддерживаемых полей, формат: +или- название поля |


## Возвращаемые значения
В случае успешного выполнения _data source_ функция **decort_cb_vins_list** возвращает в указанную при вызове переменную, в поле _items_ массив, каждый элемент которого состоит из следующих параметров:

| Параметр | Тип | Описание |
| --- | --- | --- |
| vins_id | int | id vins |
| account_id | int | ID подписчика ("account"), которому принадлежит ViNS. |
| account_name | string | Имя подписчика ("account"), которому принадлежит ViNS. |
| created_by | string | Аккаунт, создавший vins |
| created_time | int | Время создания vins |
| default_gw | string | Шлюз по умолчанию |
| default_qos | Struct [см. ниже](#описание-структуры-default_qos) | QOS по умолчанию |
| deleted_by | string | Пользователь, удаливший vins |
| deleted_time | int | Время удаления vins |
| description | string | Текстовое описание ViNS. |
| external_ip | string | Внешний ip - адрес |
| extnet_id | int | Идентификатор внешней сети |
| free_ips | int | Кол-во свободных IP адресов |
| gid | int | GRID ID |
| guid | int | ID ресурса |
| lock_status | string | Статус доступности |
| manager_id | int | Manager id |
| manager_type | string | Type of manager |
| milestones | int | Вехи |
| name | string | Имя ViNS. |
| netmask | int | Маска сети |
| network | string | Информация о сети |
| pre_reservations_num | int | Кол-во зарезервированных ip адресов |
| pri_vnf_dev_id | int | ID внутренней сети для разработки |
| redundant | bool | Redudant |
| rg_id | int | Идентификатор ресурсной группы, на уровне которой создан ViNS. Для ViNS, существующих на уровне "account", данный параметр будет равен 0. |
| rg_name | string | Имя ресурсной группы |
| sec_vnf_dev_id | int | ID sec внутренней сети для разработки |
| status | string | Статус vins |
| updated_by | string | Кем был обновлен vins |
| updated_time | int | Время последнего обновления vins |
| user_managed | bool | Флаг, управляется ли пользователем |
| vnfs | Struct [см. ниже](#описание-структуры-vnfs) | Список VNFs |
| vxlan_id | int | Идентификатор vxlan |

### Описание структуры default_qos
| Параметр | Тип | Описание |
| --- | --- | --- |
| e_rate | int | Egress Rate |
| guid | string | ID ресурса |
| in_brust | int | In brust |
| in_rate | int | In rate |

### Описание структуры vnfs
| Параметр | Тип | Описание |
| --- | --- | --- |
| dhcp | int | ID DHCP |
| dns | int | dns id |
| fw | int | fw id |
| gw | int | Шлюз по умолчанию |
| nat | int | NAT vins id |
| vpn | int | vpn id |

## Пример использования
Пример вызова _data source_ функции **decort_cb_vins_list**:
```terraform
data "decort_cb_vins_list" "vl" {
  #фильтр по id vins
  #опциональный параметр
  #тип - целое число
  #by_id = 100

  #фильтр по имени vins
  #опциональный параметр
  #тип - строка
  #name = "test"

  #id аккаунта для получения списка vins
  #опциональный параметр 
  #тип - целое число
  #account_id = 11111

  #фильтр по id ресурсной группы
  #опциональный параметр
  #тип - целое число
  #rg_id = 100

  #фильтр по IP внешней сети
  #опциональный параметр
  #тип - строка
  #ext_ip = "test"

  #фильтр по id vnfDevices
  #опциональный параметр
  #тип - целое число
  #vnfdev_id = 11111

  #включение удаленных vins в результат
  #опциональный параметр
  #тип - булев
  #если не задан - выводятся все неудаленные данные
  #include_deleted = true

  #сортировка по одному из поддерживаемых полей
  #опциональный параметр
  #тип - строка
  #формат - "+поле" по возрастанию / "-поле" по убыванию
  #sort_by = "+name"

  #номер страницы для отображения
  #опциональный параметр
  #тип - целое число
  #если не задан - выводятся все доступные данные
  #page = 1

  #размер страницы
  #опциональный параметр
  #тип - целое число
  #если не задан - выводятся все доступные данные
  #size = 1
}
```

Данный пример подразумевает, что ранее по тексту tf-файла выполнена корректная инициализация провайдера (подробнее об инициализации Terraform провайдера DECORT см. соответствующий [раздел](https://repository.basistech.ru/BASIS/wiki-terraform-provider-decort/src/branch/main/4.8.0/04.02-Инициализация-Terraform-провайдера-DECORT.md)). 

После успешного завершения такого вызова **decort_cb_vins_list** в переменной `data.decort_cb_vins_list.vl` будут сохранены возвращаемые значения.
