Users

class ab.api.endpoints.users.UsersEndpoint(client)[source]

User management (ACPortal API).

Parameters:

client (HttpClient)

list(*, data)[source]

POST /users/list.

Parameters:

data (ListRequest | dict) – List filter with pagination, sorting, and filters. Accepts a ListRequest instance or a dict.

Return type:

list[User]

Request model: ListRequest

Docs: https://ab-sdk.readthedocs.io/en/latest/api/users/list.html Request model: ListRequest Response model: List[User]

get_roles()[source]

GET /users/roles

Docs: https://ab-sdk.readthedocs.io/en/latest/api/users/get_roles.html

Return type:

list[str]

create(*, data)[source]

POST /users/user.

Parameters:

data (UserCreateRequest | dict) – User creation payload. Accepts a UserCreateRequest instance or a dict.

Return type:

None

Request model: UserCreateRequest

Docs: https://ab-sdk.readthedocs.io/en/latest/api/users/create.html Request model: UserCreateRequest

update(*, data)[source]

PUT /users/user.

Parameters:

data (UserUpdateRequest | dict) – User update payload. Accepts a UserUpdateRequest instance or a dict.

Return type:

None

Request model: UserUpdateRequest

Docs: https://ab-sdk.readthedocs.io/en/latest/api/users/update.html Request model: UserUpdateRequest

Per-endpoint reference

Each route-backed method has its own page rendering the HTTP route, the Python and CLI call signatures, and the request/response model field tables. This is the page help(api.users.<method>) links to via its Docs: footer. These pages are generated by scripts/generate_endpoint_docs.py and kept current by a CI freshness gate.

Methods

list

POST /users/list — List users (paginated).

Returns: list[User]`

from ab import ABConnectAPI

api = ABConnectAPI(env="staging")
users = api.users.list({"page": 1, "pageSize": 10})

get_roles

GET /users/roles — List all user roles.

Returns: list[str]

roles = api.users.get_roles()
for role in roles:
    print(role)

create

POST /users/user — Create a new user.

api.users.create({"username": "newuser", "email": "new@example.com", "roles": ["role-id"]})

update

PUT /users/user — Update a user.

api.users.update({"id": "user-id", "email": "updated@example.com"})