Organizations
Organizations provide multi-workspace management in Zeotap. An organization groups multiple workspaces under a single administrative umbrella, enabling centralized member management, consistent governance policies, and cross-workspace visibility.
What Is an Organization?
An organization is a container for one or more Zeotap workspaces. While each workspace operates independently with its own warehouses, models, syncs, and governance settings, the organization provides a shared layer for:
- Centralized member management — Invite and manage members at the org level, then grant them access to specific workspaces
- Cross-workspace visibility — View member activity and resource usage across all workspaces from a single admin panel
- Consistent identity — Members sign in once and access all workspaces they’re authorized for, without separate accounts
When to Use Organizations
Organizations are useful when:
- Your company has separate workspaces for different teams, regions, or environments (e.g., “Production”, “Staging”, “EMEA”, “US”)
- You need a single admin to manage members across multiple workspaces
- You want to enforce consistent governance policies across workspaces
- You need cross-workspace reporting or auditing
If you only have a single workspace, you can manage members and governance directly at the workspace level without creating an organization.
Creating an Organization
Via the UI
- Navigate to Settings > Organization in the top-level navigation
- Click Create Organization
- Enter the organization details:
| Field | Description | Example |
|---|---|---|
| Name | Organization display name | ”Acme Corp” |
| Slug | URL-friendly identifier (auto-generated from name) | acme-corp |
- Click Create
The workspace you created the organization from becomes the first linked workspace. Your account is automatically assigned the Owner role at the organization level.
Via the API
curl -X POST "$API_BASE_URL/api/v1/organizations" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Acme Corp"
}'Linking Workspaces
After creating an organization, you can link additional workspaces to it.
Adding a Workspace
- Navigate to Organization > Workspaces
- Click Link Workspace
- Select an existing workspace from the list, or create a new one
- Click Link
Only organization Owners and Admins can link workspaces. The workspace must not already belong to another organization.
Removing a Workspace
- Navigate to Organization > Workspaces
- Click the menu icon next to the workspace
- Click Unlink
- Confirm the action
Unlinking a workspace does not delete it or its data. The workspace continues to operate independently, but org-level members lose access unless they also have direct workspace membership.
Organization Roles
Organizations have their own role hierarchy, separate from workspace roles:
| Role | Description | Capabilities |
|---|---|---|
| Owner | Full control over the organization | Create/delete workspaces, manage all members, transfer ownership, manage billing, all Admin capabilities |
| Admin | Administrative access across the organization | Invite/remove members, assign roles, link/unlink workspaces, view audit logs, all Member capabilities |
| Member | Basic access to assigned workspaces | Access workspaces they’ve been granted access to, view organization directory |
Organization Role vs. Workspace Role
A member’s organization role and workspace role are independent:
- Organization role controls what the member can do at the organization level (manage members, link workspaces)
- Workspace role controls what the member can do within a specific workspace (create warehouses, manage syncs)
A member can be an org-level Admin but a workspace-level Member — they can manage org membership but have limited permissions within individual workspaces.
Example:
| Member | Org Role | Workspace A Role | Workspace B Role |
|---|---|---|---|
| Alice | Owner | Owner | Owner |
| Bob | Admin | Admin | Member |
| Carol | Member | — (no access) | Admin |
| Dave | Member | Member | Member |
Centralized Member Management
Inviting Members
Organization Owners and Admins can invite members at the org level:
- Navigate to Organization > Members
- Click Invite Member
- Enter the member’s email address
- Select their organization role (Owner, Admin, or Member)
- Select which workspaces they should have access to, and their role in each
- Click Send Invite
The member receives an email invitation. Once accepted, they gain access to the organization and the specified workspaces.
Via the API
The invite carries the organization-level role only:
curl -X POST "$API_BASE_URL/api/v1/organizations/$ORG_ID/members/invite" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "newmember@acmecorp.com",
"role": "member"
}'Workspace access is granted separately, one workspace at a time, once the member’s account exists. role_id is the ID of a role in that workspace:
curl -X POST "$API_BASE_URL/api/v1/organizations/$ORG_ID/workspaces/$WORKSPACE_ID/members" \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"account_id": "770e8400-e29b-41d4-a716-446655440000",
"role_id": "660e8400-e29b-41d4-a716-446655440000"
}'Managing Existing Members
From the organization member list, you can:
- Change org role — Promote or demote a member’s organization-level role
- Modify workspace access — Add or remove workspace access, change workspace roles
- Remove from organization — Remove the member from the organization and all linked workspaces
- View activity — See the member’s recent activity across all workspaces
Member Directory
The organization member directory provides a unified view of all members:
| Column | Description |
|---|---|
| Name | Member’s display name |
| Member’s email address | |
| Org Role | Organization-level role |
| Workspaces | Number of workspaces the member has access to |
| Last Active | When the member last performed an action in any workspace |
| Joined | When the member joined the organization |
Cross-Workspace Visibility
Organization admins can view aggregated data across all workspaces:
Usage Dashboard
- Total warehouses, models, syncs, and destinations across all workspaces
- Active member count per workspace
- Sync run volume and success rates per workspace
- Data volume processed per workspace
Audit Log
A consolidated audit log showing member actions across all workspaces:
- Resource creation, modification, and deletion
- Member access changes
- Governance rule changes
- Sync executions and failures
Filter the audit log by workspace, member, action type, or date range.
Billing
If your Zeotap plan includes organization-level billing:
- All workspaces under the organization share a single billing account
- Usage is aggregated across workspaces for plan limits
- The organization Owner manages billing settings and payment methods
Deleting an Organization
Only the organization Owner can delete an organization:
- Navigate to Organization > Settings
- Click Delete Organization
- Confirm the action
Deleting an organization unlinks all workspaces but does not delete them. Workspaces continue to operate independently. Members retain their workspace-level access but lose org-level membership.
API Reference
Organizations sit above workspaces, so their paths are keyed by {orgId} and do not carry a workspace segment. See Base URL for your instance’s API base URL and Authentication for the required Authorization header.
# List the organizations you belong to
GET /api/v1/organizations
# Create an organization
POST /api/v1/organizations
# Get organization details
GET /api/v1/organizations/{orgId}
# Update organization
PUT /api/v1/organizations/{orgId}
# Delete organization
DELETE /api/v1/organizations/{orgId}
# List organization workspaces
GET /api/v1/organizations/{orgId}/workspaces
# Create a new workspace inside the organization
POST /api/v1/organizations/{orgId}/workspaces
# Grant an organization member access to one of its workspaces
POST /api/v1/organizations/{orgId}/workspaces/{workspaceId}/members
# List organization members
GET /api/v1/organizations/{orgId}/members
# Invite a member
POST /api/v1/organizations/{orgId}/members/invite
# Update member role
PUT /api/v1/organizations/{orgId}/members/{accountId}/role
# Remove a member
DELETE /api/v1/organizations/{orgId}/members/{accountId}
# Pending organization invitations
GET /api/v1/organizations/{orgId}/invites
POST /api/v1/organizations/{orgId}/invites/{inviteId}/accept
POST /api/v1/organizations/{orgId}/invites/{inviteId}/resend
DELETE /api/v1/organizations/{orgId}/invites/{inviteId}Linking an existing workspace to an organization, and unlinking one, are available in the UI only — there is no API for either. POST /api/v1/organizations/{orgId}/workspaces creates a new workspace already inside the organization rather than attaching one that exists.
Next Steps
- Set up RBAC within each workspace
- Create groups for team-based permission management
- Define access policies for workspace-level data access control
- Manage workspace members within individual workspaces