> ## Documentation Index
> Fetch the complete documentation index at: https://docs.onboardme.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Sync Clients from OnboardMe to Your System

> Learn how to run a full client import and keep your system in sync using the OnboardMe entities list endpoint with lastUpdated incremental filtering.

Pull the practice's client entities into your product and keep them current. Read-only credentials are enough to sync. Creating clients needs `canWrite: true`.

## 1. Full import

Page `GET /api/v1/entities/list` from `pageNumber=1` until a page is short or empty.

```bash theme={null}
curl -sS "https://anzapi.onboardme.app/api/v1/entities/list?pageNumber=1" \
  -H "X-OM-Auth-ID: YOUR_CLIENT_ID" \
  -H "X-OM-Auth-Key: YOUR_CLIENT_SECRET"
```

Persist `entityKey` as your foreign key. See [Entities](/concepts/entities) for keys vs codes.

## 2. Hydrate detail when you need it

List rows are summaries. For addresses and staff assignments use `GET /api/v1/entities/{key}`.

## 3. Join to XPM, Karbon, FYI, QuickBooks

`GET /api/v1/entities/{key}/integrations` returns linked IDs when those products are connected. Null IDs mean not linked.

## 4. Incremental sync

```bash theme={null}
curl -sS "https://anzapi.onboardme.app/api/v1/entities/list?lastUpdated=2026-04-10T00:00:00Z" \
  -H "X-OM-Auth-ID: YOUR_CLIENT_ID" \
  -H "X-OM-Auth-Key: YOUR_CLIENT_SECRET"
```

Advance your watermark only after you have stored the page. `lastUpdated` must be UTC and must not be in the future.

## 5. Create a client (write access)

Resolve `entityTypeID` from `GET /api/v1/settings/entity-types` first, then `POST /api/v1/entities`. For a full lead (source, status, opening note) prefer `POST /api/v1/leads` instead. See [Leads and deals](/guides/leads).
