Best answer

Webhook Get to Freshdesk

  • 25 November 2022
  • 12 replies
  • 190 views

Userlevel 1
Badge

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?

 

 

icon

Best answer by Andy N 29 November 2022, 14:28

View original

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

12 replies

Userlevel 6
Badge +8

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.

Userlevel 1
Badge

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".’

Userlevel 6
Badge +8

@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).

 

Userlevel 1
Badge

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.

Userlevel 7
Badge +8

Hi @Andy N 

 

Just out of curiosity, why dont you use the Action “Find Ticket by Id in Freshdesk” ? 

Userlevel 1
Badge

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.

Userlevel 7
Badge +8

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.

Userlevel 1
Badge

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".

Userlevel 7
Badge +8

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)

Userlevel 1
Badge

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:

 

Userlevel 1
Badge

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).

Userlevel 7
Badge +8

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.