Skip to content

Class: OpenCloud

Defined in: src/index.ts:48

Main entry point for the Roblox Open Cloud SDK. Provides access to all Roblox Open Cloud API resources.

Example

typescript
// Traditional usage with API key
const client = new OpenCloud({
  apiKey: 'your-api-key-here'
});
const user = await client.users.get('123456789');
console.log(user.displayName);

// Multi-tenant usage with per-request OAuth2
const client = new OpenCloud(); // No default auth
const userClient = client.withAuth({
  kind: "oauth2",
  accessToken: "user-token"
});
const groups = await userClient.groups.listMemberships("123456");

Constructors

Constructor

ts
new OpenCloud(config): OpenCloud;

Defined in: src/index.ts:59

Creates a new OpenCloud SDK client instance.

Parameters

ParameterTypeDescription
configOpenCloudConfigConfiguration options for the client

Returns

OpenCloud

Properties

groups

ts
groups: Groups;

Defined in: src/index.ts:49


universes

ts
universes: Universes;

Defined in: src/index.ts:50


users

ts
users: Users;

Defined in: src/index.ts:51

Methods

withAuth()

ts
withAuth(auth): OpenCloud;

Defined in: src/index.ts:113

Creates a scoped client instance with per-request authentication. This allows reusing a single client while providing different credentials for each request.

Parameters

ParameterTypeDescription
authAuthConfigAuthentication configuration to use for this scope

Returns

OpenCloud

A new scoped OpenCloud instance with the provided auth

Example

typescript
const client = new OpenCloud(); // No default auth

// OAuth2 authentication
const userClient = client.withAuth({
  kind: "oauth2",
  accessToken: "user-token-here"
});
const groups = await userClient.groups.listMemberships("123456");

// API key authentication
const adminClient = client.withAuth({
  kind: "apiKey",
  apiKey: "admin-key-here"
});
const user = await adminClient.users.get("789");