Organizations
Organizations are the top-level container on Dreadnode. Everything — users, workspaces, projects, credits, and billing — is scoped to an organization.
What an organization is
Section titled “What an organization is”An organization represents a team, company, or group that shares access to the platform. Each organization has:
- A unique
key(URL slug) used in API paths and URLs - A display
name - A member list with role-based access
- Workspaces that contain projects
Membership and roles
Section titled “Membership and roles”Users are added to an organization as members. Each member has a role that determines their permissions:
| Role | What they can do |
|---|---|
| Owner | Full access — manage members, workspaces, billing, keys |
| Contributor | Create and manage workspaces and projects |
| Reader | View workspaces, projects, and traces |
Invitations
Section titled “Invitations”Organization owners can invite users by email. Invitations have an expiration window and can be accepted or rejected by the recipient. External invites can be toggled on or off per organization.
Organization invitations and member management (role updates, removals) are available on all plans and require the Owner role.
Organization limits
Section titled “Organization limits”Each organization has a configurable maximum member count (default: 500). Platform administrators can adjust this limit.
Managing organizations
Section titled “Managing organizations”- API: Organization details are available at
GET /api/v1/org/{org}. - Display name: Update the organization display name with
PATCH /api/v1/org/{org}(owner role required). - Members: List members with
GET /api/v1/org/{org}/members. Update roles withPUT /api/v1/org/{org}/members/{user_id}and remove members withDELETE /api/v1/org/{org}/members/{user_id}(returnsuser_deletedwhen removing the final org membership). - Teams: List teams with
GET /api/v1/org/{org}/teams. - Workspaces: Listed at
GET /api/v1/org/{org}/ws. - Platform admin: Update plan type with
PUT /api/v1/admin/org/{org}/plan. - Platform admin: Manage owners with
GET /api/v1/admin/org/{org}/owners,PUT /api/v1/admin/org/{org}/owners, andDELETE /api/v1/admin/org/{org}/owners/{user_id}. - Platform admin: Search users with
GET /api/v1/admin/users/search?q=<query>&limit=<n>.
Availability checks
Section titled “Availability checks”For onboarding flows, you can validate usernames and organization keys in real time:
-
Organization keys only need to be unique among other organization keys (they can overlap with usernames).
-
GET /api/v1/user/check-availability?username=<name> -
GET /api/v1/user/check-availability?org_key=<key> -
GET /api/v1/user/check-availability?username=<name>&org_key=<key>
Once the user submits onboarding, complete the setup with:
POST /api/v1/user/onboarding— acceptsusernameand optionalorg_name
Explore pages
Section titled “Explore pages”The org sidebar includes an Explore section for org-scoped package types:
- Environments for reusable execution environments
- Capabilities for published agent/tool packages
- Datasets for versioned dataset artifacts
- Model Storage for versioned model artifacts
These pages are scoped to the active organization URL and show the versions currently published into that org.
Relationship to other concepts
Section titled “Relationship to other concepts”Organization ├── Members (users with roles) ├── Invitations (pending) ├── Workspaces │ ├── Projects │ │ ├── Sessions │ │ └── Traces │ └── Permissions (user + team) ├── Sandboxes (org-scoped) └── Credits (SaaS mode)