Skip to main content
kremis ingest [-f <FILE>] [-t <FORMAT>] [--from-stdin]
Read signals from a file or stdin and ingest them into the graph. --file and --from-stdin are mutually exclusive. One must be provided.

Options

OptionShortDescriptionDefault
--file <path>-fPath to the input file(required without --from-stdin)
--format <fmt>-tInput format: json or text (file only)json
--from-stdinRead signals from stdin as JSON Linesfalse

Input Formats

JSON (file)

Array of signal objects:
[
  {"entity_id": 1, "attribute": "name", "value": "Alice"},
  {"entity_id": 2, "attribute": "name", "value": "Bob"}
]

Text (file)

Colon-separated entity_id:attribute:value per line:
1:name:Alice
2:name:Bob

JSON Lines (stdin)

One signal object per line. No array wrapper. --format is ignored when using --from-stdin.
{"entity_id": 1, "attribute": "name", "value": "Alice"}
{"entity_id": 2, "attribute": "name", "value": "Bob"}

Limits

LimitValue
Maximum signals per ingestion10,000

Examples

# Ingest JSON signals from file
kremis ingest -f examples/sample_signals.json -t json

# Ingest text signals from file
kremis ingest -f examples/sample_signals.txt -t text

# Pipe a single signal from another command
echo '{"entity_id": 1, "attribute": "name", "value": "Alice"}' | kremis ingest --from-stdin

# Pipe multiple signals (JSON Lines)
generate-signals | kremis ingest --from-stdin

# Heredoc (useful for scripting)
kremis ingest --from-stdin <<EOF
{"entity_id": 1, "attribute": "name", "value": "Alice"}
{"entity_id": 2, "attribute": "name", "value": "Bob"}
EOF
Last modified on March 8, 2026