Node.js & Bun
Connect JavaScript apps to Rivet Actors.
Getting Started
See the backend quickstart guide for getting started.
Minimal Client
Stateless vs Stateful
Getting Actors
Connection Parameters
Subscribing to Events
Connection Lifecycle
Low-Level HTTP & WebSocket
For actors that implement onRequest or onWebSocket, call them directly:
Calling from Backend
Error Handling
Concepts
Keys
Keys uniquely identify actor instances. Use compound keys (arrays) for hierarchical addressing:
Don’t build keys with string interpolation like "org:${userId}" when userId contains user data. Use arrays instead to prevent key injection attacks.
Environment Variables
createClient() automatically reads:
RIVET_ENDPOINT(endpoint)RIVET_NAMESPACERIVET_TOKENRIVET_RUNNER
Defaults to window.location.origin + "/api/rivet" in the browser or http://127.0.0.1:6420 on the server when unset.
Endpoint Format
Endpoints support URL auth syntax:
You can also pass the endpoint without auth and provide RIVET_NAMESPACE and RIVET_TOKEN separately. For serverless deployments, use your app’s /api/rivet URL. See Endpoints for details.
API Reference
Package: rivetkit
See the RivetKit client overview.
createClient- Create a clientcreateEngineDriver- Engine driverDriverConfig- Driver configurationClient- Client type