Authentication provider or PAT string.
Optionaltransport?: TransportFactoryTransport factory for making RPC calls.
createNodeTransport() from @audiotool/nexus/nodeOptionalwasm?: WasmLoaderWASM loader for loading the document validator.
createDiskWasmLoader() from @audiotool/nexus/node// Node.js with server auth (tokens from browser OAuth)
import { createAudiotoolClient, createServerAuth } from "@audiotool/nexus"
import { createNodeTransport, createDiskWasmLoader } from "@audiotool/nexus/node"
const client = await createAudiotoolClient({
auth: createServerAuth({ accessToken, refreshToken, expiresAt, clientId }),
transport: createNodeTransport(),
wasm: createDiskWasmLoader(),
})
// List projects (flat API)
const projects = await client.projects.listProjects({})
// Open a project for editing
const doc = await client.open(projects.projects[0].name)
await doc.start()
audiotool for browser apps with OAuth
Create an Audiotool client with explicit auth and transport configuration.
Use this for Node.js scripts, server-side code, or when you need manual control over authentication and transport.
For browser apps with OAuth, use
audiotool()instead - it's simpler and handles the OAuth flow automatically.