# Refreshing tokens issue

**URL:** <https://devforum.zoom.us/t/refreshing-tokens-issue/91970>\
**Category:** Authentication\
**Tags:** api\
**Created:** [July 18, 2023, 9:03am UTC](https://devforum.zoom.us/t/refreshing-tokens-issue/91970 "2023-07-18T09:03:16Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![wdev2020](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/wdev2020/32/36515_2.png) [@wdev2020](https://devforum.zoom.us/u/wdev2020)\
**Post date:** [July 18, 2023, 9:03am UTC](https://devforum.zoom.us/t/refreshing-tokens-issue/91970/1 "2023-07-18T09:03:16Z")

</div>

Hi, sometimes, I get a 400 error while refreshing

**“reason”: “Invalid Token!”, “error”: “invalid\_grant”.**

- URL for request is **‘[https://zoom.us//oauth/token](https://zoom.us//oauth/token)’**

The refresh is valid (till Oct 15.2023). Also it cannot be the scopes, because it wouldn’t work at all.

In addition, I expect to see the difference in decoded info from that token. But the only one difference that I saw was **‘tid’: 0**.

Could you please help me to understand why refreshing doesn’t work? What is the problem with the token above?

---

<div class="post-metadata">

**Author:** ![ojus.zoom](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/ojus.zoom/32/734_2.png) [@ojus.zoom](https://devforum.zoom.us/u/ojus.zoom)\
**Post date:** [July 18, 2023, 5:51pm UTC](https://devforum.zoom.us/t/refreshing-tokens-issue/91970/2 "2023-07-18T17:51:13Z")

</div>

Hi @wdev2020 ,

The refresh token although is valid for 90 days, its a one time use token only.  
This means, it will expire after you use it to generate a new access token. You need to replace the old values with the new ones for the access token and refresh token everytime you get a new token

---

<div class="post-metadata">

**Author:** ![wdev2020](https://sea2.discourse-cdn.com/flex016/user_avatar/devforum.zoom.us/wdev2020/32/36515_2.png) [@wdev2020](https://devforum.zoom.us/u/wdev2020)\
**Post date:** [July 19, 2023, 3:13pm UTC](https://devforum.zoom.us/t/refreshing-tokens-issue/91970/3 "2023-07-19T15:13:44Z")

</div>

I have the same flow, and I used to have this theory about why it doesn’t work. But after success refresh, I updated the tokens. And I even try to use the old tokens for refreshing a couple times in Postam and it works even after generated the new pair of tokens.
