Skip to content
Try the API

Splunk

The Splunk integration sends Elastio events to a Splunk HTTP Event Collector (HEC). Each destination is a Splunk config. Through the API you can check how deliveries are going: totals for a time period, the full delivery history, and the request and response for each attempt.

GET
/gateway/integration/v1/splunk/statisticsGet Splunk delivery statistics
Try it

Returns totals across all Splunk configs for a period such as 24h, 7d or 30d (default 7d).

Terminal window
curl "https://acme.app.elastio.com/gateway/integration/v1/splunk/statistics?period=7d" \
-H "Authorization: Bearer $ELASTIO_TOKEN"
{
"status": 200,
"data": {
"total_splunk_configs": 3,
"active_splunk_configs": 2,
"inactive_splunk_configs": 1,
"total_deliveries": 4,
"successful_deliveries": 2,
"failed_deliveries": 1,
"period_days": 7
},
"message": "success"
}
GET
/gateway/integration/v1/splunk/invocations/filter-optionsGet filter options for Splunk invocations list
Try it

Returns the Splunk config names and status values you can use to filter the invocation history. It takes the same period as the history.

Terminal window
curl "https://acme.app.elastio.com/gateway/integration/v1/splunk/invocations/filter-options?period=30d" \
-H "Authorization: Bearer $ELASTIO_TOKEN"
{
"splunk_names": ["Production HEC", "Staging"],
"statuses": ["scheduled", "in_progress", "delivered", "failed", "retryable"]
}
GET
/gateway/integration/v1/splunk/invocationsGet Splunk invocation history (all configs)
Try it

Delivery history across all Splunk configs. Filter by period, name (a config name, or all) and status (scheduled, in_progress, delivered, failed, retryable or all). Each invocation includes the HEC response code, the payload sent and any error. Results page with pageSize (1–100, default 50) and pageToken; the next token is in pagination.next_page_token.

Terminal window
curl "https://acme.app.elastio.com/gateway/integration/v1/splunk/invocations" -G \
-H "Authorization: Bearer $ELASTIO_TOKEN" \
--data-urlencode "period=24h" \
--data-urlencode "status=failed" \
--data-urlencode "name=Production HEC" \
| jq '.invocations[] | {created_at, splunk_name, http_status_code, error_message, retry_count}'
{
"invocations": [
{
"id": "6c1d9e2a-7f3b-4a8e-b5d0-1e2f3a4b5c6d",
"splunk_id": "0a9b8c7d-6e5f-4a3b-9c2d-1e0f9a8b7c6d",
"splunk_name": "Production HEC",
"event_type": "…",
"status": "failed",
"http_status_code": 403,
"response_time_ms": 182,
"error_message": "…",
"retry_count": 3,
"created_at": "2026-10-11T14:02:17Z",
"updated_at": "2026-10-11T14:09:40Z"
}
],
"pagination": {
"next_page_token": null,
"prev_page_token": null,
"total_count": 1
}
}

To look at one config only, use GET /gateway/integration/v1/splunk/{splunk_id}/invocations with the config’s ID from splunk_id above. It takes the same filters except name.