The current access token
The OAuth client ID of your application
Unix timestamp (ms) when the access token expires
OptionalonTokenRefresh?: (tokens: TokenData) => voidOptional callback when tokens are refreshed - use to persist new tokens
The refresh token for obtaining new access tokens
// In your API route handler (Next.js, Express, etc.)
import { createAudiotoolClient, createServerAuth } from "@audiotool/nexus"
import { createNodeTransport, createDiskWasmLoader } from "@audiotool/nexus/node"
const client = await createAudiotoolClient({
auth: createServerAuth({
accessToken: session.accessToken,
refreshToken: session.refreshToken,
expiresAt: session.expiresAt,
clientId: "your-client-id",
onTokenRefresh: (tokens) => session.save(tokens),
}),
transport: createNodeTransport(),
wasm: createDiskWasmLoader(),
})
Create an auth provider for server-side use with tokens obtained from browser OAuth flow.
Use this when:
audiotool()exportTokens()and sent them to your serverHandles token refresh automatically. Use
onTokenRefreshto persist new tokens.