Refresh expired bearer token automatically
I am working with Webhooks in Zendesk (Admin centre > Apps and Integrations > Webhooks), where I am sending trigger updates to the Webhook endpoint. These Webhook endpoints are authenticated through a Bearer token and the bearer token is valid for 30 minutes alone. After 30 minutes, I will have to generate a new token from the client application and apply it in the Zendesk Webhooks section.
In applications like ServiceNow, it is possible to regenerate access tokens through 'Refresh Token' automatically once it is expired. Is there any similar option that exists in Zendesk? If not, any plan to implement it in future?
Hi there, thanks for writing in!
We don't see in our docs that the bearer token (Webhook security and authentication) for webhook will expire. However, have you tried checking your API limits and your webhook activity log wherein from there your webhook logging can be captured?
Otherwise, we recommend you create a conversation with us so we can investigate it further. Thank you!
Thanks for your response. My webhook is from ServiceNow, triggers created in Zendesk are updated to ServiceNow through the Webhook endpoint set in the Zendesk page.
For authenticating the ServiceNow Webhook endpoint in Zendesk, we use the bearer token and this is valid only for 30min. For security purpose, ServiceNow cannot generate a never-expiring token but they will share a 'Refresh Token' (with client_id, client_secret info) which can be used to generate access tokens any number of times.
Now, in Zendesk there is no option to enter refresh_token, client_id, client_secret to generate access tokens automatically when it expires. Or do we have such an option in Zendesk?
Thanks for your help!
As we checked, it looks like we don't have that option in Zendesk. Even the native OAuth feature doesn't use refresh tokens. And the access token doesn't expire. You may also revisit the webhook authentication here - Webhook security and authentication .
Hi Aravindaraj J,
Authentication seems to be a hassle to work with across various systems and platforms.
Allow me to suggest a solution that not only resolves the authentication issues, but also provides a host of additional features to make integrating ZenDesk and ServiceNow much easier and feature rich.
Exalate is a fully decentralised integration solution that will allow you to integrate ZenDesk with ServiceNow without the need for direct authentication as Exalate on ZenDesk will communicate to Exalate on ServiceNow it allows you to have full control on the info/data send and how this info/data is received and displayed. Plus allowing for data manipulation and setting up control flow.
Have a look and let me know if it fits you needs.
I am trying to create a webhook with bearertoken, but it is not working, The same wehbook with basic authentication is working properly, but if i switch to bearer token, then it gives 401 error
"error_description": "The access token provided is expired, revoked, malformed or invalid for other reasons."
I tried adding the token in all the possible format:
what am i doing wrong
Hey Amit Chinchane! Based on the token example you provided, it appears that you are using an API token, not a bearer token. Bearer tokens are opaque strings, and they're the predominant type of access token used with OAuth 2.0. You can find more information in our Developer Docs for the available Webhook Authentication methods.
Please sign in to leave a comment.