---
title: "Refresh Session Endpoint"
method: POST
path: "/api/auth/session/refresh"
tags: ["auth"]
---

# Refresh Session Endpoint

`POST /api/auth/session/refresh`

## Request

- Base URL: `https://api.zugabot.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.zugabot.ai/api/auth/session/refresh`
- Auth: none declared

Rotate a SuperTokens session using a desktop-held refresh token.

Used by native clients (ZugaClaw, ZugaGamer) that have no cookie jar.
Web clients don't hit this — their refresh flows through SuperTokens'
cookie-based endpoint.

Refresh tokens ROTATE on every successful call: the returned
refresh_token REPLACES the one sent. Clients must persist the new pair.
On 401, the client should clear stored tokens and prompt re-login.

## Request body

- RefreshRequest
  - `refresh_token` string, required

## Response `200`

Successful Response

- RefreshResponse
  - `token` string, required
  - `refresh_token` string, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/zugabot/apis/spiritus.md) · [All operations](https://skmtc.dev/zugabot/apis/spiritus/llms.txt) · [OpenAPI document](https://skmtc.dev/zugabot/apis/spiritus/revisions/f20ef4524415?raw)
