> For the complete documentation index, see [llms.txt](https://docs-ru.testmace.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-ru.testmace.com/node-types/folder.md).

# Folder

Данный тип узла используется для группировки других узлов. В качестве предков для данного типа узла могут выступать [Project](/node-types/project.md) и **Folder** узлы. В дереве проекта узел выглядит следующим образом:

![Вид Folder узла в дереве](/files/-LiMmTIIcnPTqxcvqNKY)

В дереве для данного типа узла доступны следующие пункты меню:

![Контекстное меню для Folder узла](/files/-LiMmVgGhUcgkI5BfQ3f)

* **Add node.** Добавление узла-потомка. В подменю можно выбрать тип узла.
* **Rename.** Переименовать узел.
* **Duplicate.** Сделать копию узла. Новый узел будет иметь название **NodeName \[Copy \[number]]**.
* **Remove node.** Удалить узел.
* **Run.** Запустить узел.
* [**Share**](/other/import/shared.md)**.** Поделиться узлом. При это в буфере обмена создается ссылка, которая содержит всю информацию о текущем узле.
* **Show in explorer.** Открыть папку с узлом в файловом менеджере.

Открытие узла открывается двойным кликом по узлу в дереве. Вкладка **Folder** узла выглядит следующим образом:

![Вкладка с открытым Folder узлом](/files/-LiMmZZV7lGYhAkNysCD)

На скрине отмечены следующие области

1. Кнопка **Run** для запуска узлов внутри Folder узла
2. Панель управления
3. Кнопка **Headers** для задания наследуемых HTTP-заголовков
4. Кнопка **открытия** [**диалога переменных**](/variables/user-variables.md)
5. Область **дочерних узлов**
6. Проверка на то, что узел имеет валидный SSL сертификат. Используется в качестве наследуемого параметра в [RequestStep](/node-types/requeststep.md) узле
7. **Авторизация**

Рассмотрим данные области подробнее.

### Панель управления

Назначение кнопки **Run** описано выше. Стоит добавить, что при запуске узла кнопка меняет вид на следующий:

![Вид кнопки Run в процессе запуска узла](/files/-LiMmaMjx53JO9Hq1Xmv)

При нажатии на **Abort** можно прервать выполнение узла.

Кнопка **Headers** позволяет задать [наследуемые HTTP-заголовки](/other/default-http-headers.md).

Редактирование переменных обсуждается в разделе [Пользовательские переменные](/variables/user-variables.md).

### Файловое представление

**Folder** узел представляет из себя папку с названием узла, внутри которой содержится файл index.yml, имеющий следующий формат.

```javascript
{
  "type": "object",
  "properties": {
    "type": {
      "description": "Type of Folder node",
      "const": "Folder",
      "type": "string"
    },
    "authData": {
      "$ref": "#/definitions/IAuthorizationData",
      "description": "Authorization parameters"
    },
    "requestData": {
      "$ref": "#/definitions/IRequestParametersData",
      "description": "Request parameters"
    },
    "children": {
      "description": "List of children names",
      "type": "array",
      "items": {
        "type": "string"
      },
      "default": []
    },
    "variables": {
      "$ref": "#/definitions/NodeVariables",
      "description": "Node variables dictionary"
    },
    "name": {
      "description": "Node name",
      "type": "string"
    }
  },
  "required": [
    "authData",
    "children",
    "name",
    "requestData",
    "type",
    "variables"
  ],
  "definitions": {
    "IAuthorizationData": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ]
    },
    "IRequestParametersData": {
      "type": "object",
      "properties": {
        "headers": {
          "description": "Headers",
          "type": "array",
          "items": {
            "$ref": "#/definitions/NameValueParam"
          }
        },
        "disabledInheritedHeaders": {
          "description": "Names of disabled headers",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "strictSSL": {
          "$ref": "#/definitions/StrictSSLOptions",
          "description": "Requires SSL certificates be valid"
        }
      },
      "required": [
        "disabledInheritedHeaders",
        "headers",
        "strictSSL"
      ]
    },
    "NameValueParam": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        },
        "isChecked": {
          "type": "boolean"
        }
      },
      "required": [
        "name",
        "value"
      ]
    },
    "StrictSSLOptions": {
      "enum": [
        "Inherit",
        "No",
        "Yes"
      ],
      "type": "string"
    },
    "NodeVariables": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```
