---
descriptions:
  workos_connect_token_refresh_token_grant:
    grant_type: Always `"refresh_token"` for this flow.
    refresh_token: |
      The refresh token received from a previous token request.
    scope: >
      A space-separated set of scopes to use for the tokens to be issued by this
      request. Must be a subset of the scopes initially specified in the
      `/oauth2/authorize` request.
reference:
  curl:
    - url: /reference/workos-connect/token/refresh-token-grant
      key: workos_connect_token_refresh_token_grant
      id: workos_connect_token_refresh_token_grant
      title: /oauth2/token
      type: POST
      parameters:
        - key: client_id
          type: string
          description: (workos_connect_token_request.client_id)
        - key: client_secret
          type: string
          description: (workos_connect_token_request.client_secret)
        - key: grant_type
          type: '"refresh_token"'
          description: (workos_connect_token_refresh_token_grant.grant_type)
        - key: refresh_token
          type: string
          description: (workos_connect_token_refresh_token_grant.refresh_token)
        - key: scope
          type: string
          optional: true
          description: (workos_connect_token_refresh_token_grant.scope)
      returns:
        - key: anonymous
          type: object
          unwrap: true
          properties:
            - key: access_token
              type: string
              description: (workos_connect_token_response.access_token)
            - key: expires_in
              type: integer
              description: (workos_connect_token_response.expires_in)
            - key: id_token
              type: string
              description: (workos_connect_token_response.id_token)
            - key: refresh_token
              type: string
              optional: true
              description: (workos_connect_token_response.refresh_token)
            - key: token_type
              type: '"bearer"'
              description: (workos_connect_token_response.token_type)
originalPath: >-
  .tmp-workos-clone/packages/docs/content/reference/workos-connect/token/refresh-token-grant.mdx
---

### Refresh token grant

Used by WorkOS Connect OAuth Applications to exchange a refresh token for new access tokens and/or ID tokens. The refresh token is provided when the initial `oauth2/authorize` request is made with the `offline_access` scope.

The [access token](/reference/workos-connect/token/authorization-code-grant/access-token) and [ID tokens](/reference/workos-connect/token/authorization-code-grant/id-token) issued here are the same as those issued for the initial `authorization_code` grant.

<CodeBlock referenceId="workos_connect_token_refresh_token_grant">
  <CodeBlockTab title="Request" file="token-refresh-token-grant-request" />
  <CodeBlockTab title="Response" file="token-refresh-token-grant-response" />
</CodeBlock>
