> For the complete documentation index, see [llms.txt](https://docs.lassomoderation.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.lassomoderation.com/managing-users/user-moderation.md).

# User Moderation

Lasso moderates users as well as content. Every user on your platform gets a moderation status in Lasso, and moderators and rules can act on the account as a whole: flag it for review, ban it permanently or temporarily, remove all of its content in one go, or give it a [strike](/managing-users/strikes.md). This is useful when the problem is the person rather than a single post, for example spammers, scammers and repeat offenders.

{% hint style="info" %}
Lasso does not block the user on your platform itself. Every status change is recorded in Lasso and sent to your platform through [webhooks](/developers/webhooks.md), and your platform decides what a ban means (blocking sign-in, hiding the profile, and so on). Make sure you have an active webhook configured under **Settings → API & Webhooks**.
{% endhint %}

### What you can use it for

* Ban spammers and repeat offenders, permanently or for a set amount of time.
* Flag suspicious accounts so a moderator reviews them in a [review queue](/automation-and-review/review-queues.md).
* Act on users automatically with user rules, for example ban users who reach 3 strikes, or flag day-old accounts that already had content removed.
* Clean up after a bad actor by removing all of their content in a single action.
* Keep your own platform in sync with every decision through webhooks.

### User statuses

Every user has one of three statuses:

* **Allowed**: the user is in good standing. This is also the status a user ends up with when they first sync to Lasso and no rule decides otherwise.
* **Flagged**: the user needs a human decision. Flagging a user creates a review in your review queues (if there isn't one open already). Flagging is not a final decision, so it does not resolve open reports on the user.
* **Banned**: the user should no longer take part in your platform. A ban can be permanent or temporary, and can remove all of the user's content at the same time.

The action names can be customized for your workspace (for example **Suspend** or **Delete** instead of **Ban**); reach out to Lasso support if the defaults don't match your product's vocabulary. In the API and in webhook payloads the statuses are always `allowed`, `flagged` and `hidden`, whatever the display names in the dashboard.

### Where to find your users

The **Users** page in the sidebar lists every user synced to Lasso. You can search users, filter on status and tags, and see per user how much content they posted, how often they were reported and how many reports they filed themselves.

Click a user to open their profile. It shows everything Lasso knows about the account (email, signup method, IP address, country, strikes, tags and any [custom attributes](/moderator-toolkit/custom-attributes.md)), an **Activity** timeline of every action ever taken on the user, and their content history. Next to the email address and email domain, a green check mark or a red block icon shows whether the domain is a known temporary (disposable) email provider; no icon means Lasso has no information about that domain yet. From the menu on the profile a moderator can also add a note, [send a message](/moderator-toolkit/sending-messages.md) to the user, or re-evaluate the rules with **Rerun rules on this user**.

If you set a **User link** under **Settings → Moderation Preferences** (for example `https://example.com/users/{id}`), the profile menu also gets a **View user in ...** option that opens the user directly in your own app.

### Taking action on a user

Allow, flag and ban buttons are shown wherever a user appears: on the Users page, on the user's profile, in review queues and on [user reports](/automation-and-review/user-reports.md). Banning opens a confirmation dialog with:

1. **Policy category**: the policy the user violated. Optional by default; you can make it required per action under **Settings → Moderation Preferences**.
2. **Temporarily ban user**: ban for a limited time instead of permanently (see below).
3. **Remove all user's content**: also removes everything the user has posted, with its own policy category for the content.

Content removed this way stays removed: unbanning the user later, or a temporary ban expiring, does not restore it.

Once a default policy is configured, moderators can Shift+Click an action button to act without the confirmation dialog.

<figure><img src="https://720369-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEHJJyWYjMNTzFPyCUpfR%2Fuploads%2FyB0nlB8H8xGQUwoUN6Vv%2FScreenshot%202026-08-04%20at%2016.26.04.png?alt=media&#x26;token=c8fce2a0-319f-446f-99da-6da6feda00be" alt=""><figcaption></figcaption></figure>

### Temporary bans

{% hint style="info" %}
Temporary bans are available on the Pro and Enterprise plans.
{% endhint %}

Instead of banning permanently, tick **Temporarily ban user** in the ban dialog and choose a duration in hours, days or weeks (the default is 3 days; Lasso can configure a different default for your workspace). When the ban expires, Lasso automatically sets the user back to allowed and notifies your platform through the webhook, so the user regains access without a moderator having to remember.

### Moderating users automatically with rules

Under **Rules → Users** you can automate user moderation. A user rule combines conditions about the user (account age, signup method, email domain, temporary email address, IP address, number of strikes, times reported, content volume and more, see the user condition types in [custom moderation rules](/automation-and-review/custom-moderation-rules.md)) with actions:

* Change the user's status (**Allow**, **Flag** or **Ban**), with a **Policy Category** and, for flag rules, a review **Priority**.
* When banning, optionally **Remove all content**, with its own policy category for the content.
* **Strike user**, to give the user a [strike](/managing-users/strikes.md).
* Add **User Tags** to the user.

Rules are re-evaluated whenever something about the user changes: when the account is created or updated through the API, when the user posts content, when they are reported, when they receive a strike, and when a moderator chooses **Rerun rules on this user**. Rules run in the order shown on the page; an allow or ban stops the evaluation, while multiple flag rules can all fire. Rules never override a ban a moderator has set by hand.

### Reviewing flagged users

Flagged users land in your [review queues](/automation-and-review/review-queues.md) next to content reviews. Use [routing rules](/automation-and-review/review-queues/routing-rules.md) with the **Review Type** condition to send user reviews to a dedicated queue or team.

Inside a review the moderator sees the full user profile, activity timeline and content history, and decides with **Allow** or **Ban** (flagging again is not offered inside a review, and banning from a review always asks for confirmation). The optional **Also apply to all user's content** checkbox removes everything the user posted along with the ban; it can be shown or hidden per moderator in the review settings.

User reviews are always handled by human moderators; the AI Moderator only reviews content.

### Syncing users through the API

Users are created and updated in Lasso through `POST /api/v1/user`; see the [API Reference](https://api-reference.lassomoderation.com/) for the full schema. A few semantics to be aware of:

* Send an update whenever the profile changes (name, email, profile image, IP address and so on); every update re-evaluates your user rules with the fresh data.
* Set the user's `type` (`normal`, `trusted`, `moderator`, `admin` or `testing`) so rules can treat your staff and trusted users differently from normal users.
* The `status` field is only honoured when the user is first created; later values are ignored.
* The user's project (`project_id` / `category_id`) cannot be changed after creation.
* Bulk imports through `POST /api/v1/import/users` skip rule evaluation, so imported users are not run through your rules.
* `GET /api/v1/user/{id}` returns the user's current status, including `temporarily_banned_until` and `strike_until` when applicable, useful when your backend needs to check a user's standing.

### User actions in webhooks

Every user status change is delivered to your webhook as a `ChangeStatus` action with `"type": "user"`. The payload contains your own user id and tags, the new and previous status, the policy that was applied, and a `temporary_ban` object (`until`, `period`, `duration`) when the ban is temporary. When a temporary ban expires, Lasso sends another `ChangeStatus` back to `allowed`. See [webhooks](/developers/webhooks.md) for the full payloads and signature verification.

If your endpoint keeps failing after retries, Lasso reverts the status change, so Lasso and your platform don't drift apart.

### Configuring user moderation

Under **Settings → Moderation Preferences** you can control:

* **Can ban users** and **Can unban users**: which user actions moderators can take in this workspace. Disabling unbanning also disables temporary bans, since a temporary ban needs to be lifted again.
* **User Policy Defaults**: a default policy per action, and whether a policy is required to allow, flag or ban a user.
* **User link**: the URL template that opens a user's profile in your app.
* Strike settings: see [strikes](/managing-users/strikes.md) for the escalation ladder and automatic clearing.

### Related features

* [Strikes](/managing-users/strikes.md): escalating, temporary penalties for repeat offences instead of an immediate ban.
* [Tags](/moderator-toolkit/tags.md): label users (for example `repeat-offender`) and use the tags in rule conditions and filters.
* [Sending Messages](/moderator-toolkit/sending-messages.md): explain a decision to the user instead of acting silently.
* [User Reports](/automation-and-review/user-reports.md): let your community report users, and act on those reports manually or with rules.
