---
title: "POST /refresh"
method: POST
path: "/refresh"
tags: ["auth"]
---

# POST /refresh

`POST /refresh`

## Request

- Base URL: `https://headless.dataddo.com/customer-api/v1`
- URL: `https://headless.dataddo.com/customer-api/v1/refresh`
- Auth: none required

Exchanges a Dataddo refresh JWT for a new token pair. The refresh cookie takes precedence over the JSON body; no access token is required.

## Request body

- PostRefreshInput
  - `refresh_token` string

## Response `200`

New Dataddo token pair. Replace both tokens.

- AuthResource
  - `access_token` string
  - `refresh_token` string: Dataddo refresh JWT with token type rt+jwt.
  - `provider` 'cognito' | 'google' | 'okta' | 'active_directory_public' | 'entra_id_saml' | 'keycloak' | 'one_login_saml' | 'okta_saml'
  - `realm_id` integer
  - `expires_in` integer

## Other responses

- `401`: Invalid, expired, revoked, or reused refresh token. Sign in again.
- `503`: Refresh is already in progress or temporarily unavailable.

---

[API](https://skmtc.dev/dataddo/apis/dataddo-headless-beta-api.md) · [All operations](https://skmtc.dev/dataddo/apis/dataddo-headless-beta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dataddo/apis/dataddo-headless-beta-api/revisions/dcfa2345bd10?raw)
