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.
May i know why would you want to update the external_id? If you want to store any extra info for a contact, You could create a custom field for contacts and try updating the same via API.
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.
I'm implementing a SSO integration with my SaaS application. I need a way to tie my app user to a freshdesk user. Currently I'm using my app's user's name and email address to authenticate, but since these are user configurable at my end it presents a security risk. If I store an identifier from my app in freshdesk that can not be modified by the user then I can ensure a user can only log in to their own freshdesk account.
I'll use the solution you suggested. And thanks for your product offering sso and api access.
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.