Skip to main content

I’m running into a problem when attempting to sync contacts from our platform.  Currently I’m doing the following:

  1. Call the contacts/search endpoint, searching by email address
  2. If Contact is found, update it
  3. If Contact is not found, attempt to create it

I’m occasionally getting the following error on step #3:

An archived contact matching those details already exists with id=123456

 

I cannot search for Contact 123456 in the UI.  If I attempt to GET the Contact through the API, I get an error “User Not Found”.

I cannot blindly update the Contact because I don’t know their Intercom ID, and that’s the only way to call an update that I can find.

So how do I locate and update these archived records?

Hey@Doug Wehmeier 

 

When you get the error like the below:

An archived contact matching those details already exists with id=123456

The ID that is provided in the error message is actually the user’s Intercom ID.

 

But to be able to update that user, you will need to first unarchive them.

 

For example:

 

1- I am trying to create a user with external_id: 393939 and getting the error below.

 

 

2- If I try to update the archived user directly, I am getting user not found error. This is an expected behaviour as the user is archived currently.

3- This is why, first, I would need to unarchive the user like the below:

 

4- Now it will be possible to update the user:

 

5- Once the update is done, you can now choose to either archive that user again, or leave it as it is, depending on what you are aiming to achieve.

 

 

Hope this helps! Let me know if you have any follow-up question on this one.


Reply