Hi, im trying to setup my first Mautic project and looking if i can do it out of the box or we need some extra implementation.
My problem is:
Ive got my front end that connects with mautic api to let my users admin their campaigns. So i’ve mounted a Mautic in VPS and tested, everything good so far. But for the design of what we need I don’t know if Mautic fits the model. For example if an owner adds a contact that other owner already has, it will overwrite it, tried with csv import, api create, and api batch, none of this worked.
The only one method worked was the manual creation of a contact.
My main concern is, what happens if an owner adds the same mail and the owner before lost that record because the uniqueness nature of the email field?
Should I modify something, install a plugin or manage different instances of mautic for each user? The last one seems not so useful for our use case, as each owner has around 200 contacts each.
So at the moment one contact can have one owner, which I think we should improve / change. The thing is that while this is doable this I think quite a project so much so that I do not think its possible or should even be considered as a plugin.
Mutli owner I think should get merged directly to the core as there is a lot you have to change to make this work.
I do not believe it will change the owner if different owner passes the same email address (something to test I guess), but as far as I know non admin can only update the contact for which he/she is an owner.
I would try really hard to avoid the multiple instances based on your description. I would consider writing a custom api endpoint (plugin) while I copy most of the code from the core and just change the peace that is changing the owner on update, if that is the only issue.
So by default Mautic unique identifier is email, this can however be changed to anything else you want.
We had numerous user cases where the client wanted to have multiple contacts with the same email address (for whatever reason, it is less relevant) and what we did was set a different field as the unique identifier, in our case we had something like unique_contact_id.
For us it was easy as the customer was generating their own unique_contact_id’s however a simple script in the middle can do this for you as well.
Yes you can just hit solution on the thread that has answered your question.
One thing to take into account is that merge function can get very heavy and slow when the DB grows. Do a search on this in the forum and GitHub I think there is some type of patch that is meant to fix this.