Status of delete users feature


  • Used Zammad version: 3.2
  • Used Zammad installation source: package
  • Operating system: ubuntu 18.04
  • Browser + version: firefox

Expected behavior:

  • delete user easily

Actual behavior:

  • unable to delete user easily

Steps to reproduce the behavior:

  • no easy steps available

I started with Zammad. Love it. But then i wanted to delete a user. I must be missing something. I want (and have to) be able to delete a user. It’s a requirement, but also common sense.

Can someone please explain to me how i should interpret the fact i cannot remove a user in an easy way? like, just there in the webinterface? what’s the reasoning behind this?
I think i found out it should be possible to delete a user through CLI, but this has impact (understatement) on the tickets the user has created. Why?

Do i end up with tens of users incactive but unable to delete from my user list in, say a year time?

I found this, but what’s the status?

1 Like

Because this task is, as you stated yourself, not trivial at all.
You have to ensure that a delition has been completely successful, because:

  • You don’t want any data being left that hasn’t been removed by accident
  • You need to trust the UI when it states “I’ve deleted that” - under the hood it’s not trivial to have all use cases covered

You technically can remove users and tickets via command line which is the most important part that it is technically possible. A UI most of the times is a plus which in this case is quite complicated as stated above.

It is (and will not be) at any point not possible to delete users without deleting their tickets.
Zammads background base is a huge database with tons of relations that are dependent on each other.

So if you create a ticket with customer X, Zammad will take the user ID and note that the ticket has the customer_id: x - just like it does with your owner. That is because customers are, technically, user accounts as well.

Many systems are working that way, it wouldn’t make any sense to save redundant informatio for each ticket if you have a relation that holds this information already.

This is why you always need t delete everything that’s attached to the user or change the user that owns it. But that is (on the other hand) going against revision proveness if you don’t know how.

You can subscribe the following issue - Github will notify you on any updates this issue receives:

Long story short: We’re working on it, coming when it’s ready within this year.

thanks for the reply!
I understand the complexity, but because of that, the frontend should abstract more of that. The process of “deleting a user” does not have to be a actual delete of the user entry in the database, but do make it look like it does, at least. For example: maybe just have a button on all users in the user lists, with a disable function and have the page not display inactive or “deleted” users by default. Simple. The database can keep everything needed to keep the data consistent, but just make it look like the account is gone or something.

imho, as a first step, alot would improve in regards of this issue by displaying things differently within the interface instead of actually doing things in the database that are very tricky as you say and i fully agree with.

I think we both have a huge difference in defining what a deletion is.
If act like I deleted something, this will get me in huge trouble if a data privacy check is coming to the house.

Also, changing this to the way above is work that takes time as well, shouldn’t we rather focur on the real thing then?

I dare to doubt we have different definitions. What i was suggesting regarding deletes was the more realistic way a delete can be “simulated” within zammad. As stated, zammad will never be able to delete users without deleting their tickets. So “focusing on the real thing” would not be realistic when “thing” would be the ability to only delete the user account.

May i ask what are other options you’re considering, if any, to be able to do such a thing? (Other than the deletion of all tickets of the user in a safe/consistent way)

Maybe im looking for acknowledgement of the fact it should be possible to delete a user without deleting tickets. The way its implemented is another topic

It technically is possible but requires you to migrate the ticket to another user.
Still, note that this usually is not desired in GPDR cases.

I can’t provide further information in how the delete functionality will work and what it will be capable of exactly. Sorry.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.