GetIndicatorCustomFieldsByQuery

Returns indicator custom fields into the context by the given query.

python · Community Common Scripts

Source

import demistomock as demisto  # noqa: F401
from CommonServerPython import *  # noqa: F401

"""
Searches the TIM DB for device indicators based on the provided query string and returns along with their custom fields.
"""


def search_indicators(query, max_size):
    result = []
    indicators = demisto.searchIndicators(query=query, size=max_size, page=0)

    for indicator in indicators.get("iocs"):
        indicator_dict = {"value": indicator.get("value"), "type": indicator.get("indicator_type")}

        if indicator.get("CustomFields"):
            indicator_dict = {**indicator_dict, **indicator.get("CustomFields")}
            result.append(indicator_dict)

    return result


def main():
    query = demisto.args().get("query", "")
    max_size = arg_to_number(demisto.args().get("max", 1000))
    outputs = search_indicators(query, max_size)
    return_results(
        CommandResults(
            outputs_prefix="GetIndicatorCustomFieldsByQuery",
            outputs=outputs,
            readable_output=tableToMarkdown("Indicator Query Result", outputs),
        )
    )


if __name__ in ("__main__", "__builtin__", "builtins"):
    main()

README

Purpose: This automation will return indicator custom fields into the context by the given query.
Author: Mahmood Azmat
Input1: Query for retrieving indicator(s).

Script Data


Name Description
Script Type python3
Cortex XSOAR Version 6.9.0

Inputs


Argument Name Description
query The complete XSOAR indicator query.

Outputs


Path Description Type
GetIndicatorFieldsByQuery The matched indicator value, type, and custom fields. Unknown