# SDK — iOS (native) (/docs/sdk/ios)



<Callout type="warn">
  **Status: not yet published.** There is no native Swift SDK on the Swift
  Package Index or CocoaPods yet. `pod 'Layers'` / `.package(url:
  "https://github.com/layers/layers-ios")` will fail.
</Callout>

## What exists today [#what-exists-today]

For iOS integration, the supported paths are:

* **[React Native SDK](/docs/sdk/react-native)** — `@layers/react-native`
  (alpha) ships an iOS native module for ATT and SKAN.
* **[Expo SDK](/docs/sdk/expo)** — `@layers/expo` wraps the React Native
  package with a config plugin for managed workflows.
* **[Web SDK](/docs/sdk/web)** — `@layers/client` works inside a
  `WKWebView`-hosted app or any JavaScript runtime.

## Roadmap [#roadmap]

A native Swift SDK is on the roadmap. It will ship as a Swift Package
(SPM) with a CocoaPods fallback and will expose the same conceptual API
(`configure`, `track`, `identify`, `setConsent`, `flush`) over the
existing `https://in.layers.com/events` ingest endpoint.

Until it lands, anything on this page that previously described a native
`import Layers` / `Layers.configure(...)` call does not exist as a
shipped package — it is documentation for a planned API, not something
you can `pod install` today.

## If you need iOS now [#if-you-need-ios-now]

* Run the web or React Native SDK as described above.
* For server-side event firing (post-purchase webhooks, CRM systems),
  use `@layers/node` to POST to the ingest endpoint from your backend.
* For pure attribution (no in-app events), configure CAPI directly on a
  Meta or TikTok Ads layer — the server-side relay works without any
  mobile SDK if you post events to `https://in.layers.com/events` from
  your backend.
