# ApiFolder

**ApiFolder** узел, по аналогии с [Folder](/master/node-types/folder.md) узлом, служит для группировки других типов узлов (в данном случае [ApiRoute](/master/node-types/api-description/apiroute.md) узлов). &#x20;

Создать данный узел можно следующими способами:

* Из контекстного меню [ApiRootFolder](/master/node-types/api-description/apirootfolder.md) узла
* Воспользовавшись импортом из форматов описания API

В дереве проекта **ApiFolder** узел имеет следующий вид:

![Вид ApiFolder узла в дереве проекта](/files/-LiMsBurAEw8jjEkJrtf)

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

![Контекстное меню ApiFolder узла](/files/-LiMsEDI1oLvGTZfTmYQ)

* **Add node.** Добавление узла-потомка. В подменю можно выбрать тип узла.
* **Rename.** Переименовать узел.
* **Duplicate.** Сделать копию узла. Новый узел будет иметь название NodeName \[Copy \[number]].
* **Remove node.** Удалить узел.
* **Show in explorer.** Открыть папку с узлом в файловом менеджере.

Интерфейс вкладки данного узла выглядит следующим образом:

![Интерфейс вкладки ApiFolder узла](/files/-LiMsHryxF8VAVuXeS0_)

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

* Диалог управления [пользовательскими переменными](/master/variables/user-variables.md)
* Список дочерних узлов

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

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

```javascript
{
  "type": "object",
  "properties": {
    "type": {
      "description": "Type of ApiFolder node",
      "const": "ApiFolder",
      "type": "string"
    },
    "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": [
    "children",
    "name",
    "type",
    "variables"
  ],
  "definitions": {
    "NodeVariables": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
```


---

# 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-ru.testmace.com/master/node-types/api-description/apifolder.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.
