Overview
Organizations are the top-level entities in Obeya Cloud. Each API token is scoped to a single organization identified by the subdomain.
Get Organization
Retrieve the current organization’s details.
GET /api/trpc/organizations.get
Response:
{
"result": {
"data": {
"json": {
"id": "org_01HXK5QJBN3YZXM8KJP2RSNV4C",
"name": "Acme Corp",
"slug": "acme",
"logo": "https://acme.obeya.cloud/storage/logo.svg",
"timezone": "America/New_York",
"dateFormat": "MM/DD/YYYY",
"weekStart": "monday",
"language": "en",
"plan": "business",
"createdAt": "2026-01-15T10:00:00.000Z",
"updatedAt": "2026-03-19T14:30:00.000Z"
}
}
}
}
Update Organization
Update organization settings. Requires Admin or Owner role.
POST /api/trpc/organizations.update
Request:
{
"json": {
"name": "Acme Corporation",
"timezone": "Europe/London",
"dateFormat": "DD/MM/YYYY",
"weekStart": "monday",
"language": "en"
}
}
Response:
{
"result": {
"data": {
"json": {
"id": "org_01HXK5QJBN3YZXM8KJP2RSNV4C",
"name": "Acme Corporation",
"slug": "acme",
"timezone": "Europe/London",
"dateFormat": "DD/MM/YYYY",
"weekStart": "monday",
"language": "en",
"updatedAt": "2026-03-19T15:00:00.000Z"
}
}
}
}
List Members
List all members of the organization.
GET /api/trpc/organizations.members.list
Input Parameters:
| Parameter | Type | Required | Description |
|---|
cursor | string | No | Pagination cursor |
limit | number | No | Results per page (default: 50, max: 200) |
search | string | No | Search by name or email |
role | string | No | Filter by role: owner, admin, member, guest |
status | string | No | Filter by status: active, pending, deactivated |
Response:
{
"result": {
"data": {
"json": {
"members": [
{
"id": "usr_01HXK5...",
"name": "Alice Johnson",
"email": "alice@company.com",
"avatar": "https://...",
"role": "admin",
"status": "active",
"joinedAt": "2026-01-15T10:00:00.000Z",
"lastActiveAt": "2026-03-19T14:30:00.000Z"
}
],
"nextCursor": "usr_01HXK6..."
}
}
}
}
Invite Member
Invite a new member to the organization. Requires Admin role.
POST /api/trpc/organizations.members.invite
Request:
{
"json": {
"email": "bob@company.com",
"role": "member",
"workspaceIds": ["wsp_01HXK5..."]
}
}
Response:
{
"result": {
"data": {
"json": {
"invitationId": "inv_01HXK5...",
"email": "bob@company.com",
"role": "member",
"status": "pending",
"expiresAt": "2026-03-26T14:30:00.000Z"
}
}
}
}
Remove Member
Remove a member from the organization. Requires Admin role.
POST /api/trpc/organizations.members.remove
Request:
{
"json": {
"userId": "usr_01HXK5...",
"reassignTo": "usr_01HXK6..."
}
}
The reassignTo parameter is optional. If provided, all items assigned to the removed member will be reassigned to the specified user.
Update Member Role
Change a member’s role. Requires Admin role. Cannot change the Owner’s role.
POST /api/trpc/organizations.members.updateRole
Request:
{
"json": {
"userId": "usr_01HXK5...",
"role": "admin"
}
}
Only the organization Owner can promote a member to Admin. Admins can only set roles to Member or Guest.