Quickstart.
Five minutes from pnpm add to an event landing in your dashboard. Below is the SDK path; if you can't install a package, scroll down for the curl one.
Install
One dependency.
# in your project $ pnpm add @ingestlayer/sdk # .env — get the key from /keys in the dashboard INGESTLAYER_KEY=il_live_***
Bearer keys are minted at /keys inside the dashboard. A key is org-scoped and rotates without downtime.
Send
Init once, then track.
// anywhere in your app
import { init, track } from "@ingestlayer/sdk";
init({ apiKey: process.env.INGESTLAYER_KEY! });
track({
type: "user.signup",
icon: "🎉",
payload: {
email: user.email,
plan: user.intendedPlan,
source: "marketing-site",
},
});Call init once at startup with your key, then track events anywhere. Each event has a type (any string you control — user.signup, order.placed, etc.) and a payload — anything JSON-serializable. Events are batched and flushed automatically; call flush() before exit when you can't lose any.
No SDK? Same thing via HTTP:
# no SDK, no problem
$ curl -X POST https://in.ingestlayer.com/v1/ingest \
-H "Authorization: Bearer $INGESTLAYER_KEY" \
-H "Content-Type: application/json" \
-d '{
"events": [{
"type": "user.signup",
"icon": "🎉",
"payload": { "email": "ada@example.com", "plan": "pro" }
}]
}'See it
The events stream.
Open /events in the dashboard. New events appear at the top within a second; clicking one shows its payload, source, and any deliveries that fanned out from it.
At this point you have ingestion, durability, and a typed history. Next: do something with the events.