Hello, I am trying to connect to Freshdesk using Webhook ‘get’ - just a simple list of details about a specific ticket to start with. There are a couple of questions on here already about Freshdesk, but they have conflicting information, and neither approach that they suggest seems to work for me. Using an API key for authorisation, I consistently get the message, ‘You have to be logged in to perform this action’.
This screenshot shows how I have it set up, (I think) according to the Freshdesk API documentation. Has anyone managed to get this connection to work recently? Where am I going wrong?
Page 1 / 1
I’m not familiar with Freshdesk specifically, and have not yet reviewed the API docs, but if you’re confident all the information is correct, Zapier expects a bar/pipe ( | ) instead of a colon ( : ) between the username and password in the Basic Auth line. Assuming everything else is correct, I imagine that small adjustment should fix it for you.
Hello Todd, thanks for the suggestion. When I try that (with everything else the same), I get ‘The app returned "Unexpected/invalid field in request".’
@Andy N Hmmm…are you certain you entered the correct ticket ID? Try https://{your_domain}.freshdesk.com/api/v2/tickets and (if it runs successfully), confirm that the ticket in question displays the same ID you entered in your original web hook (4332).
Hello Todd, I am pretty sure we have a ticket #4332, but I tried your suggestion. With the pipe symbol in the authorisation field, I still get ‘The app returned "Unexpected/invalid field in request"’, and with the colon, "You have to be logged in to perform this action”. It feels like there is a problem with the way the authorisation is being passed, but having tried multiple variations, I get no further forward.
Hi @Andy N
Just out of curiosity, why dont you use the Action “Find Ticket by Id in Freshdesk” ?
Good question :-)
I don’t actually want to read the ticket details - I was just using that as the simplest thing I could possibly do to prove I could get a connection. I actually want to update a custom field in an existing ticket - this isn't available through Zapier.
Ah ok, that makes sense !
Ok so from what I see you are trying to use Basic Auth, while you should pass it in the Headers as Authorization. I would remove the data in the Basic Auth field and try that.
Note: If you are sure that your credentials are correct, but are still unable to access your helpdesk, make sure that the "APIkey:X" is Base64-encoded before passing it as an "Authorization" header.
Thanks - I removed the basic auth and added a new header name: Authorization, value: (‘My API key:X’ converted to Base 64). A different error… maybe progress. The app returned "Unexpected/invalid field in request".
Just to be clear, the value would be the API after converting it to Base64
So slkgjlkjfg54654:X would become c2xrZ2psa2pmZzU0NjU0Olg= , this value will probably be between quotation marks, so “c2xrZ2psa2pmZzU0NjU0Olg=” (I would try it both ways)
I got the same value as you with my base 64 converter, so that process is right. I tried it with and without double quotes - still the same. This is how it looked as it processed the request:
Hello, good news. Using the suggestions given by others, plus some trial and error on my own part, I have established how to set up Zapier to connect properly with the Freshdesk API.
In Zapier:
Send as JSON needs to be No. Basic Auth needs to be blank. Add a header called Authorization. The value for this will be the yourAPIkey:X encoded into base 64 (it does not need to be enclosed in quotes).
Glad you were able to do it @Andy N , I actually typed the reply to set the JSON to No but seems I forgot to click Send Sorry about that.