---
title: "Refresh an ID token"
method: POST
path: "/auth"
---

# Refresh an ID token

`POST /auth`

## Request

- Base URL: `https://laso.finance`
- URL: `https://laso.finance/auth`
- Auth: none required

Exchange a refresh token for a new ID token. This is a free endpoint — no x402 payment required. Uses the standard OAuth2 `grant_type=refresh_token` pattern.

## Request body

- object
  - `grant_type` 'refresh_token', required: Must be "refresh_token"
  - `refresh_token` string, required: The refresh token received from a previous /auth or /get-card call

## Response `200`

Refreshed auth credentials and user ID

- object
  - `id_token` string: New ID token — use as Bearer token for Laso Finance APIs
  - `refresh_token` string: New refresh token — use for the next refresh
  - `expires_in` string: Token lifetime in seconds
  - `user_id` string: The user's ID (lowercase wallet address)

## Other responses

- `400`: Invalid or missing grant_type or refresh_token
- `401`: Token is invalid or revoked

---

[API](https://skmtc.dev/laso/apis/laso-finance-x402-api.md) · [All operations](https://skmtc.dev/laso/apis/laso-finance-x402-api/llms.txt) · [OpenAPI document](https://skmtc.dev/laso/apis/laso-finance-x402-api/revisions/e83fa3f023fa?raw)
