Docs/Organizations/Organizations & Teams

Organizations & Teams

Organizations are the primary unit of ownership and access control in DepAegis. They group packages, manage members, and enforce security policies across your team.

What Are Organizations?

An organization(often shortened to “org”) is a shared workspace within DepAegis that owns one or more packages. Every package belongs to exactly one organization. Organizations provide:

When you sign up, DepAegis creates a personal namespace for you automatically. You can publish packages there without creating an organization. Organizations become essential once you collaborate with others.

Creating an Organization

  1. Open the DepAegis dashboard and click New Organization in the sidebar.
  2. Enter an organization slug (e.g. my-company). This becomes part of your package namespace.
  3. Choose a display name and optional avatar.
  4. Select a billing plan (free tier available for small teams).
  5. Click Create Organization.
The org slug cannot be renamed after creation because it forms part of every package name published under it. Choose carefully.

Organization Settings

Organization owners and admins can manage settings from the dashboard:

Name & Avatar

Update the display name and avatar at any time from Settings → General. The org slug is immutable.

Billing

View storage usage, bandwidth consumption, and token usage under Settings → Billing. Upgrade or downgrade your plan as needed.

Security Policies

Organization-level policies apply to all packages within the org. Configure vulnerability scan thresholds, license allow-lists, and the dependency firewall from Settings → Security.

See Dependency Firewall for details on org-wide security policies.

Teams

Teams let you group members and assign permissions at scale. Instead of granting access to individual users for each package, you assign packages to teams.

Creating a Team

  1. Navigate to Organization → Teams.
  2. Click New Team.
  3. Enter a team name (e.g. backend, frontend, platform).
  4. Assign an initial set of members.

Managing Team Members

To add or remove members from a team:

  1. Go to Organization → Teams → [Team Name].
  2. Click Add Member and enter the user's email or username.
  3. Choose a role for the member within the team (see below).

Remove a member by clicking the × button next to their name. Removing someone from a team revokes their team-level permissions on all packages assigned to that team.

Removing a user from a team does not remove them from the organization. They may still have direct package-level permissions.

Roles

DepAegis uses a role-based access control (RBAC) model with five built-in roles:

RoleManage Org SettingsManage TeamsPublish PackagesInstall PackagesView Audit Log
OwnerYesYesYesYesYes
AdminYesYesYesYesYes
MaintainerNoNoYesYesYes
DeveloperNoNoNoYesNo
ViewerNoNoNoNoNo
Assign the minimum viable role to each member. Most engineers only need Developer access. Reserve Maintainer and above for CI pipelines and release managers.

Package Permissions

Access to packages is determined by a combination of org-level roles and package-level overrides.

Who Can Publish

Who Can Install

Package-Level Overrides

For finer control, you can restrict a specific package to a subset of teams. Navigate to Package → Settings → Access to change which teams can view or publish a given package.

Namespace Management

DepAegis maps organization slugs directly to package namespaces across all supported ecosystems.

# Scoped package — maps to the "my-org" organization
{
  "name": "@my-org/ui-components",
  "version": "1.0.0"
}

# Install
npm install @my-org/ui-components
# Prefix convention — maps to the "my-org" organization
# Package ID follows the pattern: MyOrg.PackageName
dotnet nuget push MyOrg.UiComponents.1.0.0.nupkg \
  --source https://nuget.app.depaegis.com/api/v1/nuget/v3/index.json

# Install
dotnet add package MyOrg.UiComponents
The namespace is derived from the org slug automatically. You do not need to configure it separately.

Transferring Packages Between Organizations

To move a package from one org to another:

  1. Navigate to Package → Settings → Transfer.
  2. Select the destination organization.
  3. Confirm the transfer.
Namespace changes break existing installs. After transferring @old-org/pkg to @new-org/pkg, all consumers must update their package.json or .csproj references. DepAegis does not redirect old names to new ones.

Audit Log

Every organization maintains an immutable audit log of significant events. Owners and admins can view it from Organization → Audit Log.

Logged Events

Filtering & Export

Filter the audit log by date range, event type, user, or package. Export filtered results as JSON or CSV for compliance reporting.

# Query audit log via API
curl -H "Authorization: Bearer $DEPAEGIS_TOKEN" \
  "https://app.depaegis.com/api/v1/orgs/my-org/audit-log?limit=50&event=package.publish"