CrowdStrike Falcon CrowdStrike Subreddit

Using the Scheduled Reports service collection

Uber class support Service class support Documentation Version Page Updated

Table of Contents

Operation IDDescription
scheduled_reports_launch
PEP 8launch
Launch scheduled report executions for the provided ID(s).
scheduled_reports_get
PEP 8get_reports
Retrieve scheduled reports for the provided report IDs.
scheduled_reports_query
PEP 8query_reports
Find all report IDs matching the query with filter

Passing credentials

WARNING

client_id and client_secret are keyword arguments that contain your CrowdStrike API credentials. Please note that all examples below do not hard code these values. (These values are ingested as strings.)

CrowdStrike does not recommend hard coding API credentials or customer identifiers within source code.

scheduled_reports_launch

Launch scheduled report executions for the provided ID(s).

PEP8 method name

launch

Endpoint

MethodRoute
POST/reports/entities/scheduled-reports/execution/v1

Required Scope

scheduled-reports:read

Content-Type

  • Consumes: application/json
  • Produces: application/json

Keyword Arguments

NameServiceUberTypeData typeDescription
ids
Service Class Support

Uber Class Support
querystring or list of stringsThe report ID(s) to launch.
body
Service Class Support

Uber Class Support
querylist of dictionariesFull body payload in JSON format.

Usage

Service class example (PEP8 syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

id_list = 'ID1,ID2,ID3'  # Can also pass a list here: ['ID1', 'ID2', 'ID3']

response = falcon.launch(ids=id_list)
print(response)

Service class example (Operation ID syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

id_list = 'ID1,ID2,ID3'  # Can also pass a list here: ['ID1', 'ID2', 'ID3']

response = falcon.scheduled_reports_launch(ids=id_list)
print(response)

Uber class example
from falconpy import APIHarnessV2

# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
                      client_secret=CLIENT_SECRET
                      )

# To send multiple retries, pass a list of dictionaries, each holding one ID
BODY = [
    {
        "id": "ID1"
    },
    {
        "id": "ID2"
    },
    {
        "id": "ID3"
    }
]

response = falcon.command("scheduled_reports_launch", body=BODY)
print(response)

scheduled_reports_get

Retrieve scheduled reports for the provided report IDs.

PEP8 method name

get_reports

Endpoint

MethodRoute
GET/reports/entities/scheduled-reports/v1

Required Scope

scheduled-reports:read

Content-Type

  • Consumes: application/json
  • Produces: application/json

Keyword Arguments

NameServiceUberTypeData typeDescription
ids
Service Class Support

Uber Class Support
querystring or list of stringsThe scheduled_report id to get details about.
parameters
Service Class Support

Uber Class Support
querydictionaryFull query string parameters payload in JSON format.

Usage

Service class example (PEP8 syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

id_list = 'ID1,ID2,ID3'  # Can also pass a list here: ['ID1', 'ID2', 'ID3']

response = falcon.get_reports(ids=id_list)
print(response)

Service class example (Operation ID syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

id_list = 'ID1,ID2,ID3'  # Can also pass a list here: ['ID1', 'ID2', 'ID3']

response = falcon.scheduled_reports_get(ids=id_list)
print(response)

Uber class example
from falconpy import APIHarnessV2

# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
                      client_secret=CLIENT_SECRET
                      )

id_list = 'ID1,ID2,ID3'  # Can also pass a list here: ['ID1', 'ID2', 'ID3']

response = falcon.command("scheduled_reports_get", ids=id_list)
print(response)

scheduled_reports_query

Find all report IDs matching the query with filter

PEP8 method name

query_reports

Endpoint

MethodRoute
GET/reports/queries/scheduled-reports/v1

Required Scope

scheduled-reports:read

Content-Type

  • Consumes: application/json
  • Produces: application/json

Keyword Arguments

NameServiceUberTypeData typeDescription
filter
Service Class Support

Uber Class Support
querystringFQL query specifying the filter parameters.

Filter term criteria:
  • type
  • trigger_reference
  • recipients
  • user_uuid
  • cid
  • trigger_params.metadata
Filter range criteria:
  • created_on
  • modified_on; use any common date format, such as '2010-05-15T14:55:21.892315096Z'
limit
Service Class Support

Uber Class Support
queryintegerNumber of ids to return.
offset
Service Class Support

Uber Class Support
querystringStarting index of overall result set from which to return ids.
parameters
Service Class Support

Uber Class Support
querydictionaryFull query string parameters payload in JSON format.
q
Service Class Support

Uber Class Support
querystringMatch query criteria, which includes all the filter string fields.
sort
Service Class Support

Uber Class Support
querystringPossible order by fields:
  • created_on
  • last_updated_on
  • last_execution_on
  • next_execution_on

Usage

Service class example (PEP8 syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

response = falcon.query_reports(sort="string",
                                filter="string",
                                q="string",
                                offset="string",
                                limit=integer
                                )
print(response)

Service class example (Operation ID syntax)
from falconpy import ScheduledReports

# Do not hardcode API credentials!
falcon = ScheduledReports(client_id=CLIENT_ID,
                          client_secret=CLIENT_SECRET
                          )

response = falcon.scheduled_reports_query(sort="string",
                                          filter="string",
                                          q="string",
                                          offset="string",
                                          limit=integer
                                          )
print(response)

Uber class example
from falconpy import APIHarnessV2

# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
                      client_secret=CLIENT_SECRET
                      )

response = falcon.command("scheduled_reports_query",
                          sort="string",
                          filter="string",
                          q="string",
                          offset="string",
                          limit=integer
                          )
print(response)