---
title: "Refresh Keel Token"
method: POST
path: "/v1/auth/oauth/refresh"
tags: ["auth-oauth"]
---

# Refresh Keel Token

`POST /v1/auth/oauth/refresh`

## Request

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

Legacy refresh route (shipped keel-trade SDK posts JSON here).

Standards clients use ``grant_type=refresh_token`` at ``/token``;
both delegate to :func:`_do_refresh`. Accepts form + JSON.

## Response `200`

Successful Response

- TokenResponse: OAuth 2.0-style token response (RFC 6749 §5.1).
  - `access_token` string, required
  - `refresh_token` string, required
  - `token_type` 'Bearer'
  - `expires_in` integer, required: Access-token lifetime in seconds.
  - `scope` string, required: Space-separated granted scope: the advertised tier tokens the credential fully covers (`base`, `live`) first, then the resolved credential_scopes (Q-1786).

---

[API](https://skmtc.dev/usekeel/apis/keel-api.md) · [All operations](https://skmtc.dev/usekeel/apis/keel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usekeel/apis/keel-api/revisions/3191ca10b0ab?raw)
