new·The score now tells you which way it movedA brain's exam only ever grows: its own material writes questions, and so does every question a real caller asked and did not get answered. The score is a percentage over that growing set, so a brain that learned more could post a smaller number — and this week three did. One of them answered two MORE questions than the week before and showed eighteen points less. Printed as a single percentage, that reads as decline to a reader and as punishment to anyone who contributes material.all news →
mozg.beta
Sign in

Better Auth · Plugins · all subjects

organization/api-methods

35 notes, read out of this brain and free to use. Each one was extracted from a source and is re-checked against its exam.

Create organization API endpoint

POST /organization/create endpoint (requires session). Parameters: name (string, default 'My Organization'), slug (string, default 'my-org'), logo (string or null, default 'https://example.com/logo.png'), metadata (Record<string, any>), userId (string, server-only, default 'some_user_id'), keepCurrentActiveOrganization (boolean, default false). UserId and session headers are mutually exclusive - session headers take precedence and silently ignore userId.

Check organization slug availability

POST /organization/check-slug endpoint. Parameters: slug (string, default 'my-org'). Used to check if an organization slug is already taken.

List user organizations

GET /organization/list endpoint (requires session). No parameters. Returns array of organizations the user is a member of. Can be accessed via useListOrganizations hook in React, Vue, and Svelte or by calling organization.list.

Set active organization

POST /organization/set-active endpoint (requires session). Parameters: organizationId (string or null, default 'org-id'), organizationSlug (string, default 'org-slug'). Sets the active organization for the user session. Can pass null to unset active organization. Active organization can be managed client-side only for independent tab contexts.

Get full organization details

GET /organization/get-full-organization endpoint (requires session). Parameters: organizationId (string, default 'org-id'), organizationSlug (string, default 'org-slug'), membersLimit (number, default 100). Uses active organization if no organizationId or organizationSlug provided.

Update organization

POST /organization/update endpoint (requires session). Parameters: data (object with optional name, slug, logo, metadata), organizationId (optional string default 'org-id'). Updates organization information.

Delete organization

POST /organization/delete endpoint (requires session). Parameters: organizationId (required string, default 'org-id'). Removes organization if user has owner role. All members, invitations and organization information will be removed. Can be disabled with disableOrganizationDeletion option. beforeDeleteOrganization and afterDeleteOrganization hooks can be configured.

Send invitation API endpoint

POST /organization/invite-member endpoint (requires session). Parameters: email (string, default 'example@gmail.com'), role (string or string[], default 'member'), organizationId (optional string, defaults to active organization), resend (boolean default true), teamId (optional string). If user is already member, invitation is canceled. If already invited and resend is false, invitation not sent again.

Accept invitation API endpoint

POST /organization/accept-invitation endpoint (requires session). Parameters: invitationId (required string, default 'invitation-id'). User must be logged in with email matching invitation. By default requires opaque invitation IDs. If using predictable IDs (serial, false, or custom), requires verified email unless requireEmailVerificationOnInvitation is set to false.

Cancel invitation API endpoint

POST /organization/cancel-invitation endpoint (requires session, no result). Parameters: invitationId (required string, default 'invitation-id'). Cancels an invitation that was sent out by the user.

Reject invitation API endpoint

POST /organization/reject-invitation endpoint (requires session, no result). Parameters: invitationId (required string, default 'invitation-id'). Allows user to decline a received invitation. Follows same email-verification policy as accepting invitations.

Get invitation API endpoint

GET /organization/get-invitation endpoint (requires session). Parameters: id (required string, default 'invitation-id'). Retrieves invitation details. Follows same email-verification policy as accepting invitations.

List organization invitations

GET /organization/list-invitations endpoint (requires session). Parameters: organizationId (optional string, default 'organization-id'). Lists all invitations for given organization, defaulting to user's active organization. Response includes invitation IDs which are action-capable. If users should not use IDs with unverified sessions, enable requireEmailVerificationOnInvitation or add app-level permission checks.

List user invitations

listUserInvitations function lists all pending invitations for the logged-in user. Client-side requires verified email. Server-side can pass email query parameter to query invitations for specific user.

List members API endpoint

GET /organization/list-members endpoint (requires session). Parameters: organizationId (optional string, default 'organization-id'), limit (number default 100), offset (number default 0), sortBy (string default 'createdAt'), sortDirection ('asc' or 'desc', default 'desc'), filterField (string default 'createdAt'), filterOperator ('eq', 'ne', 'lt', 'lte', 'gt', 'gte', 'in', 'not_in', 'contains', 'starts_with', 'ends_with', default 'eq'), filterValue (string, number, boolean, or array). Lists members of organization with sorting and filtering support.

Remove member API endpoint

POST /organization/remove-member endpoint (requires session). Parameters: memberIdOrEmail (required string, default 'user@example.com'), organizationId (optional string, default 'org-id'). Removes member from organization. If organizationId not provided, uses active organization.

Update member role API endpoint

POST /organization/update-member-role endpoint (requires session, no result). Parameters: role (required string or string[], default ['admin', 'sale']), memberId (required string, default 'member-id'), organizationId (optional string, default 'organization-id'). Updates member's role if user has permission. Roles can be single string or array of strings.

Get active member role API endpoint

GET /organization/get-active-member-role endpoint (requires session). No parameters. Returns user's member role in their active organization.

Add member API endpoint

POST /organization/add-member endpoint (server-only). Parameters: userId (optional string or null, default 'user-id'), role (required string or string[], default ['admin', 'sale']), organizationId (optional string, default 'org-id'), teamId (optional string, default 'team-id'). Adds member directly without invitation. If userId null, expects session headers.

Leave organization API endpoint

POST /organization/leave endpoint (requires session, no result). Parameters: organizationId (required string, default 'organization-id'). Removes current user from organization.

Create dynamic role API endpoint

POST /organization/create-role endpoint (requires session, no result). Parameters: role (required string, default 'my-unique-role'), permission (optional Record<string, string[]>), organizationId (optional string, defaults to active organization). Only users with ac resource create permission (admin, owner by default) can create roles. Cannot add permissions current role cannot already access.

Delete dynamic role API endpoint

POST /organization/delete-role endpoint (requires session, no result). Parameters: roleName (optional string, default 'my-role'), roleId (optional string, default 'role-id'), organizationId (optional string, defaults to active organization). Either roleName or roleId must be provided.

List roles API endpoint

GET /organization/list-roles endpoint (requires session). Parameters: organizationId (optional string, default 'organization-id'). Lists organization roles. Requires ac resource read permission.

Get role API endpoint

GET /organization/get-role endpoint (requires session). Parameters: roleName (optional string, default 'my-role'), roleId (optional string, default 'role-id'), organizationId (optional string, defaults to active organization). Either roleName or roleId must be provided. Requires ac resource read permission.

Update role API endpoint

POST /organization/update-role endpoint (requires session). Parameters: roleName (optional string, default 'my-role'), roleId (optional string, default 'role-id'), organizationId (optional string, defaults to active organization), data (object with optional permission and roleName). Updates role permissions and/or name.

Create team API endpoint

POST /organization/create-team endpoint. Parameters: name (required string, default 'my-team'), organizationId (optional string, defaults to active organization). Creates new team within organization.

List teams API endpoint

GET /organization/list-teams endpoint (requires session). Parameters: organizationId (optional string, defaults to active organization). Gets all teams in organization.

Update team API endpoint

POST /organization/update-team endpoint (requires session). Parameters: teamId (required string, default 'team-id'), data (object with optional name, organizationId, createdAt, updatedAt). Updates team details.

Remove team API endpoint

POST /organization/remove-team endpoint. Parameters: teamId (required string, default 'team-id'), organizationId (optional string, defaults to active organization). Deletes team from organization.

Set active team API endpoint

POST /organization/set-active-team endpoint (requires session). Parameters: teamId (optional string or null, default 'team-id'). Sets given team as current active team for current active organization. Pass null to unset active team.

List user teams API endpoint

GET /organization/list-user-teams endpoint (requires session). No parameters. Lists all teams current user is member of.

List team members API endpoint

POST /organization/list-team-members endpoint (requires session, force as query). Parameters: teamId (optional string, default 'team-id'). Lists members of given team, or active team if not provided.

Add team member API endpoint

POST /organization/add-team-member endpoint (requires session). Parameters: teamId (required string, default 'team-id'), userId (required string, default 'user-id'). Adds member to team.

Remove team member API endpoint

POST /organization/remove-team-member endpoint (requires session). Parameters: teamId (required string, default 'team-id'), userId (required string, default 'user-id'). Removes member from team.

Organization inviteMember with team assignment

When inviting members to an organization using authClient.organization.inviteMember, you can specify a teamId parameter to add the invited member to a specific team upon accepting the invitation.

Give your agent this brain