# correlation.create

### Описание

`объект correlation.create(объект/массив корреляции)`

Этот метод позволяет создавать новые корреляции.

### Параметры

`(объект/массив)` Создаваемые корреляции.

В дополнение к [стандартным свойствам корреляции](object#корреляция),
этот метод принимает следующие параметры.

|Параметр|Тип|Описание|
|----------------|------|----------------|
|**operations**<br>(требуется)|массив|Создаваемые операции корреляции для корреляции.|
|**filter**<br>(требуется)|объект|Объект фильтра корреляции для корреляции.|

### Возвращаемые значения

`(объект)` Возвращает объект, который содержит ID созданных корреляций
под свойством `correlationids`. Порядок возвращаемых ID совпадает с
порядком переданных корреляций.

### Примеры

#### Создание корреляции на тег нового события

Создание корреляции, которое использует метод вычисления `И/ИЛИ`, с
одним условием и одной операцией. По умолчанию корреляция будет
активирована.

Запрос:

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "correlation.create",
    "params": {
        "name": "new event tag correlation",
        "filter": {
            "evaltype": 0,
            "conditions": [
                {
                    "type": 1,
                    "tag": "ok"
                }
            ]
        },
        "operations": [
            {
                "type": 0
            }
        ]
    },
    "auth": "343baad4f88b4106b9b5961e77437688",
    "id": 1
}
```

Ответ:

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "correlationids": [
            "1"
        ]
    },
    "id": 1
}
```

#### Использование фильтрации при помощи пользовательского выражения

Создание корреляции, которая будет использовать пользовательское условие
фильтрации. ID "A" и "B" в формуле были выбраны случайно. Тип условия
будет "Группа узлов сети" с оператором "<>".

Запрос:

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "correlation.create",
    "params": {
        "name": "new host group correlation",
        "description": "a custom description",
        "status": 0,
        "filter": {
            "evaltype": 3,
            "formula": "A or B",
            "conditions": [
                {
                    "type": 2,
                    "operator": 1,
                    "formulaid": "A"
                },
                {
                    "type": 2,
                    "operator": 1,
                    "formulaid": "B"
                }
            ]
        },
        "operations": [
            {
                "type": 1
            }
        ]
    },
    "auth": "343baad4f88b4106b9b5961e77437688",
    "id": 1
}
```

Ответ:

``` {.java}
{
    "jsonrpc": "2.0",
    "result": {
        "correlationids": [
            "2"
        ]
    },
    "id": 1
}
```

### Смотрите также

-   [Фильтр корреляции](object#фильтр_корреляции)
-   [Операция корреляции](object#операция_корреляции)

### Исходный код

CCorrelation::create() в
*frontends/php/include/classes/api/services/CCorrelation.php*.
