# SDK Overview (/docs/sdk/overview)



The Layers SDK is a small client library that ships with your app and
fires conversion events to Layers' ingest endpoint
(`https://in.layers.com/events`). Layers stores every event in
`sdk_events`, then forwards the subset that maps to standard platform
events on to Meta (via CAPI) and TikTok (via Events API) server-side.

## What the SDK does [#what-the-sdk-does]

* Captures events (purchase, signup, custom) and batches them to the
  ingest endpoint.
* Generates a stable anonymous `install_id` per device and threads it
  through every event.
* Hashes PII client-side (email / phone → SHA-256) when advanced
  matching traits are passed.
* Queues events on-disk for retry-on-restart.
* Exposes consent / killswitch hooks that gate tracking.

## What it does NOT do [#what-it-does-not-do]

* It does NOT bundle the Meta Pixel SDK or TikTok Pixel SDK. Forwarding
  to those platforms happens server-side in the CAPI relay.
* It is NOT a full MMP. Attribution to ad networks beyond Meta, TikTok,
  and Apple Search is outside the current scope — run AppsFlyer or
  Adjust alongside Layers if you need AppLovin / Mintegral / Unity Ads
  coverage.
* It does NOT guarantee forwarding of arbitrary event names. Only the
  events in the [mapping table](/docs/sdk/architecture#event-name-mapping)
  are relayed to Meta / TikTok; others are stored but dropped at the
  relay.

## Supported platforms [#supported-platforms]

Published on npm today (alpha):

* **Web / JavaScript** — `@layers/client`. Works in browsers, WebViews,
  and any JS runtime with `fetch`.
* **React Native** — `@layers/react-native`. iOS + Android native
  modules for ATT, SKAN, and deep-link attribution.
* **Expo** — `@layers/expo`. Config plugin wrapping
  `@layers/react-native`.
* **Node** — `@layers/node`. Server-side event firing.

Not yet published (interim workarounds on each page):

* iOS (native Swift), Android (native Kotlin / Java), Flutter, Unity,
  Cordova / Capacitor.

## Privacy [#privacy]

* Emails / phones passed via advanced-matching traits are SHA-256 hashed
  by the server relay before forwarding. Email is lowercased + trimmed;
  phone is stripped to digits.
* Mobile advertising IDs (IDFA, GAID) are forwarded plaintext to Meta
  only when consented (ATT `authorized` on iOS; non-zeroed GAID with ad
  tracking enabled on Android).
* See [SDK PII inventory](/docs/trust/sdk-pii) for the full field list.

## Where to start [#where-to-start]

* [Architecture](/docs/sdk/architecture) — how the SDK, ingest, and CAPI
  relay fit together.
* [Quickstart](/docs/sdk/quickstart) — install a published SDK in a few
  minutes.
* [Standard events](/docs/sdk/standard-events) — the events that map to
  Meta / TikTok standard events.
