# action.get

### Description

`integer/array action.get(object parameters)`

The method allows to retrieve actions according to the given parameters.

### Parameters

`(object)` Parameters defining the desired output.

The method supports the following parameters.

|Parameter|Type|Description|
|---------|----|-----------|
|actionids|string/array|Return only actions with the given IDs.|
|groupids|string/array|Return only actions that use the given host groups in action conditions.|
|hostids|string/array|Return only actions that use the given hosts in action conditions.|
|triggerids|string/array|Return only actions that use the given triggers in action conditions.|
|mediatypeids|string/array|Return only actions that use the given media types to send messages.|
|usrgrpids|string/array|Return only actions that are configured to send messages to the given user groups.|
|userids|string/array|Return only actions that are configured to send messages to the given users.|
|scriptids|string/array|Return only actions that are configured to run the given scripts.|
|selectFilter|query|Returns the action filter in the `filter` property.|
|selectOperations|query|Return action operations in the `operations` property.|
|selectRecoveryOperations|query|Return action recovery operations in the `recoveryOperations` property.|
|sortfield|string/array|Sort the result by the given properties.<br><br>Possible values are: `actionid`, `name` and `status`.|
|countOutput|flag|These parameters being common for all `get` methods are described in the [reference commentary](/manual/api/reference_commentary#common_get_method_parameters).|
|editable|boolean|^|
|excludeSearch|flag|^|
|filter|object|^|
|limit|integer|^|
|output|query|^|
|preservekeys|flag|^|
|search|object|^|
|searchByAny|boolean|^|
|searchWildcardsEnabled|boolean|^|
|sortorder|string/array|^|
|startSearch|flag|^|

### Return values

`(integer/array)` Returns either:

-   an array of objects;
-   the count of retrieved objects, if the `countOutput` parameter has
    been used.

### Examples

#### Retrieve discovery actions

Retrieve all configured discovery actions together with action
conditions and operations. The filter uses the "and" evaluation type, so
the `formula` property is empty and `eval_formula` is generated
automatically.

Request:

``` {.java}
{
    "jsonrpc": "2.0",
    "method": "action.get",
    "params": {
        "output": "extend",
        "selectOperations": "extend",
        "selectRecoveryOperations": "extend",
        "selectFilter": "extend",
        "filter": {
            "eventsource": 1
        }
    },
    "auth": "038e1d7b1735c6a5436ee9eae095879e",
    "id": 1
}
```

Response:

``` {.java}
{
    "jsonrpc": "2.0",
    "result": [
        {
            "actionid": "2",
            "name": "Auto discovery. Linux servers.",
            "eventsource": "1",
            "status": "1",
            "esc_period": "0",
            "def_shortdata": "",
            "def_longdata": "",
            "r_shortdata": "",
            "r_longdata": "",
            "maintenance_mode": "1",
            "filter": {
                "evaltype": "0",
                "formula": "",
                "conditions": [
                    {
                        "conditiontype": "10",
                        "operator": "0",
                        "value": "0",
                        "value2": "",
                        "formulaid": "B"
                    },
                    {
                        "conditiontype": "8",
                        "operator": "0",
                        "value": "9",
                        "value2": "",
                        "formulaid": "C"
                    },
                    {
                        "conditiontype": "12",
                        "operator": "2",
                        "value": "Linux",
                        "value2": "",
                        "formulaid": "A"
                    }
                ],
                "eval_formula": "A and B and C"
            },
            "operations": [
                {
                    "operationid": "1",
                    "actionid": "2",
                    "operationtype": "6",
                    "esc_period": "0",
                    "esc_step_from": "1",
                    "esc_step_to": "1",
                    "evaltype": "0",
                    "opconditions": [],
                    "optemplate": [
                        {
                            "operationid": "1",
                            "templateid": "10001"
                        }
                    ]
                },
                {
                    "operationid": "2",
                    "actionid": "2",
                    "operationtype": "4",
                    "esc_period": "0",
                    "esc_step_from": "1",
                    "esc_step_to": "1",
                    "evaltype": "0",
                    "opconditions": [],
                    "opgroup": [
                        {
                            "operationid": "2",
                            "groupid": "2"
                        }
                    ]
                }
            ],
            "recoveryOperations": [
                {
                    "operationid": "585",
                    "actionid": "2",
                    "operationtype": "11",
                    "evaltype": "0",
                    "opconditions": [],
                    "opmessage": {
                        "operationid": "585",
                        "default_msg": "1",
                        "subject": "{TRIGGER.STATUS}: {TRIGGER.NAME}",
                        "message": "Trigger: {TRIGGER.NAME}\r\nTrigger status: {TRIGGER.STATUS}\r\nTrigger severity: {TRIGGER.SEVERITY}\r\nTrigger URL: {TRIGGER.URL}\r\n\r\nItem values:\r\n\r\n1. {ITEM.NAME1} ({HOST.NAME1}:{ITEM.KEY1}): {ITEM.VALUE1}\r\n2. {ITEM.NAME2} ({HOST.NAME2}:{ITEM.KEY2}): {ITEM.VALUE2}\r\n3. {ITEM.NAME3} ({HOST.NAME3}:{ITEM.KEY3}): {ITEM.VALUE3}\r\n\r\nOriginal event ID: {EVENT.ID}",
                        "mediatypeid": "0"
                    }
                }
            ]
        }
    ],
    "id": 1
}
```

### See also

-   [Action filter](object#action_filter)
-   [Action operation](object#action_operation)

### Source

CAction::get() in
*frontends/php/include/classes/api/services/CAction.php*.
