cin-event-tracking
v0.1.3
Published
TypeScript client for the Event Tracking API.
Readme
cin-event-tracking
TypeScript client for the Event Tracking API.
Install
npm install cin-event-trackingEnvironment variables
EVENT_TRACKING_ENABLED- must betrueto enable API calls.EVENT_TRACKING_BASE_URL- base URL of the tracking API (example:https://tracking.example.com).
Usage
import { EmptyEventsError, EventTrackingClient } from "cin-event-tracking";
process.env.EVENT_TRACKING_ENABLED = "true";
process.env.EVENT_TRACKING_BASE_URL = "https://tracking.example.com";
const client = new EventTrackingClient();
try {
await client.track([
{
batchId: "batch-123",
sourceId: "source-1",
objectId: "doc-1",
step: "ingest/received",
},
]);
} catch (error) {
if (error instanceof EmptyEventsError) {
console.error("Expected at least one event");
}
}
const documentEvents = await client.getDocumentEvents("source-1", "doc-1");
const batchEvents = await client.getBatchEvents("batch-123");
console.log(documentEvents, batchEvents);API
track(events: StatusEvent[]): Promise<void>- Sends
POST /v1/status. - Throws
EmptyEventsErrorwheneventsis empty.
- Sends
getDocumentEvents(sourceId: string, objectId: string): Promise<unknown | undefined>- Sends
GET /v1/document/{sourceId}/{objectId}.
- Sends
getBatchEvents(batchId: string): Promise<unknown | undefined>- Sends
GET /v1/batch/{batchId}.
- Sends
When tracking is disabled (EVENT_TRACKING_ENABLED is not true), methods return early and do not call the API.
