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

# Users and CIP

> List and block users; check CIP readiness and create CIP tickets from the Partner API

## Users

Manage end users tied to your `referenceId` values.

You also receive Partner webhooks when a user is first created (`user.created`), gains a participation role (`user.role_added`), or completes CIP (`user.cip_verified` / `user.cip_failed` / `user.cip_manual_review`). See [Webhook events](/raas-widgets/webhooks/events).

| Method | Path                             | Purpose                                                     |
| ------ | -------------------------------- | ----------------------------------------------------------- |
| `GET`  | `/partner/users`                 | Paginated list (filter by referenceId, CIP, blocked, dates) |
| `GET`  | `/partner/users/:userId`         | User detail                                                 |
| `POST` | `/partner/users/:userId/block`   | Block (optional reason)                                     |
| `POST` | `/partner/users/:userId/unblock` | Remove block                                                |

### List users

```bash theme={null}
curl "https://raas-widgets-backend-sandbox.up.railway.app/partner/users?page=1&limit=20" \
  -H "X-API-Key: raas_sandbox_your_api_key_here"
```

Pagination uses `page` / `limit` with `total` and `totalPages` in the response envelope.

### Block a user

Blocked users cannot receive new magic links.

```bash theme={null}
curl -X POST https://raas-widgets-backend-sandbox.up.railway.app/partner/users/usr_acme_x1y2z3/block \
  -H "X-API-Key: raas_sandbox_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "Suspected fraud — review case 4821"
  }'
```

```bash theme={null}
curl -X POST https://raas-widgets-backend-sandbox.up.railway.app/partner/users/usr_acme_x1y2z3/unblock \
  -H "X-API-Key: raas_sandbox_your_api_key_here"
```

<Warning>
  Blocking is partner-scoped. Confirm `userId` from list/detail before calling block.
</Warning>

## CIP (Partner)

For server-driven identity checks around a magic link:

| Method | Path                             | Purpose                                  |
| ------ | -------------------------------- | ---------------------------------------- |
| `GET`  | `/partner/cip/readiness/:linkId` | Read-only: enough data to run CIP?       |
| `POST` | `/partner/cip/tickets`           | Create a CIP ticket (returns widget URL) |

### Check readiness

```bash theme={null}
curl https://raas-widgets-backend-sandbox.up.railway.app/partner/cip/readiness/link_acme_a1b2c3d4e5f6 \
  -H "X-API-Key: raas_sandbox_your_api_key_here"
```

Use this before creating a ticket so you know required fields are present (or fulfill them via [data requests](/raas-widgets/guides/data-requests)).

### Create ticket

```bash theme={null}
curl -X POST https://raas-widgets-backend-sandbox.up.railway.app/partner/cip/tickets \
  -H "X-API-Key: raas_sandbox_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "linkId": "link_acme_a1b2c3d4e5f6"
  }'
```

The response includes a URL where the end user completes CIP. The link must not be revoked and should pass readiness.

## Related

<CardGroup cols={2}>
  <Card title="User data" icon="user" href="/raas-widgets/guides/user-data">
    Prefills and friction.
  </Card>

  <Card title="Operations" icon="list" href="/raas-widgets/ops/operations">
    Transfers after CIP succeeds.
  </Card>
</CardGroup>
