Members
Base path: /api/org. Concept: Connected ID.
Invitations
Section titled “Invitations”| Method · Route | Purpose | Source |
|---|---|---|
POST /{slug}/members/invite | Invite a member (with RoleId, optional reporting manager) | OrgEndpoints.cs:210 |
POST /{slug}/members/invite/resend | Resend invitation | :351 |
DELETE /{slug}/members/invite/{invitationId} | Cancel invitation | :379 |
Director invitations (Board of Directors)
Section titled “Director invitations (Board of Directors)”Inviting a member with the Director (ORG_DIRECTOR) or Representative Director
(REPRESENTATIVE_DIRECTOR) role seats them on the organization’s
Board of Directors when they accept.
Corporation / Project(SPV) organizations only.
Additional body fields on POST /{slug}/members/invite:
| Field | Type | Meaning |
|---|---|---|
BoardChairman | bool | Also designate the invitee as chairman on acceptance |
BoardSharePercent | decimal? | Shareholding % (0–100) recorded on the board roster — used by meeting minutes |
SealAssertionJson | string | Required for director invitations — a personal-seal (passkey) step-up assertion with purpose board.member.change, subject {slug}|{inviteeEmail}|appoint-invite |
SealEmail | string | Email of the sealing account |
Without a valid seal assertion the invite is rejected with 401 STEPUP_REQUIRED /
STEPUP_FAILED. The acceptance-side board seating is the execution of that sealed decision —
no second seal is requested from the invitee.
ORG_DIRECTOR invitations are exempt from the corporate-email gate (like Freelancer/Guest) —
outside directors commonly use personal email. REPRESENTATIVE_DIRECTOR still requires a
company email (consistent with the legal-representative gate at organization creation).
Accepting (self-service)
Section titled “Accepting (self-service)”| Method · Route | Purpose | Source |
|---|---|---|
POST /invitation/accept | Accept an invitation | :258 |
POST /invitation/decline | Decline an invitation | :291 |
POST /invitation/accept-with-register | Accept + auto-register (anonymous) | :431 |
Managing members
Section titled “Managing members”| Method · Route | Purpose | Source |
|---|---|---|
PATCH /{slug}/members/{connectedIdId} | Edit a member | :460 |
POST /{slug}/members/{connectedIdId}/suspend | Suspend | :489 |
POST /{slug}/members/{connectedIdId}/revoke | Revoke | :516 |
DELETE /{slug}/members/{connectedIdId} | Delete | :551 |
On accept, the proposed role is assigned and MembershipType is derived — see Roles & permissions.