Set user external_id fields
is it possible to update the external_id field on the user (contact) endpoint?
I have tried unsuccessfully to PUT external_id. The response is HTTP200, yet nothing is changed. I successfully changed name for the same user, so that proves I can PUT.
If it is not possible to change the external_id, should the API return an HTTP4xx?
CURL commands attached.
No. It's not possible to update external_id of a contact via API. Hence it is marked as a readonly field in api doc.
As you rightly said, server should return 4xx for client errors. We are actively working on error handling now and we will make sure that this will also be taken care.
Hope my suggestion suits your need. Please revert back if you still have any concerns.
Glad to know that the suggested solution works for you. Let us know in case of any queries.
A follow up question: through the API can I filter users by custom fields? I want to retrieve the freshdesk user associated with my application's user, so it would be good to retrieve only that user rather than the entire list of users.
This is not possible right now, but we will add it as a feature request and send you an update once we decide to move forward with it.
Filtering users by customfield
Unfortunately, I don't have any updates on this API right now. We are in the middle of revamping our search architecture, so once that is complete, we will get started with search APIs.