Skip to content
GitHub

Rotate an access token

The Rotate Access Token API lets you request a new access token from the authorization server. The new token replaces the existing token and has the same rights and properties. If, for example, an access token expires, a client can request the token be rotated.

All access tokens in Open Payments have a 10-minute lifespan by default. This includes new access tokens issued because of a rotate request.

The code snippets below let an authorized client call a management endpoint to rotate a specified access token.

We recommend creating a wallet account on the test wallet. Creating an account allows you to test your client against the Open Payments APIs by using an ILP-enabled wallet funded with play money.

Authenticated client required
Prerequisites
Initial configuration

If you’re using JavaScript, only do the first step.

  1. Add "type": "module" to package.json.

  2. Add the following to tsconfig.json

    {
    "compilerOptions": {
    "target": "ES2022",
    "module": "ES2022"
    }
    }
// Import dependencies
import { createAuthenticatedClient } from '@interledger/open-payments'
// Initialize client
const client = await createAuthenticatedClient({
walletAddressUrl: WALLET_ADDRESS,
privateKey: PRIVATE_KEY_PATH,
keyId: KEY_ID
})
// Rotate token
const token = await client.token.rotate({
url: MANAGE_URL,
accessToken: ACCESS_TOKEN
})
// Output
console.log('ACCESS_TOKEN =', token.access_token.value)
console.log('MANAGE_URL =', token.access_token.manage)

For TypeScript, run tsx path/to/directory/index.ts. View full TS source

For JavaScript, run node path/to/directory/index.js. View full JS source