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
| Parameter | Type | Description |
|---|---|---|
config | OpenCloudConfig | Configuration 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
| Parameter | Type | Description |
|---|---|---|
auth | AuthConfig | Authentication 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");