4.4. ship Command#
Push an assessment to Elasticsearch, Splunk, or both — or write the same payloads to disk in air-gapped / pull mode.
This command (added in v2.0) is the operator-facing surface for the
SIEM shippers; the wire protocol lives in
src/core/integrations/siem/ and is re-used by the
/api/integrations/ship web endpoint and the file exporters.
4.4.1. Usage#
flareinspect ship -i assessment.json [options]
4.4.2. Options#
Option |
Description |
Default |
|---|---|---|
|
Input assessment file (JSON) (required) |
— |
|
|
|
|
Elasticsearch base URL (overrides |
env or required for |
|
Elasticsearch API key (overrides |
env or required for |
|
Elasticsearch basic-auth username (overrides |
env or required for |
|
Elasticsearch basic-auth password (overrides |
env or required for |
|
Elasticsearch index name |
|
|
Splunk HEC base URL (overrides |
env or required for |
|
Splunk HEC token (overrides |
env or required for |
|
Splunk index |
|
|
If set, write NDJSON to this directory and skip the live HTTP ship. Only valid with |
— |
|
Build the payloads but do not POST and do not write |
— |
4.4.3. Env-var fallbacks#
Every flag has a matching env var. Flags take precedence over env vars. Use env vars for secrets in CI.
Flag |
Env var |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
4.4.4. Exit codes#
Code |
Meaning |
|---|---|
|
All requested targets succeeded (or |
|
Any requested target failed (missing creds, network error, 4xx/5xx, bad input) |
4.4.5. Examples#
Live ship to Elasticsearch
flareinspect ship -i assessment.json --target elastic \
--es-url https://es.example.com --es-api-key $ES_KEY
Live ship to Splunk HEC
flareinspect ship -i assessment.json --target splunk \
--hec-url https://splunk.example.com:8088 --hec-token $HEC_TOKEN
Ship to both in one call
flareinspect ship -i assessment.json --target all \
--es-url https://es.example.com --es-api-key $ES_KEY \
--hec-url https://splunk.example.com:8088 --hec-token $HEC_TOKEN
Dry-run (print the payload, do not POST)
flareinspect ship -i assessment.json --target elastic \
--es-url https://es.example.com --es-api-key $ES_KEY --dry-run
Pull / air-gapped (write NDJSON to a directory)
flareinspect ship -i assessment.json --target file --out-dir ./out
This produces flareinspect-findings-<timestamp>.ndjson (ECS
shape) and flareinspect-hec-<timestamp>.ndjson (HEC shape), plus
flareinspect-index-template.json (the recommended ES template).
CI: env-var-driven
export FLAREINSPECT_ES_URL=https://es.example.com
export FLAREINSPECT_ES_APIKEY=$ES_KEY
flareinspect ship -i assessment.json --target elastic
# exit 0 on success, exit 1 on failure — CI-friendly
4.4.6. Packaged apps#
The shipped payloads are tuned for the bundled Kibana and Splunk
apps under integrations/:
Elasticsearch — the ECS mapping, index template, and packaged Kibana saved-objects bundle
Splunk — the HEC envelope, packaged TA, and dashboard
4.4.7. Next steps#
SIEM — SIEM section landing page
API Reference — the
POST /api/integrations/shipweb endpointnotify Command — the
notifycommand (Slack / Teams / webhook)