> ## Documentation Index
> Fetch the complete documentation index at: https://docs.a21e.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Organizations

> Team management, shared credits, and org-level policies.

## 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:

```bash theme={null}
curl -X POST https://api.a21e.com/v1/orgs \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name": "Acme Engineering"}'
```

```json theme={null}
{
  "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.

<Note>
  Organization creation via API is restricted to web app sessions — API keys cannot create organizations.
</Note>

## Roles

| Role       | Permissions                                                           |
| ---------- | --------------------------------------------------------------------- |
| **Admin**  | Full access: manage members, set policies, view audit log, delete org |
| **Member** | Use org credit pool, inherit org preferences and memories             |

## Managing members

### Invite a member

Admins can invite members by email:

```bash theme={null}
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

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

### List your organizations

```bash theme={null}
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:

| Policy                | Effect                                              |
| --------------------- | --------------------------------------------------- |
| `model_tier: economy` | Prevents members from using standard/premium models |
| `risk_tolerance: low` | Forces conservative outputs for all members         |
| `auto_execute: false` | Requires 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](/concepts#context-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](/account/credits#organization-credits) for details.

## Admin dashboard

The org admin dashboard provides a summary view and audit trail:

```bash theme={null}
# 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:

```bash theme={null}
curl -X DELETE https://api.a21e.com/v1/orgs/{orgId} \
  -H "Authorization: Bearer YOUR_API_KEY"
```

<Warning>
  Deleting an organization removes all members, shared memories, and credit balances. This action cannot be undone.
</Warning>
