Skip to main content

Overview

Organizations let teams share credits, enforce policies, and manage access. Every member inherits org-level settings while keeping their own personal workspace and preferences.

Creating an organization

Create an org from the dashboard at Settings > Organization > Create, or via the API:
curl -X POST https://api.a21e.com/v1/orgs \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Acme Engineering"}'
{
  "id": "org_abc123",
  "name": "Acme Engineering",
  "slug": "acme-engineering"
}
The creator is automatically assigned the admin role. A slug is generated from the name for URL-friendly references.
Organization creation via API is restricted to web app sessions — API keys cannot create organizations.

Roles

RolePermissions
AdminFull access: manage members, set policies, view audit log, delete org
MemberUse org credit pool, inherit org preferences and memories

Managing members

Invite a member

Admins can invite members by email:
curl -X POST https://api.a21e.com/v1/orgs/{orgId}/admin/members/invite \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"email": "engineer@acme.com", "role": "member"}'
The role field defaults to member if omitted.

List members

curl https://api.a21e.com/v1/orgs/{orgId}/admin/members \
  -H "Authorization: Bearer YOUR_API_KEY"

List your organizations

curl https://api.a21e.com/v1/orgs \
  -H "Authorization: Bearer YOUR_API_KEY"
Returns all organizations you belong to, including your role in each.

Org policies

Admins can set enforced preferences that override member personal settings:
PolicyEffect
model_tier: economyPrevents members from using standard/premium models
risk_tolerance: lowForces conservative outputs for all members
auto_execute: falseRequires manual review before execution
Enforced policies cannot be overridden by individual members or per-request parameters. They take the highest precedence in the context pack assembly hierarchy.

Shared memories

Memories scoped to org are visible to all organization members. Use them for:
  • Team coding conventions (“We use kebab-case for URL paths”)
  • Architecture decisions (“Our API uses Fastify, not Express”)
  • Project context (“The billing service is in apps/billing”)
Org memories are injected into every request made by any member, alongside their personal and workspace-level memories.

Organization credits

Each org has its own credit pool with subscription_balance and addon_balance, separate from member personal balances. When a member’s personal credits are exhausted, org credits are used (if allowed by policy). See Credits & Billing for details.

Admin dashboard

The org admin dashboard provides a summary view and audit trail:
# Dashboard summary
curl https://api.a21e.com/v1/orgs/{orgId}/admin \
  -H "Authorization: Bearer YOUR_API_KEY"

# Audit log (filterable by date range and event type)
curl "https://api.a21e.com/v1/orgs/{orgId}/admin/audit-log?start_at=2026-01-01&limit=100" \
  -H "Authorization: Bearer YOUR_API_KEY"

Deleting an organization

Only admins can delete an organization:
curl -X DELETE https://api.a21e.com/v1/orgs/{orgId} \
  -H "Authorization: Bearer YOUR_API_KEY"
Deleting an organization removes all members, shared memories, and credit balances. This action cannot be undone.