---
title: "List and filter account users"
method: POST
path: "/people-api/v3/accounts/{accountUid}/users"
tags: ["People"]
---

# List and filter account users

`POST /people-api/v3/accounts/{accountUid}/users`

## Request

- Base URL: `https://api.smartling.com`
- URL: `https://api.smartling.com/people-api/v3/accounts/{accountUid}/users`
- Auth: HTTP bearer

> **Beta**. This endpoint is available for early use and is not yet covered by our stability commitment for generally available APIs. We may change it based on feedback, including changes that are not backward compatible. We will announce changes in the release notes and notify affected customers at least 30 days in advance.

Returns a page of users in the account matching the given filter.
All filter fields are optional.

Callers whose highest role is workflow-level and who belong to an
agency see only the users of that agency, regardless of the
request. `sourceLocales`, `targetLocales`, `workflowUid`, and
`workflowStepUids` apply only to workflow-level roles.

Results are paged with `offsetToken`. The response has no total
count.

`limit` above `20` is not rejected. The response is silently
capped at `20` items regardless of the requested value.

## Path parameters

- `accountUid` string, required

## Request body

- TeamViewFilterCommand: Filter for listing account users. `sourceLocales`, `targetLocales`, `workflowUid`, and `workflowStepUids` apply only to workflow-ACL-level roles.
  - `keyword` string: Case-insensitive substring match against name and email.
  - `userUids` UserUid[]: Restrict results to these user UIDs.
  - `sourceLocales` LocaleId[]: Restrict results to workflow-ACL-level users assigned to one of these source locales.
  - `targetLocales` LocaleId[]: Restrict results to workflow-ACL-level users assigned to one of these target locales.
  - `workflowUid` string: Workflow unique identifier — 12 lowercase alphanumeric characters.
  - `workflowStepUids` WorkflowStepUid[]: Restrict results to workflow-ACL-level users assigned to one of these workflow steps.
  - `limit` integer: Requested page size. Requests above `20` are not rejected. The response is silently capped at `20` items.
  - `offsetToken` string: Opaque, server-generated pagination cursor. Do not attempt to parse or construct one. Pass back exactly what a previous response returned.

## Response `200`

Users retrieved.

- TeamViewListResponse
  - `response` object, required
    - `code` 'SUCCESS', required
    - `data` object, required
      - `offsetToken` string: Opaque, server-generated pagination cursor. Do not attempt to parse or construct one. Pass back exactly what a previous response returned.
      - `items` TeamViewItem[]
        - `userUid` string: Unique identifier of a user — 12 lowercase alphanumeric characters.
        - `firstName` string: User's first name.
        - `lastName` string: User's last name.
        - `email` string: User's email address.
        - `lastLogin` string, date-time: ISO 8601 UTC timestamp.
        - `payable` boolean, nullable: Whether the user counts as a billable seat on the account.
        - `pending` boolean, nullable: Whether the user's invite is still pending acceptance.
        - `agency` Agency: Agency identity.
          - `agencyUid` string: Agency unique identifier — 8 lowercase hexadecimal characters.
          - `agencyName` string: Display name of the agency.
        - `userRoles` Role[]: Roles the user holds.
          - `name` string: Role name, e.g. `ROLE_PROJECT_MANAGER`.
          - `level` string, nullable: ACL level the role is scoped to, typically `ACCOUNT`, `PROJECT`, or `WORKFLOW`. Can be `null` for a role that carries no ACL level.
        - `containsAllLocales` boolean: Whether the user's workflow assignments cover every locale pair in the account.
        - `localePairs` LocalePairs[]: Source/target locale pairs the user is assigned to via workflow steps.
          - `sourceLocaleId` string, required: Locale identifier. Either a 2-letter language code (`en`) or a language-region pair (`en-US`). The language part is always lowercase; the region part is always uppercase.
          - `targetLocaleIds` LocaleId[], required: Target locales of the pair.
        - `runningActions` ActionState[]: Bulk actions currently in progress or recently completed for this user.
          - `action` string: The action that was performed, e.g. `REMOVE_USER`, `RESEND_INVITE`.
          - `status` 'RUNNING' | 'ASYNC_WAIT' | 'PULL_WAIT' | 'COMPLETED' | 'FAILED' | 'CANCELED' | 'EXPIRED': Status of the action: 1. `RUNNING` - accepted and in progress. 2. `ASYNC_WAIT` - waiting for a background step to finish. 3. `PULL_WAIT` - waiting for a scheduled step to be picked up. 4. `COMPLETED` - finished successfully. 5. `FAILED` - failed or could not be started. See `lastError`. 6. `CANCELED` - canceled before it finished. 7. `EXPIRED` - not completed in time.
          - `lastError` string, nullable: Error message from the most recent failed attempt, if any.

## Other responses

- `401`: Provided credentials are not valid.
- `403`: Caller does not have access to the requested resource.
- `500`: Unexpected error

## Changes

- **2026-10-17** `2cd7a8215799`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/changes/people-api/v3/accounts/:accountUid/users/post.md)

---

[API](https://skmtc.dev/smartling/apis/smartling-rest-api-reference.md) - [All operations](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/smartling/apis/smartling-rest-api-reference/revisions/e63066e7f5e9?raw)
