Перейти к содержанию

Управление шаблонами

Создать шаблон задачи

URL: /api/v1/templates/
Метод: POST
Описание: Создает шаблон задачи. При удалении шаблона, связанные с ним задачи помещаются в архив.

Параметры запроса:
JSON Params

Параметр Описание Обязательный
name Название шаблона ДА
type Тип задачи шаблона ДА
hosts Список id хостов ДА
groups Список id групп НЕТ
params Параметры запуска задачи шаблона НЕТ
enabled Запуститить задачу шаблона сразу после создания ДА
schedule Расписание запуска задач шаблона НЕТ

Параметры запроса:
schedule

Параметр Описание Обязательный
type ДА
recurrence Через сколько единиц времени(type) задача будет запускаться ДА
startTime Начальное время с которого начнут заускасться задачи по расписанию НЕТ
endTime Конечное время когда задачи перестанут запускаться по расписанию НЕТ

Пример запроса:

POST /api/v1/templates HTTP/1.1
Authorization: Bearer <token>
{
    "name": "Pentest Test",
    "hosts": [1, 2],
    "type": "pentest",
    "params": {
        "ports": ["22"],
        "speed": "2"

    },
    "enabled": true,
    "schedule" : {
        "type": 0,
        "recurrence" : 10
    }
}

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

{
    "data": {
        "id": 23,
        "created_at": 1759392166,
        "updated_at": 1759392166,
        "name": "Pentest Test",
        "type": "pentest",
        "hosts": [
            1,
            2
        ],
        "groups": [],
        "params": {
            "ports": [
                "22"
            ],
            "speed": "2"
        },
        "schedule": {
            "last_start": 1759392166,
            "scheduled_time": 1759392166,
            "enabled": true,
            "is_expired": false,
            "type": 0,
            "recurrence": 10,
            "start_time": 1759392166,
            "end_time": null
        }
    }
}

Получить список шаблонов

URL: /api/v1/template/
Метод: GET
Описание: Возвращает список шаблонов.

Параметры запроса:
JSON Params

Параметр Описание Обязательный
name Фильтр по названию шаблона НЕТ
type Фильтр по типу задачи шаблона НЕТ

Пример запроса:

GET /api/v1/template/ HTTP/1.1
Authorization: Bearer <token>

{
    "name": "175",
    "type": "pentest"
}

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

{
    "data": [
        {
            "id": 22,
            "created_at": 1753362396,
            "updated_at": 1753362396,
            "name": "175",
            "type": "pentest",
            "hosts": [
                5
            ],
            "groups": [],
            "params": {
                "ports": [
                    "1-65535"
                ]
            },
            "schedule": null
        }
    ]
}

Получить шаблон по id

URL: /api/v1/templates/{id} Метод: GET
Описание: Получить хоста по id.

Параметры запроса:
PATH Params

Параметр Описание
id id шаблона который нужно получить

Пример запроса:

GET /api/v1/templates/23 HTTP/1.1
Authorization: Bearer <token>

JSON ответ


{
    "data": {
        "id": 21,
        "created_at": 1752146653,
        "updated_at": 1752146653,
        "name": "agent11111a",
        "type": "agentInventory",
        "hosts": [
            1
        ],
        "groups": [],
        "params": null,
        "schedule": null
    }
}

Запустить шаблон

URL: /api/v1/templates/{id}
Метод: POST
Описание: Запустить шаблон задачи.

Параметры запроса:
PATH Params

Параметр Описание
id id шаблона который нужно запустить

Пример запроса:

POST /api/v1/templates/23 HTTP/1.1
Authorization: Bearer <token>

JSON ответ


{
    "data": {
        "id": 110,
        "created_at": 1759392476,
        "updated_at": 1759392476,
        "number_task": "TASK-00110",
        "templates_id": 23,
        "task_type": "pentest",
        "status": "working",
        "percent": 0,
        "state": "Начало"
    }
}

Включть расписание шаблона

URL: /api/v1/templates/ Метод: PATCH
Описание: Включить/Выключить расписание для щаблона.

Параметры запроса:
JSON Params

Параметр Описание Обязательный
templates_id Id шаблона ДА
enable Включить или выключить шаблон ДА

Пример запроса:

PATCH /api/v1/templates/ HTTP/1.1
Authorization: Bearer <token>

{
    "templates_id": 23,
    "enable": false
}

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


Удалить шаблон

URL: /api/v1/templates/{id}
Метод: DELETE
Описание: Удалить шаблон задачи.

Параметры запроса:
PATH Params

Параметр Описание
id id шаблона который нужно удалить

Пример запроса:

DELETE /api/v1/templates/23 HTTP/1.1
Authorization: Bearer <token>

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

HTTP STATUS 204 No Content

Удалить шаблоны

URL: /api/v1/templates
Метод: DELETE
Описание: Удалить шаблоны задачи.

Параметры запроса:
JSON Params

Параметр Описание Обязательный
id Id шаблонов ДА

Пример запроса:

DELETE /api/v1/hosts/1 HTTP/1.1
Authorization: Bearer <token>
{
    "id": [1, 2, 3]
}

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

HTTP STATUS 204 No Content

Дифференцировать шаблон

URL: /api/v1/templates/{id}/diff Метод: GET
Описание: Получить дифферинциированный отчет по id. Возвращает цепочку различий уязвимостей по каждой задаче, относящейся к шаблону.

Параметры запроса:
PATH Params

Параметр Описание
id id шаблона по которому нужно получить диф. отчет

Пример запроса:

GET /api/v1/templates/23 HTTP/1.1
Authorization: Bearer <token>