> For the complete documentation index, see [llms.txt](https://docs.tryterra.co/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tryterra.co/help-center/help-topics/no-data/connections-expiring-disconnecting/connections-removed-by-deauthenticate-calls.md).

# Why do my users' connections keep disappearing on their own?

Check your own backend first: a call to /auth/deauthenticateUser removes the connection straight away, even if the user didn't ask to disconnect.

**Check your own backend first.** A call to `DELETE /auth/deauthenticateUser` removes the connection straight away and sends a `deauth` webhook for that user ID, whoever triggered it in your stack.

Connections that disappear repeatedly for users who say they didn't disconnect have been traced to the customer's own app, for example:

* a disconnect button or settings flow that fires when the user didn't mean to disconnect
* a cleanup job that deauthenticates users who are still active

**How to confirm it:**

* Log every call your backend makes to `/auth/deauthenticateUser`, with the `user_id` and what triggered it.
* Match those calls against the `deauth` webhooks you receive for the affected users.

When the user reconnects, they get a **new user ID** in the `auth` webhook. Because the old connection was already removed, there is no `user_reauth` linking the two, so key your records on your stable `reference_id`. See [how do I handle a changed Terra user ID after reauth](https://docs.tryterra.co/help-center/help-topics/no-data/auth-scopes-user-id-matching/reauth-webhook-user-id-changes).
