Inbound webhook — webhook
Push ingestion of arbitrary JSON (or NDJSON): producers POST to the source’s ingest endpoint. The payload is stored lossless; declare labels to map payload fields into the envelope. The catch-all connector for anything that can send an HTTP request — CI systems, GitHub webhooks, cron jobs, your own services.
Set up
Agent
Ask a connected agent:
Use navflow to create a webhook source for my CI events, keyed by the payload’s
pipelinefield.
The agent calls create_source and returns the ingest URL to point your producer at. Use
test_source with a sample payload to check the label mapping first.
Producers then POST JSON (one object, a list, or NDJSON) to /ingest/<ingest_key>:
curl -X POST http://localhost:8787/ingest/<ingest_key> \
-H 'Content-Type: application/json' \
-d '{"action": "deploy", "sender": "ci", "pipeline": "web"}'If NAVFLOW_INGEST_TOKEN is set, producers send it
(X-NavFlow-Token or Authorization: Bearer).
Configuration
| field | type | description |
|---|---|---|
event_type | string | fixed event type (default webhook_event) |
event_type_field | string | payload field to read the event type from, e.g. action |
text_template | string | render template over payload fields, e.g. '{action} by {sender}' |
event_time_field | string | payload field holding an ISO-8601 event timestamp |
Verify
POST a test payload (as above) and check Recent events; Fields shows which payload fields arrive and how often — use it to pick a reliable key.