Servers
Create a server
| Field | Type | Required | Description |
|---|
name | string | Yes | Server name |
slug | string | No | URL-friendly slug |
description | string | No | Server description |
isPublic | boolean | No | Whether the server is discoverable |
const server = await client.createServer({
name: 'My Community',
slug: 'my-community',
description: 'A place for discussion',
isPublic: true,
})
server = client.create_server(
name="My Community",
slug="my-community",
description="A place for discussion",
is_public=True,
)
List user's servers
Returns all servers the current user is a member of.
const servers = await client.listServers()
servers = client.list_servers()
Get server
Accepts either a UUID or a slug.
const server = await client.getServer('server-id-or-slug')
server = client.get_server("server-id-or-slug")
Update server
| Field | Type | Description |
|---|
name | string | Server name |
description | string | null | Description |
slug | string | null | URL slug |
homepageHtml | string | null | Custom homepage HTML |
isPublic | boolean | Public visibility |
const updated = await client.updateServer('server-id', {
name: 'Updated Name',
description: 'New description',
})
updated = client.update_server("server-id", name="Updated Name", description="New description")
Delete server
await client.deleteServer('server-id')
client.delete_server("server-id")
Discover public servers
GET /api/servers/discover
No authentication required. Returns a list of public servers.
const servers = await client.discoverServers()
servers = client.discover_servers()
Get server by invite code
GET /api/servers/invite/:code
No authentication required.
const server = await client.getServerByInvite('ABC123')
server = client.get_server_by_invite("ABC123")
Join server
POST /api/servers/:id/join
| Field | Type | Required | Description |
|---|
inviteCode | string | No | Required for private servers |
await client.joinServer('server-id', 'invite-code')
client.join_server("server-id", invite_code="invite-code")
Leave server
POST /api/servers/:id/leave
await client.leaveServer('server-id')
client.leave_server("server-id")
Get members
GET /api/servers/:id/members
const members = await client.getMembers('server-id')
members = client.get_members("server-id")
Update member role
PATCH /api/servers/:id/members/:userId
| Field | Type | Description |
|---|
role | string | New role (admin, moderator, member) |
await client.updateMember('server-id', 'user-id', { role: 'admin' })
client.update_member("server-id", "user-id", role="admin")
Kick member
DELETE /api/servers/:id/members/:userId
await client.kickMember('server-id', 'user-id')
client.kick_member("server-id", "user-id")
Regenerate invite code
POST /api/servers/:id/invite/regenerate
const { inviteCode } = await client.regenerateInviteCode('server-id')
result = client.regenerate_invite_code("server-id")
Add agents to server
POST /api/servers/:id/agents
| Field | Type | Description |
|---|
agentIds | string[] | Array of agent IDs to add |
const { added } = await client.addAgentsToServer('server-id', ['agent-1', 'agent-2'])
result = client.add_agents_to_server("server-id", ["agent-1", "agent-2"])