Skip to content

Foundry LogScale

The Foundry LogScale service collection provides operations for ingesting data, managing lookup files, executing saved searches, and listing repositories and views within your CrowdStrike Falcon Foundry LogScale environment.

LanguageLast Update
Pythonv1.6.5
PowerShellv2.2.9
Gov0.22.0
TypeScriptv0.6.0
Rustv0.7.1
Rubyv1.4.0


OperationDescription
CreateSavedSearchesDynamicExecuteV1
execute_dynamic
Execute a dynamic saved search
CreateSavedSearchesExecuteV1
execute
Execute a saved search
CreateSavedSearchesIngestV1
populate
Populate a saved search
GetSavedSearchesExecuteV1
get_search_results
Get the results of a saved search
GetSavedSearchesJobResultsDownloadV1
download_results
Get the results of a saved search as a file
IngestDataAsyncV1
ingest_data_async
Asynchronously ingest data into the application repository
IngestDataV1
ingest_data
Synchronously ingest data into the application repository
ListReposV1
list_repos
Lists available repositories
ListViewV1
list_views
List available views

Execute a dynamic saved search

Method POST
Route /loggingapi/entities/saved-searches/execute-dynamic/v1
Scope App Logs: WRITE
PEP 8 execute_dynamic
body body · dictionary
Full body payload as JSON formatted dictionary.
end body · string
Ending position.
repo_or_view body · string
Name of the repo or view to perform the search.
search_query body · string
Query for the search.
search_query_args body · object
Argumetns provided to the search.
start body · string
Starting position.
app_id query · string
Application ID.
include_schema_generation query · boolean
Include generated schemas in the response
include_test_data query · boolean
Include test data when executing searches
infer_json_types query · boolean
Whether to try to infer data types in json event response instead of returning map[string]string
match_response_schema query · boolean
Whether to validate search results against their schema
metadata query · boolean
Whether to include metadata in the response
mode query · string
Mode to execute the query under.
Available values (3)
syncasyncasync_offload
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
incude_test_data body · boolean
Include test data when executing searches.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
search_query_args = {}
response = falcon.execute_dynamic(app_id="string",
end="string",
include_schema_generation=boolean,
incude_test_data=boolean,
infer_json_types=boolean,
match_response_schema=boolean,
metadata=boolean,
mode="string",
repo_or_view="string",
search_query="string",
search_query_args=search_query_args,
start="string")
print(response)
[
{
"event_count": 0,
"events": [],
"fields": [],
"filtered_event_count": 0,
"job_status": {},
"meta_data": {},
"schemas": {}
}
]


Execute a saved search

Method POST
Route /loggingapi/entities/saved-searches/execute/v1
Scope App Logs: WRITE
PEP 8 execute
body body · dictionary
Full body payload as JSON formatted dictionary.
end body · string
Ending position.
id body · string
Saved search ID.
mode body · string
name body · string
Saved search name.
parameters body · object
start body · string
Starting position.
version body · string
with_in body · object
With in.
with_limit body · object
With limit.
with_renames body · array
With renames.
with_sort body · object
With sort.
app_id query · string
Application ID.
detailed query · boolean
Whether to include search field details
include_test_data query · boolean
Include test data when executing searches
infer_json_types query · boolean
Whether to try to infer data types in json event response instead of returning map[string]string
match_response_schema query · boolean
Whether to validate search results against their schema
metadata query · boolean
Whether to include metadata in the response
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
search_parameters body · dictionary
Search specific parameters. NOT to be confused with the default parameters.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with_in = {
"field": "string",
"values": [
"string"
]
}
with_limit = {
"from": "string",
"limit": 0
}
with_sort = {
"fields": [
"string"
],
"limit": 0,
"order": [
"string"
],
"reverse": True,
"type": [
"string"
]
}
response = falcon.execute(app_id="string",
detailed=boolean,
end="string",
id="string",
include_test_data=boolean,
infer_json_types=boolean,
match_response_schema=boolean,
metadata=boolean,
name="string",
search_parameters={},
start="string",
with_in=with_in,
with_limit=with_limit,
with_renames=["string"],
with_sort=with_sort)
print(response)
[
{
"event_count": 0,
"events": [],
"fields": [],
"filtered_event_count": 0,
"job_status": {},
"meta_data": {},
"schemas": {}
}
]


Populate a saved search

Method POST
Route /loggingapi/entities/saved-searches/ingest/v1
Scope App Logs: WRITE
PEP 8 populate
app_id query · string
Application ID.
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.populate(app_id="string")
print(response)
[
{
"error_message": "string",
"failed_events": 0,
"failed_item_indices": [],
"partial_success": false,
"repo": {},
"rows_written": 0,
"successful_events": 0,
"total_events": 0
}
]


Get the results of a saved search

Method GET
Route /loggingapi/entities/saved-searches/execute/v1
Scope App Logs: READ
PEP 8 get_search_results
job_id query · string
Job ID for a previously executed async query
app_id query · string
Application ID.
infer_json_types query · boolean
Whether to try to infer data types in json event response instead of returning map[string]string
job_status_only query · boolean
If set to true, result rows are dropped from the response and only the job status is returned
limit query · string
Maximum number of records to return.
match_response_schema query · boolean
Whether to validate search results against their schema
metadata query · boolean
Whether to include metadata in the response
offset query · string
Starting pagination offset of records to return.
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.get_search_results(app_id="string",
job_id="string",
job_status_only=boolean,
limit="string",
infer_json_types=boolean,
match_response_schema=boolean,
metadata=boolean,
offset="string")
print(response)
[
{
"event_count": 0,
"events": [],
"fields": [],
"filtered_event_count": 0,
"job_status": {},
"meta_data": {},
"schemas": {}
}
]


Get the results of a saved search as a file

Method GET
Route /loggingapi/entities/saved-searches/job-results-download/v1
Scope App Logs: READ
PEP 8 download_results
job_id query · string
Job ID for a previously executed async query
infer_json_types query · boolean
Whether to try to infer data types in json event response instead of returning map[string]string
result_format query · string
Result Format
Available values (2)
jsoncsv
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("output_file", "wb") as save_file:
response = falcon.download_results(job_id="string",
infer_json_types=boolean,
result_format="string",
stream=boolean)
save_file.write(response)
{
"errors": [
{
"code": 0,
"id": "string",
"message": "string"
}
],
"meta": {
"pagination": {
"limit": 0,
"offset": 0,
"total": 0
},
"powered_by": "string",
"query_time": 0.0,
"trace_id": "string",
"writes": {
"resources_affected": 0
}
},
"resources": {}
}


Asynchronously ingest data into the application repository

Method POST
Route /loggingapi/entities/data-ingestion/ingest-async/v1
Scope App Logs: WRITE
PEP 8 ingest_data_async
data_content body · string
JSON data to ingest
data_file body · file
Data file to ingest
repo body · string
Repository name if not part of a foundry app
tag body · string or list of strings
Custom tag for ingested data in the form tag:value
tag_source body · string
Tag the data with the specified source
test_data body · boolean
Tag the data with test-ingest
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.ingest_data_async(data_content="string",
data_file="string",
tag="string",
tag_source="string",
test_data=boolean)
print(response)
[
{
"error_message": "string",
"failed_events": 0,
"failed_item_indices": [],
"partial_success": false,
"repo": {},
"rows_written": 0,
"successful_events": 0,
"total_events": 0
}
]


Synchronously ingest data into the application repository

Method POST
Route /loggingapi/entities/data-ingestion/ingest/v1
Scope App Logs: WRITE
PEP 8 ingest_data
data_content body · string
JSON data to ingest
data_file body · file
Data file to ingest
tag body · string or list of strings
Custom tag for ingested data in the form tag:value
tag_source body · string
Tag the data with the specified source
test_data body · boolean
Tag the data with test-ingest
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.ingest_data(data_content="string",
data_file="string",
tag="string",
tag_source="string",
test_data=boolean)
print(response)
[
{
"error_message": "string",
"failed_events": 0,
"failed_item_indices": [],
"partial_success": false,
"repo": {},
"rows_written": 0,
"successful_events": 0,
"total_events": 0
}
]


Lists available repositories

Method GET
Route /loggingapi/combined/repos/v1
Scope App Logs: READ
PEP 8 list_repos
check_test_data query · boolean
Include whether test data is present in the application repository
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.list_repos(check_test_data=boolean)
print(response)
[
{
"connections": [],
"description": "string",
"display_name": "string",
"has_test_data": false,
"id": "string",
"name": "string",
"name_contracted": "string",
"size": 0,
"type_name": "string"
}
]


List available views

Method GET
Route /loggingapi/entities/views/v1
Scope App Logs: READ
PEP 8 list_views
check_test_data query · boolean
Include whether test data is present in the application repository
parameters query · dictionary
Full query string parameters payload in JSON format. Not required when using other keywords.
from falconpy import FoundryLogScale
falcon = FoundryLogScale(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.list_views(check_test_data=boolean)
print(response)
[
{
"connections": [],
"description": "string",
"display_name": "string",
"has_test_data": false,
"id": "string",
"name": "string",
"name_contracted": "string",
"size": 0,
"type_name": "string"
}
]