> For the complete documentation index, see [llms.txt](https://docs.keeper.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.keeper.io/release-notes/backend/backend-api/older/backend-api-version-15.0.31.md).

# Backend API Version 15.0.31

## Improvements

* KA-3553: Improved performance for SCIM filter by external ID
* KA-2571: Validate a user's domain when an enterprise is created or when an enterprise user is added
* KA-3583: Restrict Admins from adding teams with missing encrypted\_team\_key

## Bug Fixes

* KA-3448: Admin is able to invite a user to an enterprise when the user exists in a different region
* KA-3464: "Forgot Password" flow generates error message
* KA-3533: 404 error appears after logout from US SSO Cloud account
* KA-3534: Log Error - NPE in SharedFolderUpdateCommand&#x20;
* KA-3491: A server error is generated while editing MSP user's name and email
* KA-3493: User with region issues generates log error
* KA-3407: Android users are prompted twice for code during 2FA setup
* KA-3540: Cloud SSO IdP-initiated login URL is not displayed as expected
* KA-3549: Cloud SSO does not return an error to the user if a bad IdP metadata XML file is uploaded
* KA-3394: BreachWatch and Security Audits reports are not updating as expected
* KA-3555: Log Error - ArrayIndexOutOfBounds in CreateAccountController
* KA-3556: Log Error - NPE in ManagedNodePrivilegeRemoveCommand
* KA-3554: Network error calling kinfo when user already exists locally
* KA-3568: KeeperApp should prevent active SSO connections from being deleted
* KA-3571: Errors are generated when a user attempts to approve existing devices via Keeper Push
* KA-3573: Requests are not removed from Approval Queue once approved by Admin


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.keeper.io/release-notes/backend/backend-api/older/backend-api-version-15.0.31.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
