---
title: Overview
description: How to integrate today — direct HTTP calls against the Ingestion & Decisioning API — and what's planned.
---

<Warning title="No published package yet">
  There is currently **no published npm package** (or any other package-manager artifact) for Retidal. If
  you see an `npm install` instruction for one anywhere, it's wrong — verified against the npm registry at
  the time of writing, no `retidal`, `@retidal/sdk`, or `@trackly/sdk` package exists there. The integration
  path below (direct HTTP calls) is what actually works today.
</Warning>

## The real integration path: direct HTTP

Every capability — event ingestion, identity linking, decisioning, coupons, profile writes — is a plain HTTP
JSON API, authenticated with a single `X-API-Key` header. This works from any language with an HTTP client:
there is no client library required to integrate.

```bash
curl -X POST https://api.retidal.com/api/v1/t \
  -H "X-API-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{ "eventName": "page_view", "visitorId": "vid_abc123" }'
```

Start with [Sending events](/docs/sending-data/events) for the full request/response contract of `POST
/api/v1/t` (including the `202` vs `?sync=1` distinction, which matters more than almost anything else on
this platform), then
[Identify](/docs/sending-data/identify) to link a visitor to a logged-in user. The
[Ingestion & Decisioning API reference](/ingestion) documents every endpoint with generated request/response
schemas and examples in multiple languages.

## TypeScript today: type the HTTP calls yourself

Since there's no installable package, [TypeScript usage](/sdks/typescript) means writing a small typed
wrapper around `fetch` against the documented `POST /api/v1/t` contract — not importing anything from a
registry. That page gives you a complete, copy-pasteable module built from the real ingestion schema, with
proper types for every documented response shape (`202`, `200` sync, `400`, `401`, `422`, `503`).

## What's planned

A first-party TypeScript SDK is under active development in the platform's own codebase, but as of this
writing it has not been published anywhere you can install it from. This page will be updated with real
install instructions the moment that changes — until then, treat the direct-HTTP path above as the supported
integration method, not a fallback.

## Next steps

<CardGroup cols={2}>
  <Card title="TypeScript usage" href="/sdks/typescript">
    A typed fetch wrapper built from the real ingestion contract.
  </Card>
  <Card title="Sending events" href="/docs/sending-data/events">
    The full event-ingestion request/response contract, in any language.
  </Card>
</CardGroup>
