Docs/Guides/Organizations & members

Organizations & members

An organization is the top-level container for billing, projects, and team access. Every project and database belongs to exactly one organization.

Roles

Role
ownerFull control, including billing and removing other members. Every organization has at least one — the last owner can't be removed.
adminManage members, projects, and databases.
developerCreate and manage projects/databases, no member management.
billingView and manage billing only.
readonlyRead-only access across the organization.

Inviting members

Inviting an email that already has an Astrabase account adds them immediately. Inviting an email with no account yet creates a pending invite and sends them an email — they create their account through that link and are granted access to the organization automatically, with the role you picked, as soon as they sign up.

curl -X POST https://api.astrabase.app/api/v1/organizations/$ORG_ID/members \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]", "role": "developer"}'

The response's status field tells you which happened: "added" (they already had an account) or "invited" (an email went out). Pending invites can be listed and revoked:

curl https://api.astrabase.app/api/v1/organizations/$ORG_ID/invites -H "Authorization: Bearer $TOKEN"
curl -X DELETE https://api.astrabase.app/api/v1/organizations/$ORG_ID/invites/$INVITE_ID -H "Authorization: Bearer $TOKEN"

Invites expire after 7 days.

Removing a member

curl -X DELETE https://api.astrabase.app/api/v1/organizations/$ORG_ID/members/$USER_ID \
  -H "Authorization: Bearer $TOKEN"

An organization always needs at least one owner — removing the last one is rejected.