Skip to main content
This guide covers user administration, API keys, passwords, and authentication activity. Generated operations return { data, error, request, response }; pass flat parameters first and { client } second.
Most user administration operations require the ADMIN role. A regular user can manage their own profile, password, settings, and API keys, but cannot create, update, delete, or audit another user.

Roles and restrictions

Roles are server-defined strings. Common roles include: Library and content restrictions are separate from roles:
  • sharedLibraries: { all: false, libraryIds } limits a user to selected libraries. Set all: true for every library.
  • labelsAllow exposes only content carrying at least one allowed label.
  • labelsExclude hides content carrying an excluded label.
  • ageRestriction accepts ALLOW_ONLY, EXCLUDE, or NONE with an age value.
The response shape exposes these as sharedAllLibraries, sharedLibrariesIds, and the corresponding label/age fields.

Get the current user

getCurrentUser has an optional query parameter, so pass undefined when only the client is needed:

List all users

Requires the ADMIN role.

Create a user

Requires the ADMIN role.
The generated body parameter is userCreationDto. Apply library and content restrictions at creation time when possible:

Update a user

Requires the ADMIN role.
userUpdateDto is partial. A partial update leaves omitted fields unchanged:
To grant all libraries, send sharedLibraries: { all: true, libraryIds: [] }. To clear an age rule, send the required numeric age together with restriction: 'NONE'.

Delete a user

Requires the ADMIN role. This action cannot be undone.

Password management

Update your password

Update another user’s password

Requires the ADMIN role.

API key management

API keys provide programmatic access without exposing a password. The key value is returned only by the create call; store it in a secret manager immediately and do not log it.

List your API keys

Create an API key

Delete an API key

Use an API key for authentication

Authentication activity

Activity records include dateTime, success, and optional ip, source, userAgent, email, apiKeyComment, and error fields.

Get your activity

Get all activity

Requires the ADMIN role.

Get the latest activity for a user

Requires the ADMIN role.

User settings

User settings are key-to-setting maps. See Client Settings for precedence and global defaults; the same map operations are available to the current user:

Sync points

Delete all sync points, or only those associated with selected API key IDs. Deleting them makes a Kobo or other sync client start from scratch on its next sync:

Workflows

Create a restricted user

Create the account, then use the returned ID for any follow-up restriction change:

Audit failed logins

Group a recent admin activity page by email and flag repeated failures:

Rotate an API key

Create the replacement before deleting the old key so a failed create does not interrupt automation:

Handle failures

Generated calls expose HTTP failures in result.error and result.response instead of throwing by default. A 401 indicates missing/invalid credentials; a 403 indicates a role or restriction denied the operation:
Use unwrap and KomgaApiError when an exception boundary is a better fit; see Quickstart.

Next steps

Authentication

Configure Basic Auth, API keys, custom headers, and browser credentials.

Client settings

Manage global and user-specific reader settings.