Управление шаблонами
Создать шаблон задачи
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>