from engini import Engini
client = Engini() # reads ENGINI_API_KEY
events = client.triggers.events.list("ti_DG9q7IlQO0MeghC4IEzP19")import { Engini } from "@engini/sdk";
const client = new Engini(); // reads ENGINI_API_KEY
const events = await client.triggers.events.list("ti_DG9q7IlQO0MeghC4IEzP19");engini triggers events ti_DG9q7IlQO0MeghC4IEzP19 --limit 20 --jsonconst options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.engini.io/v1/triggers/{triggerId}/events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.engini.io/v1/triggers/{triggerId}/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.engini.io/v1/triggers/{triggerId}/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.engini.io/v1/triggers/{triggerId}/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.engini.io/v1/triggers/{triggerId}/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"delivery": "pending",
"id": "<string>",
"trigger_id": "<string>",
"occurred_at": "2023-11-07T05:31:56Z",
"payload": "<unknown>",
"payload_truncated": true,
"payload_hash": "<string>"
}
],
"totalCount": 123,
"offset": 123,
"top": 123
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}List trigger events
The firings this trigger has captured, newest first - one event PER RECORD, not per run: the engine’s contract is one run per tick carrying the whole array, and this API’s is one event per record.
Duplicate records are absent by construction, not filtered on read: dispatch suppresses a repeated (trigger, payload) pair inside the instance’s dedupe_window_hours, because the platform’s poll watermark advances to a run’s START and would otherwise re-deliver records created mid-run.
Events are retained 30 days. Each event’s delivery field reflects where its delivery has got to; read GET /v1/triggers/events/ for the full attempt history, and POST /v1/triggers/events//replay re-delivers it.
from engini import Engini
client = Engini() # reads ENGINI_API_KEY
events = client.triggers.events.list("ti_DG9q7IlQO0MeghC4IEzP19")import { Engini } from "@engini/sdk";
const client = new Engini(); // reads ENGINI_API_KEY
const events = await client.triggers.events.list("ti_DG9q7IlQO0MeghC4IEzP19");engini triggers events ti_DG9q7IlQO0MeghC4IEzP19 --limit 20 --jsonconst options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.engini.io/v1/triggers/{triggerId}/events', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.engini.io/v1/triggers/{triggerId}/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.engini.io/v1/triggers/{triggerId}/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.engini.io/v1/triggers/{triggerId}/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.engini.io/v1/triggers/{triggerId}/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"items": [
{
"delivery": "pending",
"id": "<string>",
"trigger_id": "<string>",
"occurred_at": "2023-11-07T05:31:56Z",
"payload": "<unknown>",
"payload_truncated": true,
"payload_hash": "<string>"
}
],
"totalCount": 123,
"offset": 123,
"top": 123
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}{
"errorCode": "<string>",
"message": "<string>",
"requestId": "<string>",
"timestamp": "<string>",
"details": [
{
"field": "<string>",
"issue": "<string>"
}
]
}Authorizations
Enter your JWT token
Path Parameters
The ti_ public id of the trigger instance.
Query Parameters
Zero-based index of the first item to return.
Maximum number of items to return.
Response
A paginated list of captured events.
Offset-based paginated wrapper for a list of items.
The items in the current page.
Show child attributes
Show child attributes
Total number of items available across all pages.
Number of items skipped before this page (the requested offset).
Maximum number of items requested for this page.