Skip to content

Teams

Teams are the organizational boundary in Catalyzed. All resources (datasets, tables, files, pipelines) belong to a team, and team membership determines access.

  • All resources are team-scoped - When creating any resource, you specify a teamId
  • API tokens are team-scoped - Each token can only access resources within its team
  • Users can belong to multiple teams - Switch between teams in the app
  • Billing is per-team - Credits and usage are tracked at the team level

Teams have two roles:

RolePermissions
AdminFull access: manage members, API tokens, billing, and all resources
MemberCreate and manage datasets, tables, files, and pipelines
CapabilityAdminMember
Create/edit/delete datasetsYesYes
Create/edit/delete tablesYesYes
Upload/process filesYesYes
Create/run pipelinesYesYes
Invite members (as member role)YesYes
Invite members (as admin role)YesNo
Remove other team membersYesNo
Remove self from teamYesYes
Manage API tokensYesNo
View/manage billingYesNo
Change team settingsYesNo

List all teams you belong to:

List your teams

Terminal window
curl https://api.catalyzed.ai/teams \
-H "Authorization: Bearer $API_TOKEN"

Get a specific team

Terminal window
curl https://api.catalyzed.ai/teams/ZkoDMyjZZsXo4VAO_nJLk \
-H "Authorization: Bearer $API_TOKEN"

Response:

{
"teamId": "ZkoDMyjZZsXo4VAO_nJLk",
"name": "Acme Corp",
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-06-20T14:45:00Z"
}

Update team name

Terminal window
curl -X PUT https://api.catalyzed.ai/teams/ZkoDMyjZZsXo4VAO_nJLk \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Acme Corporation"}'

List team members

Terminal window
curl "https://api.catalyzed.ai/team-users?teamIds=ZkoDMyjZZsXo4VAO_nJLk" \
-H "Authorization: Bearer $API_TOKEN"

Response:

{
"teamUsers": [
{
"teamUserId": "_XCbBISoxk-YQsdUuga_J",
"teamId": "ZkoDMyjZZsXo4VAO_nJLk",
"userId": "jN7sm6VXUbKa3Sy_07-Fz",
"role": "admin",
"isDefault": true,
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
],
"total": 1,
"page": 1,
"pageSize": 20
}

Change a member’s role (Admin only):

Update member role

Terminal window
curl -X PUT https://api.catalyzed.ai/team-users/_XCbBISoxk-YQsdUuga_J \
-H "Authorization: Bearer $API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"role": "admin"}'

Remove team member

Terminal window
curl -X DELETE https://api.catalyzed.ai/team-users/_XCbBISoxk-YQsdUuga_J \
-H "Authorization: Bearer $API_TOKEN"

The Catalyzed app provides a Team Settings page with four sections:

  • View and edit team name
  • View team ID (for API use)
  • View creation and last update timestamps
  • View all team members
  • Filter by role
  • Change member roles (Admin only)
  • Remove members (Admin only)
  • View resource usage over time
  • Filter by operation type
  • See which users performed which operations
  • View credit balance
  • See total usage
  • View credit history (purchases, usage deductions)

Teams operate on a credit-based system. Credits are consumed by:

  • Query execution
  • Data storage
  • Pipeline runs
  • File processing

Get credit balance

Terminal window
curl "https://api.catalyzed.ai/teams/ZkoDMyjZZsXo4VAO_nJLk/credits/balance" \
-H "Authorization: Bearer $API_TOKEN"

Response:

{
"teamId": "ZkoDMyjZZsXo4VAO_nJLk",
"balanceNanodollars": 5000000000,
"balanceUsd": 5.00,
"totalCreditsNanodollars": 10000000000,
"totalCreditsUsd": 10.00,
"totalUsageCostNanodollars": 5000000000,
"totalUsageCostUsd": 5.00,
"hasSufficientFunds": true
}

See the Billing & Credits guide for more details.