-
Notifications
You must be signed in to change notification settings - Fork 119
Custom Storage
Joshua Hiller edited this page Jul 15, 2024
·
3 revisions
Operation ID | Description | ||||
---|---|---|---|---|---|
|
List the object keys in the specified collection in alphabetical order | ||||
|
Search for objects that match the specified filter criteria (returns metadata, not actual objects) | ||||
|
Get the bytes for the specified object | ||||
|
Put the specified new object at the given key or overwrite an existing object at the given key | ||||
|
Delete the specified object | ||||
|
Get the metadata for the specified object |
WARNING
client_id
andclient_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.
List the object keys in the specified collection in alphabetical order
list
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects |
- Consumes: application/json
- Produces: application/json
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
collection_name | path | string | The name of the collection | ||
end | query | string | The end key to end listing to | ||
limit | query | integer | The limit of results to return | ||
parameters | query | dictionary | Full query string parameters payload in JSON format. | ||
start | query | string | The start key to start listing from |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.list(end="string",
limit=integer,
start="string",
collection_name="string"
)
print(response)
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.ListObjects(end="string",
limit=integer,
start="string",
collection_name="string"
)
print(response)
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.command("ListObjects",
end="string"
limit=integer,
start="string",
collection_name="string"
)
print(response)
Search for objects that match the specified filter criteria (returns metadata, not actual objects)
search
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects |
- Consumes: application/octet-stream
- Produces: application/json
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
collection_name | path | string | The name of the collection | ||
filter | query | string | The filter to limit the returned results. | ||
limit | query | integer | The limit of results to return | ||
offset | query | integer | The offset of results to return | ||
parameters | query | dictionary | Full query string parameters payload in JSON format. | ||
sort | query | string | The sort order for the returned results. |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.search(filter="string",
limit=integer,
offset=integer,
sort="string",
collection_name="string"
)
print(response)
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.SearchObjects(filter="string",
limit=integer,
offset=integer,
sort="string",
collection_name="string"
)
print(response)
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.command("SearchObjects",
filter="string",
limit=integer,
offset=integer,
sort="string",
collection_name="string"
)
print(response)
Get the bytes for the specified object
get
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects/{object_key} |
- Consumes: application/json
- Produces: application/octet-stream
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
collection_name | path | string | The name of the collection | ||
object_key | path | string | The object key |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "wb", encoding="utf-8") as save_file:
save_file.write(falcon.get(collection_name="string", object_key="string"))
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "wb", encoding="utf-8") as save_file:
save_file.write(falcon.GetObject(collection_name="string", object_key="string"))
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "wb", encoding="utf-8") as save_file:
save_file.write(falcon.command("GetObject", collection_name="string", object_key="string"))
Put the specified new object at the given key or overwrite an existing object at the given key
upload
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects/{object_key} |
- Consumes: application/octet-stream
- Produces: application/json
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
body | body | string | The object to be uploaded in binary format. | ||
collection_name | path | string | The name of the collection. | ||
dry_run | query | boolean | If false, run the operation as normal. If true, validate that the request would succeed, but don't execute it. | ||
object_key | path | string | The object key. | ||
parameters | query | dictionary | Full query string parameters payload in JSON format. | ||
schema_version | query | string | The version of the collection schema. |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "rb") as upload_file:
response = falcon.upload(body=upload_file.read(),
collection_name="string",
dry_run=boolean,
object_key="string",
schema_version="string"
)
print(response)
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "rb") as upload_file:
response = falcon.PutObject(body=upload_file.read(),
collection_name="string",
dry_run=boolean,
object_key="string",
schema_version="string"
)
print(response)
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
with open("some_file.ext", "rb") as upload_file:
response = falcon.command("PutObject",
body=upload_file.read(),
collection_name="string",
dry_run=boolean,
object_key="string",
schema_version="string"
)
print(response)
Delete the specified object
delete
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects/{object_key} |
- Consumes: application/json
- Produces: application/json
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
collection_name | path | string | The name of the collection | ||
dry_run | query | boolean | If false, run the operation as normal. If true, validate that the request would succeed, but don't execute it. | ||
object_key | path | string | The object key | ||
parameters | query | dictionary | Full query string parameters payload in JSON format. |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.delete(collection_name="string", object_key="string", dry_run=boolean)
print(response)
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.DeleteObject(collection_name="string", object_key="string", dry_run=boolean)
print(response)
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.command("DeleteObject",
collection_name="string",
object_key="string",
dry_run=boolean
)
print(response)
Get the metadata for the specified object
metadata
Method | Route |
---|---|
/customobjects/v1/collections/{collection_name}/objects/{object_key}/metadata |
- Consumes: application/json
- Produces: application/json
Name | Service | Uber | Type | Data type | Description |
---|---|---|---|---|---|
collection_name | path | string | The name of the collection | ||
object_key | path | string | The object key |
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.metadata(collection_name="string", object_key="string")
print(response)
from falconpy import CustomStorage
# Do not hardcode API credentials!
falcon = CustomStorage(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.GetObjectMetadata(collection_name="string", object_key="string")
print(response)
from falconpy import APIHarnessV2
# Do not hardcode API credentials!
falcon = APIHarnessV2(client_id=CLIENT_ID,
client_secret=CLIENT_SECRET
)
response = falcon.command("GetObjectMetadata", collection_name="string", object_key="string")
print(response)
- Home
- Discussions Board
- Glossary of Terms
- Installation, Upgrades and Removal
- Samples Collection
- Using FalconPy
- API Operations
-
Service Collections
- Alerts
- API Integrations
- Cloud Connect AWS (deprecated)
- Cloud Snapshots
- Configuration Assessment
- Configuration Assessment Evaluation Logic
- Container Alerts
- Container Detections
- Container Images
- Container Packages
- Container Vulnerabilities
- CSPM Registration
- Custom IOAs
- Custom Storage
- D4C Registration (deprecated)
- Detects
- Device Control Policies
- Discover
- Drift Indicators
- Event Streams
- Exposure Management
- Falcon Complete Dashboard
- Falcon Container
- Falcon Intelligence Sandbox
- FDR
- FileVantage
- Firewall Management
- Firewall Policies
- Foundry LogScale
- Host Group
- Hosts
- Identity Protection
- Image Assessment Policies
- Incidents
- Installation Tokens
- Intel
- IOA Exclusions
- IOC
- IOCs (deprecated)
- Kubernetes Protection
- MalQuery
- Message Center
- ML Exclusions
- Mobile Enrollment
- MSSP (Flight Control)
- OAuth2
- ODS (On Demand Scan)
- Overwatch Dashboard
- Prevention Policy
- Quarantine
- Quick Scan
- Real Time Response
- Real Time Response Admin
- Real Time Response Audit
- Recon
- Report Executions
- Response Policies
- Sample Uploads
- Scheduled Reports
- Sensor Download
- Sensor Update Policy
- Sensor Visibility Exclusions
- Spotlight Evaluation Logic
- Spotlight Vulnerabilities
- Tailored Intelligence
- ThreatGraph
- Unidentified Containers
- User Management
- Workflows
- Zero Trust Assessment
- Documentation Support
-
CrowdStrike SDKs
- Crimson Falcon - Ruby
- FalconPy - Python 3
- FalconJS - Javascript
- goFalcon - Go
- PSFalcon - Powershell
- Rusty Falcon - Rust